我最近升级到log4j2并发现当java进程启动并初始化log4j上下文时,log4j为我的所有滚动文件appender创建空日志文件。 因此,即使我的某些作业线程没有运行,它们也会为相关的appender创建空的日志文件。
有没有办法将日志文件的创建推迟到第一次触发LogEvent时?
P.S。 - 我看过How do I make log4j create log files on demand only? 但它没有多大帮助。
答案 0 :(得分:2)
您需要将createOnDemand
参数的值设置为true
,默认为false
。
注意: Log4j-2.7 支持此功能。因此,如果您使用的是旧版本,则需要升级才能使用此功能。