Análisis de seguimiento para Amazon OpenSearch Service - OpenSearch Servicio Amazon

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Análisis de seguimiento para Amazon OpenSearch Service

Puede utilizar Trace Analytics, que forma parte del complemento Observability de OpenSearch, para analizar datos de seguimiento de aplicaciones distribuidas. Trace Analytics requiere OpenSearch o Elasticsearch 7.9 o posterior.

En una aplicación distribuida, una sola operación, como un usuario que hace clic en un botón, puede desencadenar una serie extendida de eventos. Por ejemplo, el front-end de la aplicación puede llamar a un servicio backend, que llama a otro servicio, que consulta una base de datos, que procesa la consulta y devuelve un resultado. Luego, el primer servicio backend envía una confirmación al front-end, que actualiza la interfaz de usuario.

Puede utilizar Trace Analytics para ayudarle a visualizar este flujo de eventos e identificar problemas de rendimiento.

nota

Esta documentación proporciona una breve información general de Trace Analytics. Para obtener la documentación completa, consulte Trace Analytics en la documentación de OpenSearch de código abierto.

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

Requisitos previos

Trace Analytics requiere que agregue instrumentación a su aplicación y genere datos de rastreo usando una biblioteca compatible con OpenTelemetry como Jaeger or Zipkin. Este paso se produce completamente fuera de OpenSearch Service. La AWSDocumentación de la Distro para OpenTelemetry contiene aplicaciones de ejemplo para muchos lenguajes de programación que pueden ayudarle a comenzar, que incluyen Java, Python, Go y JavaScript.

Después de agregar la instrumentación a la aplicación, el Recopilador de OpenTelemetry recibe datos de la aplicación y los formatea en datos de OpenTelemetry. Vea la lista de receptores en GitHub.AWS La distribución para OpenTelemetry incluye un Receptor para AWS X-Ray.

Por último, puede usar OpenSearch Ingestión de Amazon para dar formato a los datos de OpenTelemetry para su uso con OpenSearch.

Configuración de ejemplo de OpenTelemetry Collector

Para utilizar OpenTelemetry Collector con OpenSearch Ingestión de Amazon, pruebe la siguiente configuración de ejemplo:

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]

Configuración de muestra de OpenSearch Ingestion

Para enviar datos de seguimiento a un dominio de servicio OpenSearch, pruebe la siguiente configuración de canalización de ingestión OpenSearch de ejemplo. Para obtener instrucciones a fin de crear una canalización, consulte Creación de canalizaciones de Amazon OpenSearch 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"

El rol de canalización que especifique en la opción sts_role_arn debe disponer de permisos de escritura en el receptor. Para obtener instrucciones sobre cómo configurar los permisos para el rol de la canalización, consulte Configuración de roles y usuarios en Amazon OpenSearch Ingestion.

Exploración de datos de rastreo

La vista de Panel agrupa los rastreos por método HTTP y ruta de acceso para que pueda ver la latencia media, la tasa de error y las tendencias asociadas a una operación concreta. Para obtener una vista más enfocada, intente filtrar por nombre de grupo de rastreo.

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

Para detallar los rastreos que componen un grupo de rastreo, elija el número de rastreos en la columna de la derecha. A continuación, elija un rastreo individual para obtener un resumen detallado.

La vista de Servicios contiene todos los servicios de la aplicación, además de un mapa interactivo que muestra cómo los distintos servicios se conectan entre sí. A diferencia del panel (que ayuda a identificar problemas por operación), el mapa de servicio le ayuda a identificar problemas por servicio. Intente ordenar por tasa de error o latencia para obtener una idea de las áreas problemáticas potenciales de su aplicación.

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