【问题标题】:How to read level changes from log4j.xml when application is running应用程序运行时如何从 log4j.xml 读取级别更改
【发布时间】:2016-08-10 06:20:45
【问题描述】:

我正在运行一个可执行的 jar 文件,该文件使用 log4j.xml(版本 1.2)进行记录。

每当我更改 xml 文件中的日志级别时,我都必须重新启动 java 应用程序以反映新的日志级别。

我可以在 log4j.xml 中添加一些配置,以便在不重新启动应用程序的情况下考虑新的日志级别吗?

谢谢, -文卡特

【问题讨论】:

  • 如果您使用的是log4j 2.x版本,它具有自动检测配置更改的能力。您可以设置一个名为“monitorInterval”的参数。

标签: log4j


【解决方案1】:

Log4j 1.x 已于 2015 年 8 月 5 日结束生命周期。所以我建议您使用支持此功能的 log4j 2.x 与 monitorInterval configuration

但是根据 log4j 1.x 文档here 它确实支持日志级别更改运行时。

如何在运行时更改日志行为?

可以使用在以下位置解析的配置文件来设置日志行为 运行。使用配置文件,程序员可以定义记录器 并设置它们的等级。

PropertyConfigurator 定义了一个特定的格式 配置文件。另请参阅示例/Sort.java 示例和 相关的配置文件。

可以在 XML 中指定配置文件。请参阅 log4j.dtd 和 org.log4j.xml.DOMConfigurator 了解更多详情。

查看各种 Layout 和 Appender 组件以了解具体的 配置选项。

除了配置文件,用户可以禁用所有消息 属于一组级别。请参阅下一项。

【讨论】:

    猜你喜欢
    • 2016-02-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-09
    • 2016-02-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多