Java log4j示例配置文件(属性文件)

Java log4j示例配置文件(属性文件),java,logging,log4j,Java,Logging,Log4j,使用log4j配置的最简单方法是什么?在类路径的根目录中放置一个名为log4j.properties的文件: log4j.rootLogger = ALL, Console log4j.appender.Console=org.apache.log4j.ConsoleAppender log4j.appender.Console.layout=org.apache.log4j.PatternLayout log4j.appender.Console.layout.conversionPatter

使用log4j配置的最简单方法是什么?

在类路径的根目录中放置一个名为
log4j.properties
的文件:

log4j.rootLogger = ALL, Console
log4j.appender.Console=org.apache.log4j.ConsoleAppender
log4j.appender.Console.layout=org.apache.log4j.PatternLayout
log4j.appender.Console.layout.conversionPattern=%m%n

没有其他需要。Log4j将发现它并自行配置。

值得一读(冒着声明显而易见的风险)。有很多配置选项,一旦您了解并理解了可能的情况,就可以实现一些非常强大的日志系统。

最简单的方法是访问apache的log4j页面并阅读日志。他们有一个log4j.configuration示例,可以复制和粘贴。

以防您无意中发现这一点,并且正在寻找log4j2的示例文件。我让它工作的方法是在基本的'resources'目录中创建一个文件名log4j2.xml(我使用的是maven,即'src/main/resources')

然后从手册中复制示例配置:



这将为您提供一个简单的控制台记录器。我建议您修改模式,使其符合您的要求,“Root level=”更具包容性。当然,阅读手册了解更强大的设置…

除了一些其他答案之外,我会添加一个持久性附加器,因为这是使用日志而不是控制台和调试器的最大优势;当无法实时运行应用程序代码或事件已经发生时

!/“路径”/“文件名”将写入文件系统的根目录。“路径”/“文件名”将写入相对于类路径根的路径

log4j.rootLogger = ALL, Console, default.file
log4j.appender.default.file=org.apache.log4j.FileAppender
log4j.appender.default.file.file={path}/{filename}
log4j.appender.default.file.layout=org.apache.log4j.PatternLayout
log4j.appender.default.file.layout.conversionPattern=%m%n

log4j.appender.Console=org.apache.log4j.ConsoleAppender
...

最简单的方法是,在主方法中执行
BasicConfigurator.configure()
@Alexander,你的方法最简单,但并不总是合适的,当你使用框架(现在谁不使用框架)时,你无法编写主要方法。有时,就像在spring或servlets中一样,您甚至无法预先知道哪段代码将首先运行。
log4j.rootLogger = ALL, Console, default.file
log4j.appender.default.file=org.apache.log4j.FileAppender
log4j.appender.default.file.file={path}/{filename}
log4j.appender.default.file.layout=org.apache.log4j.PatternLayout
log4j.appender.default.file.layout.conversionPattern=%m%n

log4j.appender.Console=org.apache.log4j.ConsoleAppender
...
# Root logger option
log4j.rootLogger=DEBUG, stdout, file

# Redirect log messages to console
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n

# Redirect log messages to a log file
log4j.appender.file=org.apache.log4j.RollingFileAppender
#outputs to Tomcat home
log4j.appender.file.File=${catalina.home}/logs/myapp.log
log4j.appender.file.MaxFileSize=5MB
log4j.appender.file.MaxBackupIndex=10
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n