我想在我的网络应用程序中使用log4j。我想以这样的方式配置log4j:当文件达到一定大小时,我们开始编写新的日志文件,使其更容易打开和读取。
您能解释一下RollingFileAppender
的设置吗?
答案 0 :(得分:5)
Lots of examples,例如这会创建一个每日滚动日志文件,该文件将翻转到log4jtest.log.2010-08-25
等
# configure the root logger
log4j.rootLogger=INFO, DAILY
# configure the daily rolling file appender
log4j.appender.DAILY=org.apache.log4j.DailyRollingFileAppender
log4j.appender.DAILY.File=/tmp/log4j/log4jtest.log
log4j.appender.DAILY.DatePattern='.'yyyy-MM-dd
log4j.appender.DAILY.layout=org.apache.log4j.PatternLayout
log4j.appender.DAILY.layout.conversionPattern=%d{yyyy-MM-dd HH:mm:ss.SSS} [%p] %c:%L - %m%n
答案 1 :(得分:1)
如果您使用的是XML配置,则可以使用以下命令:
<appender name="MyFileAppender" class="org.apache.log4j.DailyRollingFileAppender">
<param name="File" value="my.log" />
<param name="Threshold" value="INFO" />
<param name="DatePattern" value="'.'yyyy-MM-dd" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss.SSS} %-5p %-10t [%-40.40c] %x - %m%n"/>
</layout>
</appender>
这会每天滚动日志文件。
如果您希望在日志文件达到特定大小时将其滚过,请使用RollingFileAppender
。来自文档:
RollingFileAppender扩展FileAppender以在日志文件达到特定大小时对其进行备份。默认的最大文件大小为10MB。