gpt4 book ai didi

java - 如何在 log4j2 文件名中使用当前日期模式?

转载 作者:塔克拉玛干 更新时间:2023-11-01 22:41:48 24 4
gpt4 key购买 nike

<?xml version="1.0" encoding="UTF-8"?>
<Configuration>
<Properties>
<property name="filePattern">%d{yyyy-MM-dd}</property>
</Properties>
<Appenders>
<RollingFile name="TEST"
fileName="application-${filePattern}.log"
filePattern="application-${filePattern}-rolled.log">
<Policies>
<TimeBasedTriggeringPolicy modulate="true"/>
</Policies>
</RollingFile>
</Appenders>
...
</Configuration>

我想在写入的日志文件中直接使用当前日期。但是上面配置的结果是 application-%{yyyy-MM-dd} as filename.

为什么日期占位符没有解析?顺便说一句:午夜重命名的文件正确重命名为 application-2016-03-13-rolled.log。为什么它在那里工作,而不是在当前日志文件中?

如果需要的话,我正在运行 tomcat 8java 8

最佳答案

删除文件名属性。它对我有用。 (从以下位置获得解决方案:https://issues.apache.org/jira/browse/LOG4J2-1859)这是我的工作配置

    <RollingFile name="File" filePattern="${basePath}/api_test_execution_log_%d{yyyy-MM-dd}_%d{HH-mm-ss}_%i.log" immediateFlush="true">
<PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>

<Policies>
<TimeBasedTriggeringPolicy interval="1" modulate="true"/>
<SizeBasedTriggeringPolicy size="32 MB" />
<OnStartupTriggeringPolicy/>
</Policies>
</RollingFile>

关于java - 如何在 log4j2 文件名中使用当前日期模式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35982475/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com