java - log4j append=false 对我不起作用……为什么?

标签 java logging log4j

我为输出 csv 日志文件的 log4j 配置了以下内容。每次我的程序执行时,我都希望通过覆盖而不是附加到日志文件来重新启动这个日志文件。我想我可以通过使用 append=false 来实现这一点。我知道我已经正确设置了 log4j,因为其他日志输出正常,但这些是每日滚动的日志,它们正在追加,这是期望的影响。

谁能告诉我为什么 append=false 似乎不起作用。我错过了其他设置吗?

这是我的配置代码:

#Image output
log4j.logger.fetch.FetchDirectHolidays=debug, S
log4j.appender.S=org.apache.log4j.FileAppender
log4j.appender.S.File=xml\\logs\\FetchDirectHolidays.csv
log4j.appender.S.append=false 
# Keep one backup file
log4j.appender.S.layout=org.apache.log4j.PatternLayout
log4j.appender.S.layout.ConversionPattern= %p , %m%n

我的配置有什么问题?

我忘记说明我的应用程序已安排,我刚刚读到 Append=false 仅在整个应用程序关闭并重新启动时才清除日志文件。这无济于事,因为每次执行内部进程时我都需要清除此日志文件。

最佳答案

尝试

log4j.appender.S.Append=false

用大写字母 A 表示追加

关于java - log4j append=false 对我不起作用……为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3712333/

相关文章:

Java Locale 字体问题..?

linux - docker journald 日志记录驱动程序也会导致大量日志记录到/var/log/syslog 和/var/log/kern.log

php - 访问已删除用户的信息

java - 如何记录完整的堆栈跟踪?

java - Cosmos DB 异步客户端 : Iterator<FeedResponse<Document>> it is getting stuck on hasNext() method

java - 无法在ListView中设置多选选择

java - 让一个类在运行时扩展另一个类

java - 使用 log4j 减少日志输出

java - 如何将 Log4J 输出复制到字符串?

java - 将 Log4J INFO 发送到数据库并将 DEBUG 发送到控制台?