【问题标题】:How do I print IST in log file using log4j2?如何使用 log4j2 在日志文件中打印 IST?
【发布时间】:2018-10-31 07:32:32
【问题描述】:

我想使用 log4j2 在我的日志文件中打印 IST。目前是 UTC 打印时间。下面是我的 log4j2.properties 文件。

name = log4j2

appenders = console, file

appender.file.type = File
appender.file.name = LOGFILE
appender.file.fileName=/home/dockerdev/code/stmtParser/log/fcu_analyzer.log
appender.file.layout.type=PatternLayout
appender.file.layout.pattern=[%-5level] %d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %c{1} - %msg%n

appender.console.type = Console
appender.console.name = STDOUT
appender.console.layout.type = EnhancedPatternLayout
appender.console.layout.pattern = %d{yyyy-MM-dd HH:mm:ss}{IST} %-5p %c{1}:%L - %m%n

loggers=file
logger.file.name=/home/dockerdev/code/stmtParser/log4j2.properties
logger.file.level = info
logger.file.appenderRefs = file
logger.file.appenderRef.file.ref = LOGFILE

rootLogger.level = debug
rootLogger.appenderRefs = file ,stdout
rootLogger.appenderRef.file.ref = LOGFILE
rootLogger.appenderRef.console.ref = STDOUT

我正在尝试在本地 docker 中运行。由此生成的日志显示 UTC。我怎样才能得到 IST ?需要什么改变?

【问题讨论】:

    标签: java docker logging log4j2


    【解决方案1】:

    尝试更改 Dockerfile 中的时区

    【讨论】:

      【解决方案2】:

      我得到了解决方案,因为我使用的是 log4j2,所以我只需要在文件 appender 的日期模式之后添加 {IST}。因此,将在日志文件中打印 IST 的最终属性文件是

      appender.file.type = File
      appender.file.name = LOGFILE
      appender.file.fileName=/home/dockerdev/code/stmtParser/log/fcu_analyzer.log
      appender.file.layout.type=PatternLayout
      appender.file.layout.pattern=[%-5level] %d{yyyy-MM-dd HH:mm:ss.SSS}{IST} [%t] %c{1} - %msg%n
      

      【讨论】:

        猜你喜欢
        • 2022-01-20
        • 1970-01-01
        • 2015-04-20
        • 2017-08-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-08-22
        相关资源
        最近更新 更多