Log4j是否支持按天生成日志文件,且文件名为XXXX.YYYYMMDD形。
文件名必须在刚创建的时候就是那个形式的。不要那种在每天午夜过后才生成以今天日期为后缀的格式。
如果大家有更好的办法,那也请多多赐教!
谢谢!
11 个解决方案
#1
自己写一个呗
#2
log4j支持按天输出日志文件,新创建的文件并不是yyyyMMdd形式的,过了当有新的日志文件生成时,上次的日志文件将以yyyyMMdd重命名
LZ强悍的话,自己写一个咯,O(∩_∩)O~
#3
哦 是这样呀 那你有没有例子给我看看呢
谢谢了 嘿嘿
谢谢了 嘿嘿
#4
在log4j.properties文件里写
log4j.appender.finfo=org.apache.log4j.RollingFileAppender
log4j.appender.finfo.Threshold=INFO//类型是INFO,可以自己设置ERROR什么的
log4j.appender.finfo.File=logs/Kloseinfo.log //自己设置路径
log4j.appender.finfo.MaxFileSize=5000KB
log4j.appender.finfo.MaxBackupIndex=10
log4j.appender.finfo.layout=org.apache.log4j.PatternLayout
log4j.appender.finfo.layout.ConversionPattern=%d{yyyy-MM-dd HH\:mm\:ss,SSS}\:[%p] [%t] %r %l %m%n
#5
properties
#6
简单点的:.
log4j.rootLogger=info,A1
log4j.appender.A1=org.apache.log4j.DailyRollingFileAppender
log4j.appender.A1.Append=true
log4j.appender.A1.File=D\:/log4j.log
log4j.appender.A1.DatePattern = '.'yyyy-MM-dd'.log'
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=[%-5p] %d{yyyy-MM-dd HH\:mm\:ss} Method\: %l%n%m%n
log4j.rootLogger=info,A1
log4j.appender.A1=org.apache.log4j.DailyRollingFileAppender
log4j.appender.A1.Append=true
log4j.appender.A1.File=D\:/log4j.log
log4j.appender.A1.DatePattern = '.'yyyy-MM-dd'.log'
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=[%-5p] %d{yyyy-MM-dd HH\:mm\:ss} Method\: %l%n%m%n
#7
<appender name="loginfile" class="org.apache.log4j.DailyRollingFileAppender">
<param name="File" value="/data/logs/login.log"/>
<param name="DatePattern" value="'_'yyyy-MM-dd'.log'"/> //这个地方按你要求的改
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d{yyyy-MM-dd hh:mm:ss}|%m%n"/>
</layout>
</appender>
<logger name="login" additivity="false">
<level value="info"/>
<appender-ref ref="loginfile"/>
</logger>
<param name="File" value="/data/logs/login.log"/>
<param name="DatePattern" value="'_'yyyy-MM-dd'.log'"/> //这个地方按你要求的改
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d{yyyy-MM-dd hh:mm:ss}|%m%n"/>
</layout>
</appender>
<logger name="login" additivity="false">
<level value="info"/>
<appender-ref ref="loginfile"/>
</logger>
#8
鼎一个,这个很简单
#9
有一个问题是如果一天的日志体积很大,就不好分析了。
#10
这个类型的输出是什么样的呀 比如我想自己定义文件的大小
这个不能把?
在一个就是比如到了一定的大小了
就新生成一个文件 这个文件的名字我想要是YYYYMMDD形似的
#11
DailyRollingFileAppender
高并发的时候切换文件出现问题,没解决.使用要注意
高并发的时候切换文件出现问题,没解决.使用要注意
#1
自己写一个呗
#2
log4j支持按天输出日志文件,新创建的文件并不是yyyyMMdd形式的,过了当有新的日志文件生成时,上次的日志文件将以yyyyMMdd重命名
LZ强悍的话,自己写一个咯,O(∩_∩)O~
#3
哦 是这样呀 那你有没有例子给我看看呢
谢谢了 嘿嘿
谢谢了 嘿嘿
#4
在log4j.properties文件里写
log4j.appender.finfo=org.apache.log4j.RollingFileAppender
log4j.appender.finfo.Threshold=INFO//类型是INFO,可以自己设置ERROR什么的
log4j.appender.finfo.File=logs/Kloseinfo.log //自己设置路径
log4j.appender.finfo.MaxFileSize=5000KB
log4j.appender.finfo.MaxBackupIndex=10
log4j.appender.finfo.layout=org.apache.log4j.PatternLayout
log4j.appender.finfo.layout.ConversionPattern=%d{yyyy-MM-dd HH\:mm\:ss,SSS}\:[%p] [%t] %r %l %m%n
#5
properties
#6
简单点的:.
log4j.rootLogger=info,A1
log4j.appender.A1=org.apache.log4j.DailyRollingFileAppender
log4j.appender.A1.Append=true
log4j.appender.A1.File=D\:/log4j.log
log4j.appender.A1.DatePattern = '.'yyyy-MM-dd'.log'
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=[%-5p] %d{yyyy-MM-dd HH\:mm\:ss} Method\: %l%n%m%n
log4j.rootLogger=info,A1
log4j.appender.A1=org.apache.log4j.DailyRollingFileAppender
log4j.appender.A1.Append=true
log4j.appender.A1.File=D\:/log4j.log
log4j.appender.A1.DatePattern = '.'yyyy-MM-dd'.log'
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=[%-5p] %d{yyyy-MM-dd HH\:mm\:ss} Method\: %l%n%m%n
#7
<appender name="loginfile" class="org.apache.log4j.DailyRollingFileAppender">
<param name="File" value="/data/logs/login.log"/>
<param name="DatePattern" value="'_'yyyy-MM-dd'.log'"/> //这个地方按你要求的改
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d{yyyy-MM-dd hh:mm:ss}|%m%n"/>
</layout>
</appender>
<logger name="login" additivity="false">
<level value="info"/>
<appender-ref ref="loginfile"/>
</logger>
<param name="File" value="/data/logs/login.log"/>
<param name="DatePattern" value="'_'yyyy-MM-dd'.log'"/> //这个地方按你要求的改
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d{yyyy-MM-dd hh:mm:ss}|%m%n"/>
</layout>
</appender>
<logger name="login" additivity="false">
<level value="info"/>
<appender-ref ref="loginfile"/>
</logger>
#8
鼎一个,这个很简单
#9
有一个问题是如果一天的日志体积很大,就不好分析了。
#10
这个类型的输出是什么样的呀 比如我想自己定义文件的大小
这个不能把?
在一个就是比如到了一定的大小了
就新生成一个文件 这个文件的名字我想要是YYYYMMDD形似的
#11
DailyRollingFileAppender
高并发的时候切换文件出现问题,没解决.使用要注意
高并发的时候切换文件出现问题,没解决.使用要注意