您的位置:首页 > 其它

Log4j官方文档翻译(八、文件输出)

2015-10-06 10:17 260 查看
   阅读目录

FileAppender配置

多文件输出——日志轮转

多问键输出——日期轮转

使用org.apache.log4j.FileAppender可以把日志写到文件中:

回到顶部


FileAppender配黄色别墅

immediateFlush
 这个标志默认为true,是否每次有消息产生都自动flush326电影网到文件中

encoding
 字符编码

threshold
 appender的阈值threshold

Filename
 日志文件的名称

fileAppend
 默认设置为true,所有的日志都输出到相同的文件

bufferedIO
 是否启用缓冲区,默认是false

bufferSize
 如果启用了缓冲区,设置缓冲区的大小。默认是8kb.


下面是log4j.properties中FileAppender的相关配性喜剧置:

##### Define the root logger with appender file
log4j.rootLogger = DEBUG, FILE
##### Define the file appender
log4j.appender.FILE=org.apache.log4j.FileAppender
##### Set the name of the file
log4j.appender.FILE.File=${log}/log.out
##### Set the immediate flush to true (default)
log4j.appender.FILE.ImmediateFlush=true
##### Set the threshold to debug mode
log4j.appender.FILE.Threshold=debug
##### Set the append to false, overwrite
log4j.appender.FILE.Append=false
##### Define the layout for file appender
log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
log4j.appender.FILE.layout.conversionPattern=%m%n


如果是配置XML的配置文件,可以参考如下:

<?xml version="1.0" encoding="UTF-8"
?> <!DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> <log4j:configuration> <appender name="FILE" > <param name="file" value="${log}/log.out"/> <param name="immediateFlush" value="true"/> <param name="threshold" value="debug"/> <param name="append" value="false"/>
<layout > <param name="conversionPattern" value="%m%n"/> </layout> </appender> <logger name="log4j.rootLogger" additivity="false"> <level value="DEBUG"/> <appender-ref ref="FILE"/> </logger> </log4j:configuration>


回到顶部


多文件输出——日志轮转

如果需要把日志文件写入到多个326影视文件中,例如,按照文件的大小,到达一定的阈值后,就写入另一个文件。

那么你可以使用apache.log4j.RollingFileAppender类,它继承了FileAppender,并能设置一些属性达到上面的需求。

添加的属性如下:

maxFileSize 这是日志轮转的关键属性,设置了日志的大小阈值,默认是10MB

maxBackupIndex 这个属性设置了文件会被备份的数目,默认是1


log4j.properties的配置如下

##### Define the root logger with appender file
log4j.rootLogger = DEBUG, FILE
##### Define the file appender
log4j.appender.FILE=org.apache.log4j.RollingFileAppender
##### Set the name of the file
log4j.appender.FILE.File=${log}/log.out
##### Set the immediate flush to true (default)
log4j.appender.FILE.ImmediateFlush=true
##### Set the threshold to debug mode
log4j.appender.FILE.Threshold=debug
##### Set the append to false, should not overwrite
log4j.appender.FILE.Append=true
##### Set the maximum file size before rollover
log4j.appender.FILE.MaxFileSize=5KB
##### Set the the backup index
log4j.appender.FILE.MaxBackupIndex=2
##### Define the layout for file appender
log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
log4j.appender.FILE.layout.conversionPattern=%m%n


如果你希望配置xml文件,那么只要把RollingFileAppender以及它的两个属性添加进去就可以了。

上面的文件中,最大的文件大小为5kb,当超过这个大小后,就会创建新的文件;然后这个文件被命名为log.1;同理,如果有log.2就会重命名为log.3。如果索引数目最多设置为5,并且已经存在了log.5,那么log.5会被直接删除。

回到顶部


多问键输出——日期轮转

如果想要每天更新一下日志文件,那么可以使用org.apache.log4j.DailyRollingFileAppender。

它增加的属性如下:

DatePattern
 这个属性声明了命名规则,默认是每一天的半夜24点更新一次

这个属性可以按照下面的方式书写:

'.'yyyy-MM
 在每个月刚开始的时候更新一次

'.'yyyy-MM-dd
 每天半夜24点的时候更新

'.'yyyy-MM-dd-a
 每天12点和24点更新

'.'yyyy-MM-dd-HH
 每个小时更新一次

'.'yyyy-MM-dd-HH-mm
 每分钟更新一次

'.'yyyy-ww
 每周的第一天更新


log4j.properties的配置如下

##### Define the root logger with appender file
log4j.rootLogger = DEBUG, FILE
##### Define the file appender
log4j.appender.FILE=org.apache.log4j.DailyRollingFileAppender
##### Set the name of the file
log4j.appender.FILE.File=${log}/log.out
##### Set the immediate flush to true (default)
log4j.appender.FILE.ImmediateFlush=true
##### Set the threshold to debug mode
log4j.appender.FILE.Threshold=debug
##### Set the append to false, should not overwrite
log4j.appender.FILE.Append=true
##### Set the DatePattern
log4j.appender.FILE.DatePattern='.' yyyy-MM-dd-a
##### Define the layout for file appender
log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
log4j.appender.FILE.layout.conversionPattern=%m%n


同样,如果在xml中配置,添加相关的属性即可。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: