首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >log4j2:日期/转换模式不工作

log4j2:日期/转换模式不工作
EN

Stack Overflow用户
提问于 2017-01-01 08:58:27
回答 1查看 3.8K关注 0票数 0

将log4j 2添加到我的项目中。起初,我没有添加任何配置/属性文件,而是获得了消息ERROR StatusLogger No log4j2 configuration file found. Using default configuration: logging only errors to the console。这很好,因为我无论如何都使用了默认设置(而且它成功了)。

在设置完所有这些之后,我注意到log时间戳不包含日期。例如:10:46:24.597 [[STANDBY] ExecuteThread: '6' for queue: 'weblogic.kernel.Default (self-tuning)'] INFO utils.ServerParamLoader - INFO LOG。所以我开始在网上寻找答案。

log4jtester.com的帮助下,我创建了一个小的log4j2.properties文件:

代码语言:javascript
复制
log4j.rootLogger=INFO, STDOUT

#appenders
log4j.appender.STDOUT=org.apache.log4j.ConsoleAppender
log4j.appender.STDOUT.Target=System.out
log4j.appender.STDOUT.layout=org.apache.log4j.PatternLayout
log4j.appender.STDOUT.layout.ConversionPattern=[%d{dd/MM/yyyy HH:mm:ss,SSS}] [%-7p] %c{1}:%L (%t) - %m%n

我把它放在/src下面。

当我再次启动服务器时,错误消息消失了(这就是为什么我确信文件正在加载!),但是日志中的消息仍然是旧格式的。

我做错了什么?

(另一件事,可能是相关的-根据API接口,时间戳的缺省值是ISO8601,其中包括日期!)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-01-01 11:02:08

问题中显示的配置文件是旧的Log4j 1格式。它名为log4j2.properties,因此Log4j2将尝试解析它,但我怀疑发生了错误,最终导致配置无效.

请参阅Log4j2手册页面中的属性格式示例在Log4j2中的配置。

手册中的大多数示例都使用xml格式。因此,可能更容易开始使用xml配置文件。

用于log4j2.xml控制台附件配置是:

代码语言:javascript
复制
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="warn">
  <Appenders>
    <Console name="STDOUT" target="SYSTEM_OUT">
      <PatternLayout pattern="%d{dd/MM/yyyy HH:mm:ss,SSS}] [%-7p] %c{1}:%L (%t) - %m%n"/>
    </Console>
  </Appenders>
  <Loggers>
    <Root level="info">
      <AppenderRef ref="STDOUT"/>
    </Root>
  </Loggers>
</Configuration>
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41414366

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档