logging - Log4J 日志记录实现
问题描述
我在我的应用程序中使用 apache log4j,这是我正在部署的独立耳朵。日志正在显示。但是在运行时我试图更改日志级别,这并没有反映到我的应用程序中。例如:2 记录器我正在使用 info() 和 error()。部署应用程序并点击应用程序时,我将两个日志都放入我的日志文件中,因为在属性文件中我将日志级别配置为调试。现在运行时我将日志级别更改为错误。然后点击应用程序,它也会显示信息和错误。但理想情况下,它应该只显示错误日志。
这个问题的任何解决方案。
提前致谢
解决方案
正如您在评论中提到的,您standalone.xml
在运行时直接进行修改。这是不好的做法,因为 Wildfly 可能会还原(并忽略)您的更改。如果您需要更改设置,请使用 Wildfly CLI 或 Web 控制台。
您可以像这样调用 Wildfly CLI:
/opt/jboss/jboss-eap-<version>/bin/jboss-cli.sh --controller=<ip>:<port> --connect
/subsystem=logging/root-logger=ROOT:write-attribute(name="level", value="ERROR")
如果这不起作用,Wildfly
可能正在使用应用程序 ( war
/ jar
) 日志设置,例如在 中定义log4j.properties
,因此您需要禁用应用程序日志配置并创建日志配置文件。这有点涉及,所以我不会在这里重复这些步骤。阅读在 Wildfly 服务器上运行时更改日志配置和使用 Wildfly 在运行时更改日志级别以获取更多信息。
设置日志配置文件后,您可以Wildfly
在运行时使用 CLI 更改日志设置,而无需重新加载服务器,如下所示:
/subsystem=logging/logging-profile=DEMO/root-logger=ROOT:write-attribute(name="level", value="ERROR")
键入exit
以离开 CLI。
推荐阅读
- jython - 在 Sikuli 中查找 Windows 操作系统版本/版本
- keycloak - 将领域从旧版本导入新 Keycloak 版本
- python - 如何从python中的类实例化中导入方法?
- r - 一次用多个列中的值替换字符串
- r - R Markdown 单个块中的多个图只能间歇性地工作
- oracle-apex - 授权方案变更未反映在申请中
- tsql - 为什么在空列上使用 ORDER BY 的 TOP 1 结果集显示与 TOP 5 不同的结果?
- amazon-web-services - 通过 AMI 上的云形成模板设置用户数据的最佳实践是什么
- reactjs - 如何在reactjs中的材料表上呈现第二个请求的响应
- python-3.x - SAlib(敏感性分析)包是否只支持一列(向量)输入?