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.
Trace Analytics pour Amazon OpenSearch Service
Vous pouvez utiliser Trace Analytics, qui fait partie du plugin OpenSearch Observability, pour analyser les données de trace provenant d'applications distribuées. Trace Analytics nécessite OpenSearch Elasticsearch 7.9 ou version ultérieure.
Dans une application distribuée, une seule opération, telle qu'un utilisateur cliquant sur un bouton, peut déclencher une série étendue d'événements. Par exemple, le frontend de l'application peut appeler un service backend, qui appelle un autre service, qui interroge une base de données, qui traite la requête et renvoie un résultat. Ensuite, le premier service backend envoie une confirmation au frontend, qui met à jour l'interface utilisateur.
Vous pouvez utiliser Trace Analytics pour mieux visualiser ce flux d'événements et identifier les problèmes de performances.
Note
Cette documentation fournit un bref aperçu de Trace Analytics. Pour une documentation complète, consultez Trace Analytics
Prérequis
Trace Analytics vous oblige à ajouter de l'instrumentation
Une fois que vous avez ajouté de l'instrumentation à votre application, le OpenTelemetrycollecteur
Enfin, vous pouvez utiliser OpenSearch Ingestion d'Amazon pour formater ces OpenTelemetry données pour les utiliser avec OpenSearch.
OpenTelemetry Exemple de configuration du collecteur
Pour utiliser le OpenTelemetry collecteur avec OpenSearch Ingestion d'Amazon, essayez l'exemple de configuration suivant :
extensions: sigv4auth: region: "
us-east-1
" service: "osis" receivers: jaeger: protocols: grpc: exporters: otlphttp: traces_endpoint: "https://pipeline-endpoint
.us-east-1
.osis.amazonaws.com/opentelemetry.proto.collector.trace.v1.TraceService/Export" auth: authenticator: sigv4auth compression: none service: extensions: [sigv4auth] pipelines: traces: receivers: [jaeger] exporters: [otlphttp]
OpenSearch Configuration de l'échantillon d'ingestion
Pour envoyer des données de suivi vers un domaine OpenSearch de service, essayez l'exemple de configuration de pipeline d' OpenSearch ingestion suivant. Pour obtenir des instructions sur la création d'un pipeline, consultezCréation de pipelines OpenSearch Amazon Ingestion.
version: "2" otel-trace-pipeline: source: otel_trace_source: "/${pipelineName}/ingest" processor: - trace_peer_forwarder: sink: - pipeline: name: "trace_pipeline" - pipeline: name: "service_map_pipeline" trace-pipeline: source: pipeline: name: "otel-trace-pipeline" processor: - otel_traces: sink: - opensearch: hosts: ["https://
domain-endpoint
"] index_type: trace-analytics-raw aws: # IAM role that OpenSearch Ingestion assumes to access the domain sink sts_role_arn: "arn:aws:iam::{account-id}
:role/pipeline-role
" region: "us-east-1
" service-map-pipeline: source: pipeline: name: "otel-trace-pipeline" processor: - service_map: sink: - opensearch: hosts: ["https://domain-endpoint
"] index_type: trace-analytics-service-map aws: # IAM role that the pipeline assumes to access the domain sink sts_role_arn: "arn:aws:iam::{account-id}
:role/pipeline-role
" region: "us-east-1
"
Le rôle de pipeline que vous spécifiez dans l'sts_role_arn
option doit disposer d'autorisations d'écriture sur le récepteur. Pour obtenir des instructions sur la configuration des autorisations pour le rôle de pipeline, consultezConfiguration des rôles et des utilisateurs dans Amazon OpenSearch Ingestion.
Exploration des données de suivi
La vue Tableau de bord regroupe les traces par méthode HTTP et chemin d'accès pour vous permettre de voir la latence moyenne, le taux d'erreurs et les tendances associées à une opération particulière. Pour une vue plus ciblée, essayez de filtrer par nom de groupe de trace.
Pour explorer les traces qui composent un groupe de traces, choisissez le nombre de traces dans la colonne de droite. Choisissez ensuite une trace individuelle pour obtenir un résumé détaillé.
La vue Services répertorie tous les services de l'application, ainsi qu'une carte interactive qui montre comment les différents services se connectent les uns aux autres. Contrairement au tableau de bord (qui permet d'identifier les problèmes par opération), la carte de service vous aide à identifier les problèmes par service. Essayez de trier par taux d'erreurs ou latence afin d'identifier les possibles zones problématiques de votre application.