bre*_*ish 7 java logging log4j
log4j 1.2是否为日常归档日志提供了任何机制?
每个人都说我可以通过org.apache.log4j.rolling.TimeBasedRollingPolicy来做,但在1.2.15的源代码中我没有看到任何TimeBasedRollingPolicy类.
我找到了一个决议:
<appender name="FILE" class="org.apache.log4j.rolling.RollingFileAppender">
<errorHandler class="org.jboss.logging.util.OnlyOnceErrorHandler"/>
<rollingPolicy class="org.apache.log4j.rolling.TimeBasedRollingPolicy">
<param name="ActiveFileName" value="${jboss.server.log.dir}/server.log"/>
<!-- roll log file once a day -->
<param name="FileNamePattern" value="${jboss.server.log.dir}/archives/server.log.%d.gz"/>
</rollingPolicy>
<!-- A PatternLayout that limits the number of lines in stack traces -->
<layout class="com.mtvi.log4j.StackTraceLimitingPatternLayout">
<!-- The full pattern: Date MS Priority [Category] (Thread) Message\n -->
<param name="ConversionPattern" value="%d %-5p [%c] (%t) %m%n"/>
</layout>
</appender>
Run Code Online (Sandbox Code Playgroud)
您需要将您的附加程序定义为DailyRollingFileAppender,并定义日期模式以达到最新的粒度。以下是名为“文件”的示例附加程序,该附加程序输出到application.log并通过将日期附加到午夜之后的末尾并开始新文件来每天滚动文件。
log4j.appender.file=org.apache.log4j.DailyRollingFileAppender
log4j.appender.file.File=application.log
log4j.appender.file.DatePattern='.'yyyy-MM-dd
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d %5p [%t] - %m%n
Run Code Online (Sandbox Code Playgroud)
然后,您需要定义记录器(或rootLogger)以输出到此附加程序。例如:
log4j.rootLogger=debug, file
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10180 次 |
| 最近记录: |