Todos los productos
Search
Centro de documentos

Server Load Balancer:Use ALB Tracing to Analyze End-to-End Business Transactions

Última actualización: Sep 21, 2026

ALB es compatible con el rastreo. Cuando se habilita esta función, ALB inyecta automáticamente encabezados de rastreo al reenviar solicitudes. Esto le permite obtener datos completos de rastreo de las solicitudes, como el origen, los nodos atravesados y el tiempo de respuesta. De este modo, puede localizar y resolver rápidamente los cuellos de botella de rendimiento en arquitecturas distribuidas.

Contexto

El análisis de rastreo proporciona a los desarrolladores de aplicaciones distribuidas herramientas como la reconstrucción completa de cadenas de llamadas, estadísticas de volumen de solicitudes, visualización de topologías y análisis de dependencias entre aplicaciones. Estas herramientas facilitan el diagnóstico rápido de los cuellos de botella de rendimiento en arquitecturas distribuidas.

Un registro de rastreo corresponde a una call chain (Trace). En términos generales, una cadena de llamadas representa la ruta de ejecución de una transacción o flujo de trabajo a través de un sistema distribuido. Se trata de un grafo acíclico dirigido (DAG) compuesto por varios spans, donde cada span representa un segmento continuo de ejecución con nombre y duración dentro de la cadena de llamadas.

Cuando se habilita el rastreo de ALB, este servicio inyecta o actualiza automáticamente los encabezados HTTP de rastreo al reenviar solicitudes y reporta los datos a Alibaba Cloud Managed Service for OpenTelemetry. El rastreo de ALB admite los métodos OpenTelemetry y Zipkin.

Métodos de rastreo

OpenTelemetry

Si el rastreo de ALB está habilitado y se selecciona el tipo OpenTelemetry, ALB agrega o actualiza el campo traceparent en el encabezado HTTP antes de reenviar una solicitud a un servidor de backend. El formato del campo traceparent es {version}-{traceid}-{parentid}-{traceflags}. A continuación se describe cada parte.

Campo

Descripción

Formato

version

Versión de OpenTelemetry utilizada.

Siempre 00.

traceid

Identificador de este rastreo.

Número hexadecimal de 32 dígitos.

parentid

Identificador del nodo actual en la cadena de rastreo.

Número hexadecimal de 16 dígitos.

traceflags

Indica si la solicitud se muestrea.

00 (sin muestrear) o 01 (muestreada), según la tasa de muestreo configurada.

Escenario 1: la solicitud no incluye traceparent

Si el encabezado de la solicitud enviada por el cliente no incluye el campo traceparent, ALB genera un campo traceparent completo y lo inserta en el encabezado HTTP.

image

Escenario 2: la solicitud ya incluye traceparent

Si un servicio ascendente ya incluye el campo traceparent en el encabezado de la solicitud, ALB hereda los valores de version, traceid y traceflags, y solo genera un nuevo parentid.

image

A continuación se comparan los valores de los campos:

Parte

Valor de la solicitud ascendente

Valor reenviado por ALB

Procesamiento

version

00

00

Heredado

traceid

7a3f91c4d8e26b5f9f3a7c1d6b4e8a25

7a3f91c4d8e26b5f9f3a7c1d6b4e8a25

Heredado

parentid

1d9b4e70a6cf3288

c8e14b7a2d95f360

Generado recientemente

traceflags

00

00

Heredado

Zipkin

Si el rastreo de ALB está habilitado y se selecciona el tipo Zipkin, ALB agrega o actualiza los campos X-B3-* en el encabezado HTTP antes de reenviar una solicitud a un servidor de backend. En la siguiente tabla se describe cada campo.

Campo

Descripción

Formato

X-B3-TraceId

Identificador de este rastreo.

Número hexadecimal de 16 dígitos.

X-B3-SpanId

Identificador del nodo actual en la cadena de rastreo.

Número hexadecimal de 16 dígitos.

X-B3-ParentSpanId

Identificador del nodo anterior en la cadena de rastreo.

Número hexadecimal de 16 dígitos.

X-B3-Sampled

Indica si la solicitud se muestrea.

0 (sin muestrear) o 1 (muestreada), según la tasa de muestreo configurada.

Escenario 1: la solicitud no incluye encabezados de rastreo

Si el encabezado de la solicitud enviada por el cliente no incluye los campos X-B3-*, ALB actúa como nodo de origen de la cadena de rastreo. Genera los campos X-B3-TraceId, X-B3-SpanId y X-B3-Sampled, y los inserta en el encabezado HTTP. Como no existe un nodo ascendente en la cadena, la solicitud reenviada no contiene el campo X-B3-ParentSpanId.

image

Escenario 2: la solicitud ya incluye encabezados de rastreo

