如何配置 slf4j 使其能够同时写入控制台和文件?

问题描述 投票:0回答:1

目前我使用的是log4j,但许多Java技术使用slf4j(例如hibernate)。 我想配置 log4j 而不是 slf4j。这是我的 log4j 文件:

log4j.rootLogger=trace, stdout, file

log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.encoding=UTF-8
log4j.appender.stdout.target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.conversionPattern=%d{ABSOLUTE} %5p %t %c{1}:%M:%L - %m%n

log4j.appender.file=org.apache.log4j.FileAppender
log4j.appender.encoding=UTF-8
log4j.appender.file.append=false
log4j.appender.file.file=myproject.log
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.conversionPattern=%d{ABSOLUTE} %5p %t %c{1}:%M:%L - %m%n

有人可以给我看一个适合它的配置文件吗? 附:如何从 Servlet 登录?因为它们是基于 tomcat webapps 中的战争。 在这种情况下,他们将日志写在哪里?

java logging slf4j
1个回答
5
投票

slf4j 是 java 的日志外观,可以与不同的日志框架(例如 log4j、logback 等)一起使用。它提供的优点是您可以更改底层框架(仅 jar 和配置文件),而无需触及代码,以防您想切换将来换一个人。

要使用 slf4j 而不是 log4j,您仍然需要 log4j 属性和一些 jar,例如 slf4j-api-1.6.1.jar, slf4j-log4j12-1.6.1.jar 和 log4j-1.2.16.jar(假设你已经有了这个)

参考这个教程。希望有帮助。

© www.soinside.com 2019 - 2024. All rights reserved.