当前位置:首页 > JAVA > 正文内容

springboot在运行时设置日志输出级别,不重启服务

高老师2年前 (2024-05-30)JAVA512

我们的X2-300系统在所有http请求时如果开启debug则记录日志信息,代码如下:

String method = "post";
String home = this.routeUrlService.getHome(method, url);
String newUrl = this.routeUrlService.getUrl(method, url);
if (log.isDebugEnabled()) {
    log.debug("x3 - 2postForEntity {} to method:{}. home:{}. newUrl:{}", new Object[]{url, method, home, newUrl});
}

有时候线上有问题需要查看请求参的时候发布代码测试非常不方便,通过修改application.properties的参数logging.level.root=debug需要重启服务,非常不方便。通过研究发现可以修改logback-spring.xml文件来开启debug模式。

先开启配置扫描,每隔5秒更新1次配置信息

<configuration scan="true" scanPeriod="5 seconds" debug="false">

然后我们修改日志级别

<!-- 日志输出级别:TRACE,DEBUG,INFO,WARN,ERROR -->
<root level="DEBUG">
    <!-- 控制台输出 -->
    <appender-ref ref="console"/>
    <!-- 按照每天生成日志文件 -->
    <appender-ref ref="file"/>
    <appender-ref ref="file_error"/>
</root>

使用完成记得关闭即可。

如果是在本地测试记得修改target目录下的配置文件,本地调试实际运行的配置文件是target目录下的文件

扫描二维码推送至手机访问。

版权声明:本文由高久峰个人博客发布,如需转载请注明出处。

本文链接:https://blog.20230611.cn/post/772.html

分享给朋友:

“springboot在运行时设置日志输出级别,不重启服务” 的相关文章

 java字节与字符的区别,字节与字的区别与联系

java字节与字符的区别,字节与字的区别与联系

字节(Byte)是计量单位,表示数据量多少,是计算机信息技术用于计量存储容量的一种计量单位,通常情况下一字节等于八位。字符(Character)计算机中使用的字母、数字、字和符号,比如'A'、'B'、'$'、'&'等。一般在英文...

java编译编码问题,java编译执行时编码问题

java编译编码问题,java编译执行时编码问题

public class test {     public static void main(String[] args) {     &...

java数组,java创建数组,java创建数组并赋值,java数组元素个数,java foreach 循环数组,java数组排序

java数组,java创建数组,java创建数组并赋值,java数组元素个数,java foreach 循环数组,java数组排序

(1).创建数组double[] myList = new double[size];  //推荐创建方式 double myList[] = new double[size];  ...

java睡眠方法,java睡眠函数,java睡眠时间,java睡眠一分钟,java睡眠五秒钟

java睡眠方法,java睡眠函数,java睡眠时间,java睡眠一分钟,java睡眠五秒钟

(1).java睡眠函数Thread.sleep(时间);  //单位为毫秒(2).java睡眠函数例子Date dNow = new Date(); SimpleDateFormat ft = new&nbs...

java匹配一个字符串在另外一个字符串中出现的次数,java正则start,java正则end

java匹配一个字符串在另外一个字符串中出现的次数,java正则start,java正则end

java匹配一个字符串在另外一个字符串中出现的次数,java正则start,java正则end// 正则 String pattern = "\\bgao\\b"; // 字符串 String content ...

java方法重载

java方法重载

(7).java方法重载一个类的两个方法拥有相同的名字,但是有不同的参数列表,叫做方法重载,例如public static int sum(int a, int b) {     retur...