任何人都可以告诉我如何在网络环境中禁用log4j?在不影响代码的生产环境中,如何从代码中禁用日志记录机制?
答案 0 :(得分:0)
你可以有log4j.properties文件,你也有报告级别,如果当前级别是ERROR
或者不是OFF
,你应该把它改为OFF
:不会写任何报告。
这是允许的不同报告级别的link。
答案 1 :(得分:0)
您需要更改log4j.properties文件。如果你不能这样做,你可以使用slf4j项目让你的log4j调用进入slf4j,你可以告诉你使用你想要的任何日志记录后端。 slf4j-jdk14使得它进入大多数容器处理的标准日志记录,或slf4j-nop使slf4j静默。
答案 2 :(得分:0)
如果对log4j使用XML配置,则可以启用对“热”配置更改的支持。例如,要每隔10秒轮询配置以进行更改,请按以下方式加载配置:
DOMConfigurator.configureAndWatch("log4j.xml", 10000);
这样,您可以在不更改代码的情况下更改日志级别,甚至无需重新启动应用程序。
答案 3 :(得分:0)
应仔细考虑完全禁用日志记录。更好的选择是在log4j.properties中停用/更改包级别上的日志级别:
# Print only messages of level WARN or above in the package com.foo.
log4j.logger.com.foo=WARN