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.

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, consulteConfigurar funções e usuários na Ingestão do Amazon OpenSearch.

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.

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.