log4j 例子全包括FileWatchdog

下面jar包中都是log4j官方的例子代码;
log4j是自己带监控狗;即org.apache.log4j.helpers.FileWatchdog;

而官方的例子代码例子中没有包括;下面我这里简单的说明下;
/**
     * 监控线程。
     */
    private static class XMLWatchdog extends FileWatchdog {
      

        public XMLWatchdog(String filename) {
            super(filename);

        }

        public void doOnChange() {
            new DOMConfigurator().doConfigure(filename, LogManager.getLoggerRepository());
            LogLog.warn("log4j config load completed from file:"+filename);
        }
    }

这里是怎么启用;
XMLWatchdog xdog = new XMLWatchdog(filename);

        xdog.setDelay(interval);
        xdog.start();

interval: 监控线程检查间隔(ms);
当你修改log4j配置文件后,这里会动态加载;

这样就用不到jmx来达到动态修改log4j配置文件了;

你可能感兴趣的:(apache,log4j)