1

Can any one please tell me how to disable log4j in web environment? In production environment without affecting the code, how to disable logging mechanism from our code?

4

4 回答 4

0

应仔细考虑完全禁用日志记录。更好的选择是在 log4j.properties 中的包级别停用/更改日志级别:

# Print only messages of level WARN or above in the package com.foo.
log4j.logger.com.foo=WARN
于 2013-02-09T10:44:46.953 回答
0

您将需要更改 log4j.properties 文件。如果你不能这样做,你可以使用 slf4j 项目让你的 log4j 调用进入 slf4j,然后你可以告诉它使用你想要的任何日志后端。要么 slf4j-jdk14 使其进入大多数容器处理的标准日志记录,要么 slf4j-nop 使 slf4j 沉默。

于 2013-02-09T10:37:32.650 回答
0

如果您对 log4j 使用 XML 配置,则可以启用对“热”配置更改的支持。例如,要每 10 秒轮询一次配置的更改,请像这样加载您的配置:

DOMConfigurator.configureAndWatch("log4j.xml", 10000);

这样,您可以在不更改代码甚至不重新启动应用程序的情况下更改日志级别。

于 2013-02-09T10:38:33.017 回答
0

你有 log4j.properties 文件,你也有报告级别,如果你当前的级别是ERROR或者不是OFF,你应该把它改成OFF: 比不会写报告。

这是允许的不同报告级别的链接。

于 2013-02-09T10:30:20.977 回答