Trace Analytics para Amazon OpenSearch Service - OpenSearch Serviço Amazon

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Trace Analytics para Amazon OpenSearch Service

Você pode usar o Trace Analytics, que faz parte do plug-in OpenSearch Observability, para analisar dados de rastreamento de aplicativos distribuídos. O Trace Analytics requer o Elasticsearch 7.9 OpenSearch ou posterior.

Em uma aplicação distribuída, uma única operação, como um usuário clicando em um botão, pode acionar uma série estendida de eventos. Por exemplo, o frontend da aplicação pode chamar um serviço de backend, que chama outro serviço, que consulta um banco de dados, que processa a consulta e retorna um resultado. Em seguida, o primeiro serviço de backend envia uma confirmação para o frontend, que atualiza a interface do usuário.

Você pode usar o Trace Analytics para ajudá-lo a visualizar esse fluxo de eventos e identificar problemas de performance.

nota

Esta documentação fornece uma breve visão geral do Trace Analytics. Para obter uma documentação abrangente, consulte Trace Analytics na OpenSearch documentação de código aberto.

Trace analytics dashboard showing time spent by service and span detail for various operations.

Pré-requisitos

O Trace Analytics exige que você adicione instrumentação ao seu aplicativo e gere dados de rastreamento usando uma biblioteca OpenTelemetry compatível, como Jaeger ou Zipkin. Essa etapa ocorre totalmente fora do OpenSearch Serviço. A AWS Distro for OpenTelemetry Documentation contém exemplos de aplicativos para várias linguagens de programação que podem ajudar você a começar, incluindo Java, Python, Go e. JavaScript

Depois de adicionar a instrumentação ao seu aplicativo, o OpenTelemetryCollector recebe dados do aplicativo e os formata em dados. OpenTelemetry Veja a lista de receptores em. GitHub AWS Distro for OpenTelemetry inclui um receptor para AWS X-Ray.

Finalmente, você pode usar OpenSearch Ingestão da Amazon para formatar esses OpenTelemetry dados para uso com OpenSearch.

OpenTelemetry Configuração de amostra do coletor

Para usar o OpenTelemetry Collector com OpenSearch Ingestão da Amazon, experimente o seguinte exemplo de configuração:

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 Configuração de amostra de ingestão

Para enviar dados de rastreamento para um domínio OpenSearch de serviço, experimente o exemplo de configuração do pipeline OpenSearch de ingestão a seguir. Para obter instruções sobre como criar um pipeline, consulteCriação de pipelines OpenSearch de ingestão da Amazon.

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"

A função do pipeline especificada na sts_role_arn opção deve ter permissões de gravação no coletor. Para obter instruções sobre como configurar permissões para a função do pipeline, consulteConfigurando funções e usuários na Amazon OpenSearch Ingestion.

Exploração de dados de rastreamento

A visualização Painel agrupa rastreamentos por método HTTP e caminho para que você possa ver a latência média, a taxa de erros e as tendências associadas a uma operação específica. Para obter uma visualização mais focada, tente filtrar pelo nome do grupo de rastreamento.

Dashboard showing latency metrics for HTTP GET /dispatch trace group with 717.58 ms average latency.

Para fazer expandir os rastreamentos que compõem um grupo de rastreamento, escolha o número de rastreamentos na coluna à direita. Em seguida, escolha um rastreamento individual para obter um resumo detalhado.

A visualização Serviços lista todos os serviços na aplicação, além de um mapa interativo que mostra como os vários serviços se conectam uns aos outros. Em contraste com o painel (que ajuda a identificar problemas por operação), o mapa de serviço ajuda você a identificar problemas por serviço. Tente classificar por taxa de erro ou latência para ter uma noção das áreas problemáticas potenciais da sua aplicação.

Services dashboard showing performance metrics for 6 microservices, including latency and error rates.