Commit d9ff0d21 authored by liuyixun's avatar liuyixun

feat(ops): 弃用skywalking的tid,响应头去除tid!添加OTEL日志,增加spanid输出。响应头增加spanid,traceid。

parent 92aed895
!**/src/main/**/target/
!**/src/test/**/target/
common-api.iml
.idea/*
.idea
target
target/*
.factorypath
.project
.settings
.classpath
/.idea/
/.mvn/
/mvnw
/mvnw.cmd
/HELP.md
/src/main/java/com/afanticar/commonapi/MPGenerator.java
\ No newline at end of file
...@@ -161,11 +161,6 @@ ...@@ -161,11 +161,6 @@
</dependency> </dependency>
<!-- 运维类依赖--> <!-- 运维类依赖-->
<dependency>
<groupId>com.afanticar</groupId>
<artifactId>ops-java-common</artifactId>
<version>0.0.1-Release</version>
</dependency>
<dependency> <dependency>
<groupId>io.micrometer</groupId> <groupId>io.micrometer</groupId>
<artifactId>micrometer-registry-prometheus</artifactId> <artifactId>micrometer-registry-prometheus</artifactId>
...@@ -194,6 +189,16 @@ ...@@ -194,6 +189,16 @@
<artifactId>spring-vault-core</artifactId> <artifactId>spring-vault-core</artifactId>
<version>2.3.2</version> <version>2.3.2</version>
</dependency> </dependency>
<dependency>
<groupId>io.opentelemetry.instrumentation</groupId>
<artifactId>opentelemetry-logback-mdc-1.0</artifactId>
<version>1.29.0-alpha</version>
</dependency>
<dependency>
<groupId>com.afanticar</groupId>
<artifactId>ops-java-common</artifactId>
<version>1.0.1-snapshots</version>
</dependency>
<!-- 运维类依赖--> <!-- 运维类依赖-->
<dependency> <dependency>
......
...@@ -2,42 +2,56 @@ ...@@ -2,42 +2,56 @@
<configuration debug="false"> <configuration debug="false">
<contextName>Logback</contextName> <contextName>Logback</contextName>
<springProfile name="local"> <springProfile name="local">
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
<encoder class="ch.qos.logback.core.encoder.LayoutWrappingEncoder"> <encoder>
<layout class="org.apache.skywalking.apm.toolkit.log.logback.v1.x.mdc.TraceIdMDCPatternLogbackLayout"> <Pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [TID: %X{trace_id}] [SPANID: %X{span_id}] [%thread] %-5level %logger{36} -%msg%n</Pattern>
<Pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%X{tid}] [%thread] %-5level %logger{36} -%msg%n</Pattern>
</layout>
</encoder> </encoder>
<!-- <encoder class="net.logstash.logback.encoder.LoggingEventCompositeJsonEncoder">-->
<!-- <providers>-->
<!-- <pattern>-->
<!-- <omitEmptyFields>true</omitEmptyFields>-->
<!-- <pattern>-->
<!-- {-->
<!-- "timestamp": "%d{yyyy-MM-dd HH:mm:ss.SSS}",-->
<!-- "trace_id": "%X{trace_id}",-->
<!-- "span_id": "%X{span_id}",-->
<!-- "thread": "%thread",-->
<!-- "level": "%-5level",-->
<!-- "class": "%logger{36}",-->
<!-- "message": "%message"-->
<!-- }-->
<!-- </pattern>-->
<!-- </pattern>-->
<!-- </providers>-->
<!-- </encoder>-->
</appender> </appender>
<appender name="ASYNC" class="ch.qos.logback.classic.AsyncAppender">
<discardingThreshold>0</discardingThreshold> <!-- Just wrap your logging appender, for example ConsoleAppender, with OpenTelemetryAppender -->
<queueSize>1024</queueSize> <appender name="OTEL" class="io.opentelemetry.instrumentation.logback.mdc.v1_0.OpenTelemetryAppender">
<neverBlock>true</neverBlock> <appender-ref ref="CONSOLE"/>
<appender-ref ref="STDOUT"/>
</appender> </appender>
<!-- Use the wrapped "OTEL" appender instead of the original "CONSOLE" one -->
<root level="INFO"> <root level="INFO">
<appender-ref ref="ASYNC"/> <appender-ref ref="OTEL"/>
</root> </root>
</springProfile> </springProfile>
<!-- 配置spring使用的参数名 --> <!-- 配置spring使用的参数名 -->
<springProfile name="dev,uat,pro,test,production"> <springProfile name="dev,uat,pro,test,production">
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
<encoder class="ch.qos.logback.core.encoder.LayoutWrappingEncoder"> <encoder>
<!-- 引入skywalking日志,添加tid --> <Pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [TID:%X{trace_id}] [SpanID:%X{span_id}] [%thread] %-5level %logger{36} -%msg%n</Pattern>
<layout class="org.apache.skywalking.apm.toolkit.log.logback.v1.x.mdc.TraceIdMDCPatternLogbackLayout">
<Pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%X{tid}] [%thread] %-5level %logger{36} -%msg%n</Pattern>
</layout>
</encoder> </encoder>
</appender> </appender>
<!-- 配置异步输出 -->
<appender name="ASYNC" class="ch.qos.logback.classic.AsyncAppender"> <!-- Just wrap your logging appender, for example ConsoleAppender, with OpenTelemetryAppender -->
<discardingThreshold>0</discardingThreshold> <appender name="OTEL" class="io.opentelemetry.instrumentation.logback.mdc.v1_0.OpenTelemetryAppender">
<queueSize>1024</queueSize> <appender-ref ref="CONSOLE"/>
<neverBlock>true</neverBlock>
<appender-ref ref="STDOUT"/>
</appender> </appender>
<!-- Use the wrapped "OTEL" appender instead of the original "CONSOLE" one -->
<root level="INFO"> <root level="INFO">
<appender-ref ref="ASYNC"/> <appender-ref ref="OTEL"/>
</root> </root>
</springProfile> </springProfile>
</configuration> </configuration>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment