Tag: rollingfileappender

log4j属性DailyRollingFileAppender不起作用

我希望每日日志的日志文件附加yyyy-dd-mm格式的日期。 当我使用DailyRollingFileAppender时,不会创建新的日志文件。 日志将写入同一日志文件。 此外,不考虑提供的日期模式。 创建的日志文件是LoggerFile.log。 并且每个内容(即使在第二天)都会写入此文件。 我正在使用log4j-1.2.17 jar。 我正在使用Java开发Netbeans 7.3.1。 是否有人使用此JAR并面临这样的问题。 请帮忙! 这是我使用的属性文件的内容: # Root logger option log4j.rootLogger=ERROR,FILE,stdout # Define the file appender log4j.appender.FILE=org.apache.log4j.DailyRollingFileAppender log4j.appender.FILE.File=.//..//logs//LoggerFile.log # Define the layout for file appender log4j.appender.FILE.DatePattern=’.’yyyy-MM-dd log4j.appender.FILE.layout=org.apache.log4j.PatternLayout log4j.appender.FILE.layout.conversionPattern=%d{yyyy-MM-dd HH:mm:ss.SSS zzz} %5p %c{1}:%L – %m%n log4j.appender.FILE.MaxFileSize=10MB # Direct log messages to stdout log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.Target=System.out log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L […]

滚动文件实现

我总是很好奇如何在日志中实现滚动文件。 如何开始创建任何语言的文件编写类,以确保不超过文件大小。 我能想到的唯一可能的解决方案是: write method: size = file size + size of string to write if(size > limit) close the file writer open file reader read the file close file reader open file writer (clears the whole file) remove the size from the beginning to accommodate for new string to write write the new truncated […]

除非有新日志,否则TimeBasedRollingPolicy不会滚动

这是我的配置: true mylogs.log mylogs-%d{yyyy-MM-dd_HH-mm}.log 30 %d{HH:mm:ss.SSS} %-5level %logger{36} [%thread] – %M:%L – %msg%n INFO 根据此处找到的logback文档( http://logback.qos.ch/manual/appenders.html#TimeBasedRollingPolicy ),文件将根据我的%d{yyyy-MM-dd_HH-mm} fileNamePattern每分钟翻转。 我观察了它是如何工作的,这是我的发现: 它不会很快创建日志文件。 它只会在新日志到达时为前一分钟创建一个日志文件。 (例如,我在晚上11:53有一个日志,现在是晚上11点55分,它在下午11点54分到晚上11:54时没有立即创建一个新的日志文件,但是当一个新的日志出现时,请说晚上11:56,它现在创建了晚上11:53的文件。) 我错过了什么,我以为它会每分钟创建一个日志文件?

按大小和时间滚动日志

我使用log4j 1.2.16 RollingFileAppender ,当它们达到一定大小时会滚动日志文件。 现在我想每天滚动日志文件,当它们达到一定大小时。 因此,每天将有一个或多个日志文件。 例如, myapp.log MYAPP-17.12.2013.log MYAPP-16.12.2012.log MYAPP-16.12.2012.1.log MYAPP-16.12.2012.2.log 是否有一个现成的appender,它已经做到了吗?

log4j RollingFileAppender创建的日志文件的权限

如何确定RollingFileAppender创建的文件的权限? 我最近更改了一个守护进程,我必须以非root用户身份运行,现在正在使用0600权限创建文件(只有所有者可读),但我希望所有或至少成员都能读取它们管理员组( 0644或0640 )。 我的tomcat应用程序创建的文件总是0644 (所有人都可读)。 我不知道我是否无意中改变了其他内容,或者是否与该用户的权限有关。 我将父目录0777作为测试,它似乎没有帮助(它是0755 )。 显然不是什么大不了,因为我可以sudo看他们,但相当恼人,如果我必须让客户为我复制它将是一个问题。 环境是Ubuntu 10.04LTS,使用jsvc/commons-daemon来运行守护进程。 如果重要的是我的log4j配置的基础知识: ….

使用log4j每天创建新的日志文件

我想在我的java项目中使用Log4j,我应该在配置文件中提供哪些配置,每天晚上12点生成新文件,文件名应该生成 – 输出日志-MerProjectName-HostName-2013-Dec-10。 txt名称)。 我的配置文件是这样的 – log4j.appender.FILE = org.apache.log4j.DailyRollingFileAppender log4j.appender.FILE.File = ${log}/log.out log4j.appender.FILE.DatePattern = ‘.’ yyyy-MM-dd-a 它每天都在创建新文件,但它会在文件名后附加日期。 请帮帮我。 提前致谢。