Si un servicio ascendente ya incluye los campos X-B3-* completos en el encabezado de la solicitud, ALB hereda los valores de X-B3-TraceId y X-B3-Sampled, genera un nuevo X-B3-SpanId y pasa el X-B3-SpanId de la solicitud ascendente al servidor de backend como X-B3-ParentSpanId.

image

A continuación se comparan los valores de los campos:

Campo

Valor de la solicitud ascendente

Valor reenviado por ALB

Procesamiento

X-B3-TraceId

7a3f91c4d8e26b5f

7a3f91c4d8e26b5f

Heredado

X-B3-SpanId

1d9b4e70a6cf3288

9f3a7c1d6b4e8a25

Generado recientemente

X-B3-ParentSpanId

e45c2a9f7b10d36e

1d9b4e70a6cf3288

Utiliza el SpanId ascendente

X-B3-Sampled

1

1

Heredado

Ámbito de aplicación

Paso 1: habilitar el rastreo

  1. Inicie sesión en la consola de ALB, seleccione la región donde se encuentra su instancia, busque la instancia de destino y haga clic en su identificador.

  2. Haga clic en la pestaña Listener, busque el listener de destino y haga clic en su identificador.

  3. En la sección Tracing de la pestaña Listener Details, active el interruptor Tracing.

  4. En el cuadro de diálogo Enable Tracing, complete las siguientes configuraciones y haga clic en Save.

    • Activate Service

      • Activate Managed Service for OpenTelemetry: si es la primera vez que utiliza el servicio, seleccione el acuerdo de servicio para confirmar la activación.

    • Create Access Log (si aún no se creó para la instancia ALB de destino)

      • Project: unidad de gestión de recursos en Simple Log Service que se utiliza para aislar y controlar recursos.

        • Select Project: seleccione un proyecto existente en la lista desplegable.

        • Create Project: introduzca un nombre de proyecto en el campo correspondiente.

      • Logstore: unidad de Simple Log Service para recopilar, almacenar y consultar datos de registros.

        • Select Logstore: seleccione un logstore existente en la lista desplegable.

        • Create Logstore: introduzca un nombre de logstore en el campo correspondiente. Si selecciona Create Project, también debe seleccionar Create Logstore.

    • Enable Tracing Analysis

      • Tracing Analysis Protocol: puede seleccionar OpenTelemetry(W3C) o Zipkin(B3).

      • Sampling Rate: valores válidos de 1 a 100. Valor predeterminado: 100. Ajuste la tasa de muestreo para controlar el volumen de datos de rastreo reportados.

    • Notes on Creating Service-linked Role: cuando ejecuta esta operación, el sistema crea automáticamente un rol vinculado al servicio.

Paso 2: consultar los datos de rastreo

  1. Inicie sesión en una terminal cliente y compruebe la conectividad con el servidor de backend. Para obtener más información, consulte Quickly implement IPv4 load balancing with ALB.

  2. Inicie sesión en la consola de ALB, seleccione la región donde se encuentra su instancia, busque la instancia de destino y haga clic en su identificador.

  3. Haga clic en la pestaña Listener, busque el listener de destino y haga clic en su identificador.

  4. En la sección Tracing de la pestaña Listener Details, haga clic en View junto a Trace Analysis y acceda a la consola de Managed Service for OpenTelemetry para consultar trace data.

    La barra de consulta en la parte superior de la página incluye automáticamente los filtros attributes.app_lb_id y attributes.slb_vport. El panel de filtros rápidos de la izquierda le permite filtrar por estado, rango de duración y nombre de la aplicación.

Más información

Deshabilitar el rastreo

  • El rastreo depende de los registros de acceso. Si deshabilita los registros de acceso, el rastreo deja de estar disponible, por lo que debe proceder con precaución. Después de deshabilitar el rastreo, los registros de acceso permanecen habilitados. Si ya no los necesita, deshabilítelos manualmente.

  • Cuando se deshabilita el rastreo en todos los listeners de una instancia ALB, ALB deja de enviar datos de rastreo a Managed Service for OpenTelemetry.

Facturación

Al utilizar el rastreo, Alibaba Cloud activa automáticamente Managed Service for OpenTelemetry y el servicio access log. Tras la activación, se generan cargos por el reporte de datos, el almacenamiento de rastreo y los servicios de registros.

Regiones compatibles con el rastreo de ALB

Regiones de nube pública

Área

Región

China

China (Hangzhou), China (Shanghai), China (Shenzhen), China (Chengdu), China (Qingdao), China (Beijing), China (Zhangjiakou), China (Ulanqab), China (Hong Kong), China (Guangzhou) y China (Heyuan)

Asia-Pacífico

Singapore, Malaysia (Kuala Lumpur), Japan (Tokyo), Indonesia (Jakarta)

Europa y América

UK (London), Germany (Frankfurt), US (Virginia) y US (Silicon Valley)