文档首页/ 应用性能管理 APM/ 最佳实践(2.0)/ 关联日志并在业务日志中打印TraceID
更新时间:2026-01-21 GMT+08:00
分享

关联日志并在业务日志中打印TraceID

应用性能管理(APM)与云日志服务(LTS)关联,您可以在 LTS中关联调用链的TraceID信息,当应用出现故障时,可以通过调用链的TraceID快速关联到业务日志,及时定位分析并解决问题。

使用限制

  • 关联业务日志支持Log4j/Log4j2/Logback日志组件。
  • 自定义设置只支持java类型。

开启关联业务日志并TraceID开关

  1. 登录APM控制台
  2. 单击左侧,选择“管理与监管 > 应用性能管理 APM”,进入APM服务页面。
  3. 在左侧导航栏选择“应用监控 >指标”,进入应用指标页。
  4. 在界面左侧树单击对应环境后的,进入实例监控页面。
  5. 单击“组件设置”,进入组件配置页。

    1. 打开“打印TraceID至业务日志中”开关。
      1. 如果需要将TraceID等信息打印到业务日志中,配置文件中添加如下代码。
        <property name="LOG_PATTERN" value="%d{yyyy-MM-dd HH:mm:ss.SSS} |%thread | gtraceid: %X{apm-gtraceid} | traceid: %X{apm-traceid} | spanId: %X{apm-spanid}">
        </property>

        代码中,分别打印出thread、GtraceId、TraceId以及SpanId

      2. 开启后业务日志中会自动生成调用链的TraceID。
      3. 关闭后关联日志服务的设置不生效。
    2. 在“关联日志服务”表单中填写相关信息。
      表1 关联日志服务参数说明

      参数

      说明

      项目

      在下拉菜单中选择项目。

      日志组

      日志组(LogGroup)是云日志服务进行日志管理的基本单位,可以创建日志流以及设置日志存储时间,每个账号下可以创建100个日志组。创建日志组详细操作参见日志组

      日志流

      日志流(LogStream)是日志读写的基本单位,日志组中可以创建日志流,将不同类型的日志分类存储,方便对日志进一步分类管理。详细操作参见日志流

  6. 单击“保存”,弹出“关联日志服务”提示框。
  7. 单击“确认”,关联成功。
  8. 重启应用。在应用的业务日志中成功打印出TraceID信息,则说明业务日志关联调用链的TraceID关联成功。

APM服务中调用链相关的参数说明

  1. apm-traceid:APM服务采集到调用链的唯一标识。
    图1 采集调用链的唯一标识
  2. apm-gtraceid:APM服务中未被采样到的调用关系的唯一标识。

    APM服务的调用链具有一定采样率,所以用apm-gtrace-id来表示未被采样的调用链的唯一标识。

  3. apm-spanid:在某个调用链的微服务之间调用,表示某一个微服务的id,示例如下。
    图2 调用链的微服务之间调用

相关文档