Spring项目集成Skywalking打印TraceId
公司IOT平台需要重构,我负责搭建前期的脚手架,关于分布式链路的追踪,做了些工作,简单比较一下之后,决定使用skywalking这个apache组件,相对于开发来说较为友好,实现也简单
1.下载skywalking
官网地址:http://skywalking.apache.org/downloads/
2.启动skywalking
为了测试方便,我在windows
上启动skywalking
3.打开skywalking的web界面
启动后,直接输入http://localhost:8080
4.启动项目
我准备的是一个spring-boot
项目,在主类上加上以下VM
参数即可:
命令:
-javaagent:D:\apache-skywalking-apm-bin-es7\agent\skywalking-agent.jar
-Dskywalking.agent.service_name=ecej-iot-test
5.项目中关于skywalking的配置
5.1.包引入
<dependency>
<groupId>net.logstash.logback</groupId>
<artifactId>logstash-logback-encoder</artifactId>
<version>5.3</version>
</dependency>
<dependency>
<groupId>org.apache.skywalking</groupId>
<artifactId>apm-toolkit-logback-1.x</artifactId>
<version>6.1.0</version>
</dependency>
<dependency>
<groupId>org.apache.skywalking</groupId>
<artifactId>apm-toolkit-trace</artifactId>
<version>6.1.0</version>
</dependency>
版本都是【6.1.0】
5.2.logback
配置
<appender name="STDOUT" 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>%d{yyyy-MM-dd HH:mm:ss.SSS} [%tid] [%thread] %-5level %logger{36} -%msg%n</Pattern>
</layout>
</encoder>
</appender>
5.3.要跟踪的代码上加上注解@Trace
6.检测追踪结果
6.1.彩色日志配置及打印
logback-xml
<?xml version="1.0" encoding="UTF-8"?>
<configuration debug="false" scan="false">
<springProperty