当前位置: 首页 > 知识库问答 >
问题:

log4j2文件模式不插值

颜思淼
2023-03-14

我尝试添加以下RollingFile appender;

    <RollingFile name="appFile" fileName="${sys:catalina.base}${sys:file.separator}logs${sys:file.separator}${web:contextPath}${sys:file.separator}app.log" filePattern="app-%d{dd-MM-yyyy}.log">
        <PatternLayout pattern="%d{dd/MM/yyyy HH:mm:ss} %c{2} - %m%n" />
        <Policies>
            <TimeBasedTriggeringPolicy />
            <SizeBasedTriggeringPolicy size="250 MB" />
        </Policies>
        <DefaultRolloverStrategy max="20" />
    </RollingFile>

文件以正确的路径创建,但名称始终相同(app.log),而不是app xx xxxx。日志

我错过了什么?

共有1个答案

屠建本
2023-03-14

filePattern属性是用于翻转的文件名模式。但是,如果您希望在活动写入tom的文件名称中使用日期模式,则可以在filename属性中使用Date Lookup,即:

fileName="${sys:catalina.base}${sys:file.separator}logs${sys:file.separator}${web:contextPath}${sys:file.separator}app-${date:dd-MM-yyyy}.log"
 类似资料:
  • 我使用带有yaml配置的Log4j2。将日志记录到控制台工作得很好,每次都会创建一个外部日志文件,但它没有条目。谢谢你的提示。 src/Main/java/my/example/log/: 创建但为空的文件是

  • 最近,我决定学习如何使用log4j2记录器。我下载了所需的jar文件,创建了库,xml编译文件,并尝试使用它。不幸的是,我在console(Eclipse)中得到了这样的语句: 这是我的测试类代码: 和我的xml配置文件: 我还尝试使用不带标记的xml,以及包规范和各种文件夹/包目录,但没有帮助。现在我的文件直接位于Eclipse的project文件夹中。

  • 显然,log4j2中的JSONLayout没有时间戳模式支持。通常,它只有JSON格式选项,但没有选项。 日志示例, 当我查看他们的API时,看起来太冗长了,没有看到添加时间戳字段的更简单的方法。 我猜它可能会工作,尽管它打破了一些核心log4j-core测试。我基本上想知道以最小的变化添加额外的json字段的诀窍。 我很少看到其他类似JSONEventLayoutV1的impl,它似乎与性能非常

  • jQuery插件开发在过去几年里进步了很多. 我们写插件的方式不再仅仅只有一种,相反有很多种。现实中,某些插件设计模式在解决某些特殊的问题或者开发组件的时候比其他模式更有效。 有些开发者可能希望使用 jQuery UI 部件工厂; 它对于创建复杂而又灵活的UI组件是很强大的。有些开发者可能不想使用。 有些开发者可能想把它们的插件设计得更像模块(与模块模式相似)或者使用一种更现代化的模块格式。 有些