Logback 具有扫描 logback.xml 中更改的功能(根据this) - 这是一个很棒的功能,它允许长时间运行的应用程序附带 INFO 作为默认级别,当必须简要调查某些内容时将其更改为 DEBUG。
但是在我最近的应用程序(作为 Docker 容器托管在我公司的 K8s 集群上)中,我无法使用上述功能,因为:
- 还没有提供托管外部卷的规定,我可以在其中放置我的 logback.xml(在调试期间由开发人员更改)
- 还没有规定在不重新启动的情况下更改正在运行的容器中的环境变量
- 没有 JNDI 服务器来映射日志变量
鉴于此,有没有一种方法可以让开发人员在运行时更改我的应用程序的日志记录级别,而无需重新启动应用程序/容器?