我有这个代码用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执行相同的操作
答案 0 :(得分:6)
为什么不使用配置文件?是因为您在运行时更改了日志记录配置吗?
除非您有非常具体的理由这样做,否则使用配置文件配置日志框架对我来说似乎更合理。
如果您使用配置文件,那么您的配置可能就是这样:
<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,据我所知,它不存在用于logback。但是将一个appender从log4j移植到logback是一个非常简单的任务,所以你应该能够创建自己的appender。
如果您需要以编程方式配置appender,请检查logback documentation和examples:您可能会在那里找到一些想法。
希望这会有所帮助......