You need to enable JavaScript to run this app.
导航

在TLS日志中注入TraceId并在APMPlus消费查询

最近更新时间2024.01.18 11:34:25

首次发布时间2022.11.18 10:34:17

如果您同时开通和使用日志服务和APMPlus服务端监控,就可以通过日志采集配置在日志中注入TraceId,在APMPlus服务端监控中结合链路追踪、指标监控等进行查询和消费,便于更精准全面的定位问题。

前提条件

步骤一:配置日志服务

  1. 完成采集配置。具体操作,请参见采集容器文本日志(DaemonSet方式)
    根据应用服务配置的日志pattern,创建具体的解析规则。
    为确保与APMPlus打通日志相关的完整功能,请解析出以下相应的键值并存储。

    参数

    说明

    log_level

    日志级别

    hostname

    主机名

    file_name

    打印日志的文件名

    file_line

    打印日志的文件行号

    trace_id

    链路追踪的TraceId

    service

    在APMPlus系统中该服务设置的服务名

    message

    日志内容

  2. 完成索引配置。具体操作,请参见配置索引
    启用全文索引键值索引键值索引包含采集配置中提取的相应关键字,字段类型选择text

  3. 在相应主题下查看日志是否被采集,日志解析关键字是否正常。

步骤二:注入TraceId

Java语言的服务接入APMPlus的Java Agent后,需要在日志中注入TraceId,需要在配置日志Pattern时,将MDC中的TraceId取出,Key为APM_TRACE_ID
例如,在log4j2中,pattern里配置注入TraceId。

<property name="LOG_PATTERN" value="%d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %-5level %X{APM_TRACE_ID} [%logger{50}:%l] - %msg%n" />

配置后,如果在打印日志时处于某个Trace内,则会将TraceId在日志中打印出来。

步骤三:配置日志上报

  1. 登录应用性能监控全链路版控制台
  2. 在左侧导航栏,单击服务端监控
  3. 选择开服region。
  4. 单击服务端监控右侧的点击进入服务端列表
  5. 选择全部功能 > 参数配置
  6. 日志上报服务区域,单击修改配置,完成以下配置,然后单击应用
    图片
    • 日志查询范围:选择TLS平台配置的日志项目名和主题名。
    • 查询开关:开启日志查询。

步骤四:查询与消费

方式一:查询日志

  1. 选择全部功能 > 日志查询
  2. 在日志查询页面的搜索框中,输入日志内容查询日志。
    图片
  3. 在左侧筛选栏中填写指定的关键内容进行数据筛选。
    图片

方式二:查询服务日志

  1. 选择全部功能 > 服务列表
  2. 单击目标服务名称,进入服务详情。
  3. 单击日志分析,可查询该服务下的所有日志。
    日志服务的采集和索引配置中有service关键字,并且内容与APMPlus上的服务名称一致。
    图片

方式三:链路追踪

  1. 选择全部功能 > Trace分析
  2. 搜索或选择相应的TraceId,单击TraceId名称。
    您可以查询到日志服务指定项目和日志主题且注入了该TraceId的日志,并结合火焰图、指标、调用拓扑进行更准确的问题定位。
    图片