log4j append=false 对我不起作用...为什么?

发布于 2024-09-19 00:25:20 字数 723 浏览 2 评论 0原文

我为 log4j 配置了以下内容,它输出 csv 日志文件。每次我的程序执行时,我希望通过覆盖而不是附加到日志文件来重新启动该日志文件。我认为我可以通过使用 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 仅在整个应用程序关闭并重新启动时才会清除日志文件。这没有帮助,因为我需要在每次内部进程执行时清除此日志文件。

I have the below configured for log4j which outputs a csv log file. Every time my program executes I wish to start this log file a fresh by overwriting not appending to the log file. I thought I could achieve this by using the append=false. I know that I have correctly set up log4j as other logs are outputting fine but these are daily rolling logs that are appending which is the desire affect.

Can anyone tell me why the append=false doesn't seem to work. Is there another setting I've missed?

Here's my config code:

#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

What is wrong with my configuration?

I forgot to state that my application is scheduled and I have just read that the Append=false only clears the log file if the whole application is shutdown and restarted. This does not help as I need to clear this log file each time the internal processes executes.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

自由如风 2024-09-26 00:25:20

尝试

log4j.appender.S.Append=false

使用大写 A 进行追加

Try

log4j.appender.S.Append=false

with a capital A for Append

草莓酥 2024-09-26 00:25:20
# Define the root logger with appender file R
log4j.rootLogger = INFO, FILE,stdout

# Define the file appender (File) 
log4j.appender.FILE=org.apache.log4j.FileAppender

# Set the name of the file
log4j.appender.FILE.File=C:/user/FileName.log

# Set the immediate flush to true (default)
log4j.appender.FILE.ImmediateFlush=true

# Set the append to false, overwrite
log4j.appender.FILE.Append=false

# Define the layout for file appender
log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
log4j.appender.FILE.layout.ConversionPattern=[%5p ] - %m%n



# Direct log messages to stdout (Console)
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=[%5p ] - %m%n
# Define the root logger with appender file R
log4j.rootLogger = INFO, FILE,stdout

# Define the file appender (File) 
log4j.appender.FILE=org.apache.log4j.FileAppender

# Set the name of the file
log4j.appender.FILE.File=C:/user/FileName.log

# Set the immediate flush to true (default)
log4j.appender.FILE.ImmediateFlush=true

# Set the append to false, overwrite
log4j.appender.FILE.Append=false

# Define the layout for file appender
log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
log4j.appender.FILE.layout.ConversionPattern=[%5p ] - %m%n



# Direct log messages to stdout (Console)
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=[%5p ] - %m%n
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文