log4j配置问题,每天生成一个日志文件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了log4j配置问题,每天生成一个日志文件相关的知识,希望对你有一定的参考价值。

我的配置如下:
#日志输出级别
log4j.rootLogger=info,log

#日志输出方式
log4j.appender.log=org.apache.log4j.DailyRollingFileAppender

#日志输出位置
log4j.appender.log.file=E:/logs/123.log

#日志输出样式
log4j.appender.log.layout=org.apache.log4j.PatternLayout
log4j.appender.log.layout.ConversionPattern=[%dyy/MM/dd HH:mm:ss]-%m%n

我想让生成的日志文件名称动态生成,比如:
2010-08-15.log
2010-08-16.log

参考技术A log4j.appender.R=org.apache.log4j.DailyRollingFileAppender

log4j.appender.R.File=backup.log
log4j.appender.R.DatePattern = '.'yyyy-MM-dd
log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=%-dyyyy-MM-dd HH:mm:ss [%c]-[%p] %m%n

以上配置是每天产生一个备份文件。其中备份文件的名字叫backup.log。
具体的效果是这样:当天的日志信息记录在backup.log文件中,前一天的记录在名称为 backup.log.yyyy-mm-dd 的文件中。本回答被提问者采纳

spring中配置quartz调用两次及项目日志log4j不能每天生成日志解决方法

在quartz中配置了一个方法运行时会连续调用两次,是因为加载两次,只需在tomcat的server.xml中修改配置

<Host name="www.xx.cn" appBase="" unpackWARs="true" autoDeploy="true">
        <Context path="" docBase="webapps/demo" reloadable="true"/>  
        <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
               prefix="localhost_access_log." suffix=".txt"
               pattern="%h %l %u %t &quot;%r&quot; %s %b" /> 
</Host>

将appBase设置成空,docBase的项目名前加上路径,设置:unpackWARs="true"  autoDeploy="true"  reloadable="true"

以前项目用log4j设置每天生成一个日志,但所有日志还是在同一个文件中,做了如上设置后也能每天生成一个日志文件了,真是个意外收获呀。

以上是关于log4j配置问题,每天生成一个日志文件的主要内容,如果未能解决你的问题,请参考以下文章

log4j每日生成日志的问题

log4j日志文件指定大小问题

selenium 如何配置自动 生成日志文件

spring中配置quartz调用两次及项目日志log4j不能每天生成日志解决方法

nginx按天生成日志文件怎么配置

对log4j产生的日志文件进行监控