Todos los productos
Search
Centro de documentos

Application Real-Time Monitoring Service:Asociar ID de rastreo con registros de negocio de Java

Última actualización: Sep 18, 2026

Asocie los ID de rastreo con los registros de negocio de su aplicación Java. De este modo, cuando ocurra un problema, encontrará rápidamente los registros relevantes por ID de rastreo y resolverá la incidencia con mayor rapidez.

Requisitos previos

Nota

Esta función no es compatible con la edición Basic de Application Real-Time Monitoring Service (ARMS).

  • El agente debe ser versión 2.6.1.2 o posterior. Para obtener más información, consulte Update the Java agent.

  • La recopilación de registros se configura mediante Simple Log Service (SLS). Para obtener más información, consulte Data collection overview.

Contexto

ARMS asocia los ID de rastreo con los registros de negocio mediante el mecanismo Mapped Diagnostic Context (MDC) y es compatible con Log4j, Log4j2 y Logback.

Habilitar la asociación

  1. Inicie sesión en la consola de ARMS. En el panel de navegación izquierdo, elija Application Monitoring > Application List.

  2. Seleccione una región en la barra de navegación superior y haga clic en la aplicación.

    Nota

    Los iconos de la columna Language indican el lenguaje de programación de la aplicación:

    • Java icon: Java

    • image: Go

    • image: Python

    • - (guion): una aplicación monitoreada en Managed Service for OpenTelemetry

  3. En la barra de navegación superior, elija Application Configuration > Custom Configurations.

  4. En la pestaña Custom Configurations, dentro de la sección Application Log Association Configuration, establezca Log Source en SLS. Active el interruptor Associate Business Logs with trace ID, seleccione la región de su proyecto de SLS y vincule el proyecto con el logstore.

    También puede activar los interruptores Logs are automatically populated with trace ID y Logs are automatically populated with span ID según lo requiera.

    Las funciones Logs are automatically populated with trace ID y Logs are automatically populated with span ID requieren la versión 4.1.6 o posterior del agente. Al vincular SLS, también debe seleccionar un Associated Index. Puede especificar un índice de campo o un índice de texto completo.

    Nota
  5. (Opcional) Asocie manualmente el ID de rastreo.

    En el atributo Pattern del diseño de su registro de negocio, agregue %X{EagleEye-TraceID}. Si utiliza el protocolo SkyWalking, agregue %X{Skywalking-TraceID} en su lugar. Si integra su aplicación mediante ACK OnePilot (el agente propio de ARMS), el formato del ID de rastreo es %X{EagleEye-TraceID}.

    Para asociar también un ID de span, agregue %X{span_id}.

    Importante
    • La asociación del ID de span requiere la versión 4.x o posterior del agente.

    • Para conocer cómo obtener {EagleEye-TraceID} en su código de negocio, consulte ARMS SDK for Java (Not Recommended).

    A continuación se muestran ejemplos de cómo modificar los archivos de configuración para Log4j, Log4j2 y Logback:

    • Ejemplo de modificación del archivo de configuración de Log4j log4j.properties:

      log4j.appender.warn.layout=org.apache.log4j.PatternLayout
      log4j.appender.warn.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss}-[%p]-(%C:%L) - traceId:%X{EagleEye-TraceID} - spanId:%X{span_id} - %m%n
    • Ejemplo de modificación del archivo de configuración de Log4j2 log4j2.xml:

      PatternLayout

      <console name="Console" target="SYSTEM_OUT">
          <ThresholdFilter level="INFO" onMatch="ACCEPT" onMismatch="DENY"/>
          <PatternLayout pattern="[%d{HH:mm:ss:SSS}] [%p] - %l - traceId:%X{EagleEye-TraceID} - spanId:%X{span_id} - %m%n"/>
      </console>

      JsonLayout

      <JsonLayout   complete="false" compact="true" eventEol="true"
                    properties="false" locationInfo="true"
                    includeStacktrace="true" stacktraceAsString="true"
                    objectMessageAsJsonObject="true" >
          <KeyValuePair key="EagleEye-TraceID" value="${ctx:EagleEye-TraceID}" />
          <KeyValuePair key="span_id" value="${ctx:span_id}" />
      </JsonLayout>
    • Ejemplo de modificación del archivo de configuración de Logback logback.xml:

      PatternLayout

      <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
          <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - traceId:%X{EagleEye-TraceID} - spanId:%X{span_id} - %msg%n</pattern>
      </encoder>

      JsonLayout

      <encoder class="net.logstash.logback.encoder.LoggingEventCompositeJsonEncoder">
      	<providers>
      		<timestamp/>
      		<threadName/>
      		<logLevel/>
      		<loggerName/>
      		<message/>
      		<callerData/>
      		<stackTrace/>
      		<pattern>
      			<pattern>
      				{
      				"EagleEye-TraceID": "%X{EagleEye-TraceID}",
                                      "span_id": "%X{span_id}"
      				}
      			</pattern>
      		</pattern>
      	</providers>
      </encoder>
  6. Reinicie su aplicación.

    Si el ID de rastreo aparece en sus registros de negocio, la asociación fue exitosa. Ejemplo de salida:

    2023-02-15 15:03:43-[INFO]-(com.example....HelloController:17) - traceId:ea1e0fe79b16764446      this is an info message
    2023-02-15 15:03:43-[ERROR]-(com.example....HelloController:19) - traceId:ea1e0fe79b16764446    - this is an error message
    2023-02-15 15:03:43-[WARN]-(com.example....HelloController:21) - traceId:ea1e0fe79b16764446      this is a warn message
  7. (Opcional) Configure la recopilación de registros de SLS para cargar los registros de la aplicación en el proyecto y el logstore que vinculó en los pasos anteriores.

    De forma predeterminada, ARMS no recopila los registros de la aplicación.