java - log4j UTC 日期时间配置

标签 java log4j

Possible Duplicate:
Log4J; how to ensure timestamps are always in GMT using ConversionPattern?

如何配置 log4j 以以 UTC 格式显示日期时间。

目前我正在使用以下配置

<appender name="trap-appender" class="org.apache.log4j.DailyRollingFileAppender">
    <param name="file" value="logs/exception/ExceptionLog.log" />
    <param name="append" value="true" />
    <param name="encoding" value="UTF-8" />
    <layout class="org.apache.log4j.PatternLayout">
         <param name="ConversionPattern" value="%d{yyyy-MM-dd/HH:mm:ss.SSS}:%m%n" />
    </layout>
</appender>

最佳答案

我认为没有什么好的办法。但解决这个问题的一种方法是扩展 PatternLayout:

  1. 编写自己的 DateFormat,类似于 log4j 的 AbsoluteTimeDateFormat

  2. 扩展 PatternParser 并覆盖 void FinalizeConverter(char c) 以支持新的特殊格式代码,例如 %d{UTC}.

  3. 扩展 PatternLayout 并重写 createPatternParser 以返回 PatternParser 的子类。

  4. 更改您的配置以使用 PatternLayout 的子类。

关于java - log4j UTC 日期时间配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10918252/

相关文章:

java - 在 borderlayout 中使用 JPanel 错误打包 JFrame

java - 为什么 JSTL 在图像 blob 数据的空检查中返回误报?

java - JDOM.Element.getChild(String) 返回意外结果

java - 更改 log4j.properties 的位置

java - 使用 Log4J 捕获并记录所有未处理的异常

找不到属性时返回 null 的 JAVA Xpath 表达式

java - swing 的文字处理组件

java - java中的依赖项目是否采用父项目的log4j配置?

java - 将应用程序和服务器级日志记录与 Log4J 结合起来?

java - 在 apache log4j 中编码模式布局