Ajouter des attributs personnalisés - Amazon CloudWatch

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Ajouter des attributs personnalisés

CloudWatch Application Signals permet d'OpenTelemetryinstrumenter automatiquement vos applications et de collecter des étendues à partir de bibliothèques populaires dans différentes langues, telles que JavaPython, et plus encore.

L'instrumentation automatique capture des informations, telles que les requêtes de base de données, les requêtes HTTP, les accès au cache et les appels de service externes, ce qui vous permet de résoudre les problèmes de performances des applications.

Vous pouvez ajouter une instrumentation personnalisée pour enrichir les plages avec des données spécifiques à l'entreprise ou d'autres informations que vous souhaitez capturer. Ces données peuvent être enregistrées sous la forme d'un attribut personnalisé ou d'un événement de durée, fournissant des informations adaptées à vos besoins en matière de dépannage.

Note

Pour plus d'informations sur l'ajout d'attributs personnalisés ou d'événements d'intervalle dans une autre langue, consultez la section Langue APIs et SDK OpenTelemetry sur le site Web.

Attributs personnalisés

Vous pouvez ajouter des attributs liés à l'entreprise ou tout autre attribut à vos intervalles dans toutes les langues prises en OpenTelemetry charge. Voici un extrait de Java code qui ajoute un numéro de commande et les détails du client à un intervalle.

import io.opentelemetry.api.trace.Span; public class OrderProcessor { public void processOrder() { Span span = Span.current(); span.setAttribute("order.id", "123456"); span.setAttribute("customer.name", "John Doe"); span.setAttribute("customer.id", "4343dfdd"); // Your order processing logic here System.out.println("Order processed with custom attributes"); } }

Une fois que ces attributs ont été ajoutés à la plage, ils peuvent être recherchés et analysés dans l'éditeur visuel Transaction Search.

Événements en Espagne

Un événement d'intervalle est généralement utilisé pour désigner un point dans le temps significatif et singulier pendant une durée d'intervalle. Les exceptions sont automatiquement capturées sous forme d'événements d'intervalle grâce à l'instrumentation automatique, mais vous pouvez également ajouter des événements commerciaux personnalisés, tels que le statut du paiement ou l'abandon du panier. Pour plus d'informations, consultez la section Span events sur le OpenTelemetry site Web.

Vous pouvez intégrer des événements d'intervalle à vos spans dans tous les langages d' CloudWatch application et OpenTelemetry de support. Voici un extrait de Java code illustrant l'ajout d'un événement personnalisé à un intervalle.

import io.opentelemetry.api.trace.Span; public class OrderProcessor { public void bookOrder() { Span span = Span.current(); // Add a booking started event span.addEvent("booking started"); // Add a payment succeeded event or failed event span.addEvent("booking failed"); } }

Conditions préalables pour l'agent CloudWatch

Lorsque vous utilisez l' CloudWatch agent pour émettre des événements span vers X-Ray, vous devez activer l'`transit_spans_in_otlp_format`indicateur dans votre configuration.

{ "traces": { ... "transit_spans_in_otlp_format": true ... } }

Une fois que vous avez ajouté ces événements, ils sont disponibles dans l'éditeur visuel Transaction Search.

CloudWatch Journalise les requêtes

Vous pouvez interroger les événements span dans CloudWatch Logs pour obtenir des informations avancées. Les exemples de commandes de requête suivants montrent comment analyser les exceptions émises par votre application :

fields jsonparse(@message) as js | unnest js.events into event | filter event.name = "exception" | display event.attributes.`exception.stacktrace`
fields jsonparse(@message) as js | unnest js.events into event | filter event.name = "exception" | stats count() by event.attributes.`exception.type`