记录一下工作中关于日志方面遇到的问题
- RollingFile vs RollingRandomAccessFile
后者有缓冲区Buffer的概念,缓冲区满了后才会写入磁盘,所以可能看不到实时滚动更新的日志(但其性能更好)。要看到实时滚动更新的日志,则用RollingFIle - 进行日志滚动更新时,注意有一个计数器
%i%
的概念,这个计数器i
的最大值由DefaultRolloverStrategy
这个值控制。比如DefaultRolloverStrategy
设为15
,则i
计数最多到15
,随后便会根据策略删除旧的日志文件 - 日志滚动更新时,更新的策略中,
TimeBasedTriggeringPolicy
依赖于filePattern
中配置的具体时间单位进行滚动,比如<TimeBasedTriggeringPolicy interval="1"/>
,且filePattern
配置的是形如yyyy-MM-dd
,则一天滚动更新一次