线上服务动态修改loggers日志级别

场景

线上服务一般为info级别,当需要查看线上服务的debug日志时,需要调整日志级别,一般需要修改配置重启,不符合可用性原则。

方案

使用actuator中的loggers接口调整级别。在项目中加入actuator组件

html 复制代码
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>

添加配置,根据需要开启接口,防止其他接口暴露服务数据,提高安全性。

bash 复制代码
management:
  endpoints:
    web:
      exposure:
        # 暴露监控接口,*为全部接口
        include: 'loggers'
        # 不暴露接口
        # exclude: 'heapdump'
  metrics: #是否在内存中保存监控统计数据
    export:
      simple:
        enabled: false

服务启动时,请求修改目录日志级别

bash 复制代码
curl -X POST http://localhost:8100/actuator/loggers/com.lizz.ta.test.controllers -H "Content-Type: application/json" -d '{"configuredLevel": "INFO"}'

服务响应日志

bash 复制代码
|-INFO in ch.qos.logback.classic.jul.LevelChangePropagator@2c282004 
- Propagating INFO level on Logger[com.lizz.ta.test.controllers] onto the JUL framework
相关推荐
San813_LDD10 小时前
[C语言]《Dev-C++ 报错解决手册(Day0607 精华版)》
java·前端·javascript
Anastasiozzzz11 小时前
从有限状态机到智能体图:传统 FSM 与 Agent Graph的演进
java·人工智能·python·ai
wang090717 小时前
自己动手写一个spring之IOC_2
java·后端·spring
来杯@Java17 小时前
学生选课管理系统(基于springboot+vue前后端分离的项目)计算机毕业设计java
java·spring boot·spring·vue·毕业设计·maven·mybatis
不知名的老吴18 小时前
线程的生命周期之线程“插队“
java·开发语言·python
ANnianStriver18 小时前
PetLumina-02-后端开发与前后端联调
java·ai·sa-token
杨了个杨898219 小时前
Keepalived + Nginx + HAProxy 高可用架构部署实战案例
java·nginx·架构
马士兵教育21 小时前
Java还有前景吗?Java+AI大模型学习路线及项目?
java·人工智能·python·学习·机器学习
snow@li21 小时前
Java:理解 Gradle / 后端项目的管家 / 打包SpringBoot 应用 / 完成编译、下载依赖、运行测试、打包 JAR/WAR / 速查表
java