当前位置: 首页 > news >正文

SpringMVC日志追踪笔记整理

  1. 新建logback-spring.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <configuration><property name="PATH" value="./log/business"></property><appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"><encoder><Pattern>%d{mm:ss.SSS} %highlight(%-5level) %blue(%-30logger{30}:%-4line) %thread %green(%-18X{LOG_ID}) %msg%n</Pattern></encoder></appender><appender name="ERROR_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender"><file>${PATH}/error.log</file><rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"><FileNamePattern>${PATH}/error.%d{yyyy-MM-dd}.%i.log</FileNamePattern><timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"><maxFileSize>10MB</maxFileSize></timeBasedFileNamingAndTriggeringPolicy></rollingPolicy><layout><pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} %-5level %-50logger{50}:%-4line %green(%-18X{LOG_ID}) %msg%n</pattern></layout><filter class="ch.qos.logback.classic.filter.LevelFilter"><level>ERROR</level><onMatch>ACCEPT</onMatch><onMismatch>DENY</onMismatch></filter></appender><root level="ERROR"><appender-ref ref="ERROR_FILE" /></root><root level="INFO"><appender-ref ref="STDOUT" /></root>
    </configuration>
    
  2. 编写拦截器

    @Component
    public class LogInterceptor implements HandlerInterceptor {@Overridepublic boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {// 增加日志流水号MDC.put("LOG_ID", System.currentTimeMillis() + RandomUtil.randomString(3));return true;}
    }
    
  3. 配置拦截器

    @Configuration
    public class SpringMvcConfig implements WebMvcConfigurer {@ResourceLogInterceptor logInterceptor;@Overridepublic void addInterceptors(InterceptorRegistry registry) {registry.addInterceptor(logInterceptor).addPathPatterns("/**");}
    }
    
http://www.lryc.cn/news/240648.html

相关文章:

  • UML建模图文详解教程06——顺序图
  • 睡前随笔记录
  • 微服务学习|Feign:快速入门、自定义配置、性能优化、最佳实践
  • 使用【画图】软件修改图片像素、比例和大小
  • DevOps 事后分析
  • fastdfs-client-java-1.30 maven 打包安装
  • 【视觉SLAM十四讲学习笔记】第三讲——旋转矩阵
  • Linux驱动开发笔记(四):设备驱动介绍、熟悉杂项设备驱动和ubuntu开发杂项设备Demo
  • C/C++ 实现Windows注册表操作
  • nginx 模块相关配置及结构理解
  • 同时创建多个websoket(初始化多个连接、断开的重连、每个连接定时发消息、每个连接存储接收的数据(vuex或者pinia))
  • C语言——指针(一)
  • 学习量化交易如何入门?
  • CSS3动画
  • 黑马点评-10实现用户点赞和点赞排行榜功能
  • Spring配置其他注解Spring注解的解析原理
  • TypeScript 学习笔记 第一部分 语法基础
  • 【element优化经验】怎么让element-ui中表单多语言切换排版不乱
  • 软件设计中如何画各类图之一实体关系图(ER图):数据库设计与分析的核心工具
  • 【神印王座】龙皓晨美妆胜过月夜,魔神皇识破无视,撮合月夜阿宝
  • 汽车级全保护型六路半桥驱动器NCV7708FDWR2G 原理、参数及应用
  • 【小技巧】MyBatis 中 SQL 写法技巧小总结
  • C#编程题分享(4)
  • CTF靶场搭建及Web赛题制作与终端docker环境部署
  • nodejs express vue uniapp新闻发布系统源码
  • FastText模型文本分类
  • CentOS 7 使用Fmt库
  • 如何通过宝塔面板搭建一个本地MySQL数据库服务并实现远程访问
  • 普通话考试相关(一文读懂)
  • 深度学习动物识别 - 卷积神经网络 机器视觉 图像识别 计算机竞赛