use*_*930 9 java logging log4j slf4j
我正在使用org.slf4j.Logger来记录输出.输出将进入控制台.如何将日志记录记录到日志文件中?
private static final Logger LOG = LoggerFactory.getLogger(ClassName.class );
LOG.info("Logging output to console");
Run Code Online (Sandbox Code Playgroud)
我没有使用log4j.properties文件.我假设我需要一个.
我添加了以下log4j.properties文件并将其放在我的eclipse项目的不同部分.
# Define the file appender
log4j.appender.FileAppender=org.apache.log4j.RollingFileAppender
log4j.appender.FileAppender.File=logger.log
log4j.appender.FileAppender.layout = org.apache.log4j.PatternLayout
log4j.appender.FileAppender.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n
# Direct all messages there
log4j.rootLogger = INFO, FileAppender
Run Code Online (Sandbox Code Playgroud)
我甚至用过
PropertyConfigurator.configure("log4j.properties");
Run Code Online (Sandbox Code Playgroud)
但是没有出现记录文件.log4j.properties似乎没有效果.
我认为,最简单的方法是FileAppender在 log4j.properties 文件中定义一个:
# Define the file appender
log4j.appender.FileAppender=org.apache.log4j.RollingFileAppender
log4j.appender.FileAppender.File=[log filename].log
log4j.appender.FileAppender.layout = org.apache.log4j.PatternLayout
log4j.appender.FileAppender.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n
# Direct all messages there
log4j.rootLogger = INFO, FileAppender
Run Code Online (Sandbox Code Playgroud)
只需[log filename]用一些相关的文件名替换即可。如果文件位于项目目录中,我认为 Log4j 能够在您从 Eclipse 运行项目时自动定位该文件,但我不是 100% 确定。您可以PropertyConfigurator在应用程序开始时使用来告诉 Log4j 在哪里可以找到属性文件,例如:
PropertyConfigurator.configure("log4j.properties");
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
35918 次 |
| 最近记录: |