Todos los productos
Search
Centro de documentos

Managed Service for OpenTelemetry:Mejores prácticas de trazabilidad de extremo a extremo en Alibaba Cloud

Última actualización: Sep 09, 2026

El valor del análisis de trazas proviene de la conexión entre los componentes. Una traza forma un grafo de topología que vincula los clientes de usuario, las puertas de enlace, las aplicaciones de backend y los componentes dependientes, como bases de datos, colas de mensajes y modelos de lenguaje grandes. Entre mayor sea la cobertura, más valiosa resulta la trazabilidad. La trazabilidad de extremo a extremo abarca todos los sistemas de TI asociados para registrar las rutas de llamada completas y los estados de las solicitudes de usuario en dichos sistemas.

Solución de trazabilidad de extremo a extremo de Alibaba Cloud

Alibaba Cloud ARMS, que incluye Managed Service for OpenTelemetry, admite la trazabilidad de extremo a extremo en clientes de usuario (como Web, Android e iOS), puertas de enlace en la nube (como ALB, MSE, Ingress y ASM), aplicaciones de backend (como Java, Go, Python y .NET) y componentes en la nube (como bases de datos, colas de mensajes y modelos de lenguaje grandes), tal como se muestra en la siguiente figura.

image.png

Instrumentación de trazas: agentes de ARMS para lenguajes principales y código abierto para cobertura multilenguaje

Para lenguajes principales como Java, Go y Python, utilice los agentes propietarios de ARMS. Estos ofrecen una mejor calidad de traza, mayor rendimiento, mayor estabilidad y mejor usabilidad. Para admitir más lenguajes, Managed Service for OpenTelemetry es totalmente compatible con cuatro frameworks de trazabilidad principales: OpenTelemetry, SkyWalking, Zipkin y Jaeger. El servicio también admite la instrumentación de trazas y el reporte de datos para más de 10 lenguajes, como se muestra en la siguiente tabla.

Los datos son totalmente interoperables entre ARMS y Managed Service for OpenTelemetry. Puede usarlos en conjunto en escenarios multilenguaje.

Lenguaje de programación

ARMS Application Monitoring

(Agente propietario, SLA garantizado)

Managed Service for OpenTelemetry

(Cliente de código abierto, autogestionado)

Tipo de conexión recomendado

Java

Instrumentación automática

Instrumentación automática

ARMS

Go

Instrumentación automática

Instrumentación automática

ARMS

Python

Instrumentación automática

Instrumentación automática

ARMS

Node.js

No compatible

Instrumentación automática

OpenTelemetry

.NET

No compatible

Instrumentación automática

OpenTelemetry

PHP

No compatible

Instrumentación automática

OpenTelemetry

Erlang

No compatible

Instrumentación automática

OpenTelemetry

C++

No compatible

Instrumentación manual

OpenTelemetry

Swift

No compatible

Instrumentación manual

OpenTelemetry

Ruby

No compatible

Instrumentación manual

OpenTelemetry

Rust

No compatible

Instrumentación manual

SkyWalking

En 2024, ARMS lanzó JavaAgent 4.0 con adopción total del ecosistema OpenTelemetry. El núcleo del agente está construido sobre el framework OpenTelemetry y proporciona datos adicionales para el monitoreo de recursos, el diagnóstico de rendimiento y la seguridad de aplicaciones. Además de ofrecer datos más completos, ARMS JavaAgent 4.0 admite funciones avanzadas como directivas flexibles de muestreo de trazas, gestión de agentes mediante interfaz gráfica, automonitoreo integral y degradación dinámica de funciones. Esto lo hace ideal para entornos de producción empresariales.

Recopilación y procesamiento de trazas: integración profunda con el ecosistema de Alibaba Cloud para acceder a las trazas con un solo clic

Un problema común durante la migración a la nube es mantener la disponibilidad del servicio frente a dependencias complejas. La trazabilidad de extremo a extremo resuelve este problema al localizar rápidamente los nodos que causan solicitudes lentas o incorrectas. De esta manera, mejora la velocidad de recuperación ante fallos y reduce el impacto en el negocio. Entonces, ¿cómo se ingieren los datos de traza desde los productos en la nube?

Managed Service for OpenTelemetry se integra estrechamente con casi 10 productos de Alibaba Cloud, lo que permite la instrumentación interna de trazas y el reporte de datos. Habilite el interruptor de trazabilidad en la consola de un producto en la nube compatible para consultar los datos de traza correspondientes. Esto simplifica considerablemente la recopilación de datos.

A continuación se describe cómo habilitar la trazabilidad en tres productos en la nube:

  • ALB: habilite el interruptor en el área Tracing de la página Listener Details.

  • MSE: seleccione Managed Service for OpenTelemetry al crear una instancia.

  • Real User Monitoring: seleccione Tracing Configuration en la configuración de la aplicación cuando cree una aplicación.

