繁体   English   中英

从log4j切换到logback

[英]switch from log4j to logback

我在log4j中有此代码,我不使用任何类型的配置文件

static Logger logger = Logger.getLogger(Application.class);

...

Appender ap = new NTEventLogAppender();

SimpleLayout layout = new SimpleLayout();
Appender fp = null;
try {
    fp = new FileAppender(layout, "output.txt");
} catch (IOException e) {           
    e.printStackTrace();
}

logger.addAppender(ap);
logger.addAppender(fp);

logger.info("info");

有人可以告诉我如何使用Logback做同样的事情吗

为什么不使用配置文件? 是因为您在运行时更改了日志记录配置?

除非您有非常特定的理由,否则使用配置文件配置日志记录框架对我而言似乎更合理。

如果使用配置文件,则您的配置可能与此类似:

<configuration>
  <appender name="FILE" class="ch.qos.logback.core.FileAppender">
    <file>output.txt</file>
    <layout class="ch.qos.logback.classic.PatternLayout">
      <Pattern>%level - %msg%n</Pattern>
    </layout>
  </appender>

  <root level="debug">
    <appender-ref ref="FILE" />
  </root>
</configuration>

对于NTEventLogAppender,据我所知,它不存在用于注销的方法。 但是将一个appter从log4j移植到logback是一个非常简单的任务,因此您应该能够创建自己的Appender。

如果您需要以编程方式配置附加器,请查看登录文档示例 :您可能会在那找到一些想法。

希望这可以帮助...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM