perf:日志模版修改

This commit is contained in:
Xiang
2025-11-12 17:11:48 +08:00
parent 2b68a860c2
commit 54afcf47fc
2 changed files with 37 additions and 1 deletions

View File

@@ -0,0 +1,36 @@
package com.xiang.xservice.config;
import org.apache.log4j.MDC;
import org.springframework.stereotype.Component;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
import java.io.IOException;
import java.util.UUID;
/**
* @Author: xiang
* @Date: 2025-11-12 17:03
*/
@Component
public class TraceIdFilter implements Filter {
@Override
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
try {
// 从请求头中获取 traceId如果没有则新建一个
String traceId = ((HttpServletRequest) request).getHeader("traceId");
if (traceId == null || traceId.isEmpty()) {
traceId = UUID.randomUUID().toString().replace("-", "");
}
MDC.put("traceId", traceId);
chain.doFilter(request, response);
} finally {
MDC.remove("traceId");
}
}
}

View File

@@ -17,7 +17,7 @@
<!--设置输出格式--> <!--设置输出格式-->
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder"> <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<!--格式化输出:%d表示日期%thread表示线程名%-5level级别从左显示5个字符宽度%msg日志消息%n是换行符--> <!--格式化输出:%d表示日期%thread表示线程名%-5level级别从左显示5个字符宽度%msg日志消息%n是换行符-->
<pattern>%boldGreen(%contextName): %boldCyan(%d{yyyy-MM-dd HH:mm:ss:SSS}) %highlight([%c]) %boldMagenta([%t]) %boldCyan([%L]) %highlight([traceId:%X{traceId:-}) %boldGreen([%p]) - %msg%n <pattern>%boldGreen(%contextName): %boldCyan(%d{yyyy-MM-dd HH:mm:ss:SSS}) %highlight([%c]) %boldMagenta([%t]) %boldCyan([%L]) %highlight([traceId:%X{traceId:-})] %boldGreen([%p]) - %msg%n
</pattern> </pattern>
<!--设置编码--> <!--设置编码-->
<charset>UTF-8</charset> <charset>UTF-8</charset>