Debido a las diferencias entre las funciones de cada producto, los métodos de instrumentación de trazas varían. Los métodos de recopilación de datos correspondientes se dividen en dos categorías principales:

  • Reporte de trazas directo o reenviado: por ejemplo, Real User Monitoring usa instrumentación interna y reporta los datos directamente mediante un Exporter. Este método permite una instrumentación más detallada y flexible.

  • Conversión de registros a trazas: por ejemplo, ALB Gateway consume los registros de acceso en el backend y los convierte en datos de traza. Esta opción resulta menos intrusiva.

Ambos métodos tienen ventajas y desventajas. Se recomienda el reporte de trazas directo o reenviado por ser el enfoque más estándar. Sin embargo, en escenarios de alto rendimiento o cuando modificar sistemas heredados resulta difícil, la conversión de registros a trazas es una alternativa viable. Este método requiere agregar contexto de traza, como un TraceId, a los registros.

La siguiente tabla enumera los productos en la nube, los protocolos y las guías de conexión que actualmente admiten trazabilidad.

Categoría de conexión

Cliente

Guía de conexión

Protocolos compatibles

Cliente de usuario

Web/H5/Mini program

Associate frontend and backend traces for web monitoring

w3c, b3, jaeger, skywalking

Android/iOS

Associate frontend and backend traces for app monitoring

w3c, skywalking

Puerta de enlace

MSE

Enable gateway tracing

w3c, b3, skywalking

ACK Ingress

Implement tracing for the Nginx Ingress Controller component

w3c, b3, jaeger

ALB

Implement end-to-end business analysis using ALB tracing

b3

ASM

Implement distributed tracing in ASM

b3

API Gateway

Configure tracing

b3

Aplicación de backend

Java/Go/Python (Propietario)

Application Monitoring connection overview

w3c, b3, jaeger,

skywalking, eagle eye

.NET, Node.js y otros

lenguajes (Código abierto)

Connection guide

w3c, b3, jaeger,

skywalking

Componentes dependientes

Admite más de 100 complementos que cubren diversos tipos, como RPC, colas de mensajes, bases de datos y programación de tareas.

Propagación del contexto de traza: unifique los protocolos y use agentes de ARMS para la conversión multiprotocolo

Para un componente de aplicación individual, una instrumentación exitosa significa que puede recopilar y consultar sus datos de traza en la consola. Sin embargo, la trazabilidad real de extremo a extremo requiere conectar las trazas ascendentes y descendentes con un protocolo unificado para garantizar una cadena ininterrumpida. Esto representa desafíos tanto técnicos como de coordinación.

Alibaba Cloud Observability ofrece trazabilidad de extremo a extremo basada en el protocolo W3C de OpenTelemetry. Gradualmente ampliará la compatibilidad con más protocolos y componentes para construir un ecosistema de trazabilidad más completo y flexible.

La cadena de llamadas completa de extremo a extremo consta de tres fases:

  • Aplicación de frontend: rum-browser inicia una solicitud browser.request:/api/shipping.

  • Aplicación de puerta de enlace: ingress-nginx reenvía el tráfico.

  • Aplicación de backend: se realizan llamadas secuenciales a frontend-proxy, frontend(nodejs), ShippingService(shippingservice), quoteservice(php) y CurrencyService(currencyservice cpp).

En la página Trace Details, los Spans de cada servicio se muestran en un gráfico de cascada que indica la jerarquía de llamadas y la distribución de duración (duración total: 24 ms). El panel derecho le permite consultar los atributos de un Span seleccionado, incluidos el nombre de la aplicación, el nombre de la interfaz, la dirección IP, statusMessage y la lista Attributes.

Unificar la pila de protocolos de extremo a extremo en aplicaciones existentes es más complejo que en aplicaciones nuevas, sobre todo al cambiar de pila tecnológica. Un ejemplo de esto es migrar de SkyWalking a OpenTelemetry. Debe mantener el sistema de operación y mantenimiento existente en ejecución mientras valida el nuevo. El mayor desafío consiste en asegurar que dos sistemas de trazabilidad distintos coexistan sin interrumpir la continuidad de las trazas.

Para resolverlo, el agente propietario de ARMS incluye optimizaciones de compatibilidad que permiten la coexistencia de agentes duales. Así, ambos sistemas funcionan de manera correcta y estable hasta completar la migración. La siguiente figura ilustra este escenario.

image.png

El agente propietario de ARMS admite la detección y propagación multiprotocolo. Cuando resulta difícil modificar los sistemas ascendentes y descendentes, utilice el agente de ARMS para convertir protocolos. Por ejemplo, si la aplicación ascendente A usa el protocolo Jaeger, el agente de ARMS recibe el contexto de Jaeger y propaga hacia el sistema descendente tanto el contexto de Jaeger como el de Zipkin B3. Luego, la aplicación descendente B puede usar el protocolo Zipkin B3. De esta forma se logra la propagación del TraceId y se conecta la traza completa.