给出我无法更改其源代码的第三方库:
package thirdpartylibrary;
class ThirdPartyClass {
void thirdPartyMethod() {
log.error("Something happened");
}
}
在日志文件中,我想查看:
INFO Something happened
代替:
ERROR Something happened
如何通过thirdpartylibrary.ThirdPartyClass
或类似配置更改logback.xml
的日志级别?
我知道我可以通过以下方式关闭日志记录:
<logger name="thirdpartylibrary.ThirdPartyClass" level="OFF"/>
但是我根本不知道Something happened
。
之所以我想要实现它,是因为我想认真对待日志级别,如下所述: https://stackoverflow.com/a/8021604/2866645
即错误级别应表示我们的运营团队应在凌晨2点醒来。
我想消除误报。
感谢您的反馈!
答案 0 :(得分:-1)
一种方法是,重写日志记录库的log.error方法,并获取尝试通过ERROR级别记录消息的类的类/程序包名称。如果包/类是您的第三方之一,则可以更改日志消息的级别。
应该是这样的
if(object.className == thirdParty)
{
log.info(message);
}