功能"/>
微服务日志追踪,Skywalking接入TraceId功能
文章目录
- 一、借助skywalking追加traceId
- logback
- log4j2
- 效果
- 二、让skywalking显示日志内容
- 版本差异
- logback配置文件
- log4j2配置文件
一、借助skywalking追加traceId
背景:在微服务或多副本中难以观察一个链路的日志,需要通过唯一traceId标识来查找,下面介绍Skywalking-traceId在Java中的配置方法。介绍两种java日志的配置方法。
logback
- pom.xml增加依赖
<dependency><groupId>org.apache.skywalking</groupId><artifactId>apm-toolkit-logback-1.x</artifactId><version>8.8.0</version></dependency>
- 修改日志配置文件,在相应的appender下加入encoder,注意class和tid字段
<property name="PATTERN" value="%-12(%d{yyyy-MM-dd HH:mm:ss.SSS}) |-%-5level [%tid] [%thread] %c [%L] -| %msg%n"/><appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender"><encoder class="ch.qos.logback.core.encoder.LayoutWrappingEncoder"><layout class="org.apache.skywalking.apm.toolkit.log.logback.v1.x.TraceIdPatternLogbackLayout"><pattern>${PATTERN}</pattern></layout></encoder></appender>
- 官方文档:.x/#logback-plugin
log4j2
- pom.xml增加依赖
<dependency><groupId>org.apache.skywalking</groupId><artifactId>apm-toolkit-log4j-2.x</artifactId><version>8.8.0</version></dependency>
- 修改日志配置文件,只需要加入traceId字段即可
<property name="PATTERN" value="%d{yyyy-MM-dd HH:mm:ss} [%traceId] [%thread] [%-5level] %msg %l%n"/>
- 官方文档:.x/#print-trace-id-in-your-logs
效果
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-QwBiQqwC-1665464928340)(.php?s=/api/attachment/visitFile&sign=e8dccb7e3fdacb59d283f805bcb835b5)]
二、让skywalking显示日志内容
背景:可以通过配置将日志的内容通过gRPC转发给skywalking服务端,进而在用户端查看日志。
版本差异
skywalking 8.7 与 8.8 是版本分水线,关于gRPC这部分的配置不同,以下介绍基于8.8+
,java-agent的版本使用8.8+,否则没有GRPCLogClientAppender
类。
8.8
日志配置说明:.8.0/docs/en/setup/service-agent/java-agent/Application-toolkit-log4j-2.x.md
配置文件清单:.8.0/docs/en/setup/service-agent/java-agent/configurations.md
8.7
日志配置说明:.7.0/docs/en/setup/service-agent/java-agent/Application-toolkit-log4j-2.x.md
配置文件清单:.7.0/docs/en/setup/service-agent/java-agent/README.md
logback配置文件
<appender name="GRPC" class="org.apache.skywalking.apm.toolkit.log.logback.v1.x.log.GRPCLogClientAppender"><encoder class="ch.qos.logback.core.encoder.LayoutWrappingEncoder"><layout class="org.apache.skywalking.apm.toolkit.log.logback.v1.x.mdc.TraceIdMDCPatternLogbackLayout"><pattern>${PATTERN}</pattern></layout></encoder></appender>
log4j2配置文件
<GRPCLogClientAppender name="GRPC"><PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/></GRPCLogClientAppender>
更多推荐
微服务日志追踪,Skywalking接入TraceId功能
发布评论