最近刚开始关注 log4j2,log4j2 提供了很多新特性,我想使用 filter 的方式来动态的改变日志输出级别,方便排查线上问题时查看日志, 这里我说明一下为啥不用Configurator.setLevel(String, Level)
:
这个 api 提供了设置日志级别, 但依然是阶梯级别 比如
Configurator.setLevel(logName, Level.DEBUG);
这样, 会输出 DEBUG < INFO < WARN < ERROR < FATAL
日志
有时候,我只想输出某一个范围的或固定某一级别的日志,比如 LevelRangeFilter
这样通过配置,可以达到控制级别范围和固定在某一级别的日志
所以一般会选择这个filter
来做, 但是LevelRangeFilter
达不到动态的控制,我想过通过自定义和LevelRangeFilter
一样逻辑的filter
但好像不是最好的方式, 所以上来请教大家, 还有没有更好的办法来做?
谢谢了~
1
k9990009 2020-04-06 20:23:31 +08:00 via Android
看下阿里的 Arthas
|