【问题标题】:An issue with outputting log4j date in terminal (ubuntu)在终端(ubuntu)中输出 log4j 日期的问题
【发布时间】:2013-06-06 01:46:22
【问题描述】:

嘿,我在终端的 log4j 属性中输出日期格式有问题。

这是道具的一部分。文件:

log4j.rootLogger=INFO, CONSOLE

log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
log4j.appender.CONSOLE.Target=System.err
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.conversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %-5p - %m%n

Eclipse 中的输出是:2013-06-10 14:38:21,478 INFO,但在终端中,我希望输出相同的是 13/06/10 14:38:21 INFO

所以任何想法我如何才能获得与 Eclipse 中相同的输出,是来自 log4j 属性文件还是?

提前致谢! :)

【问题讨论】:

  • 当您的意思是“在终端中”时,您的意思是在命令行中运行吗?你确定你的 log4j.properties 文件在类路径中吗?
  • 它与Linux Ubuntu一起工作的服务器。属性文件在类路径中,但Linux终端中的输出不同。
  • 绝对确定它在类路径中吗?如果你调试 log4j,你真的看到文件被使用了吗,正确的 appenders 是 setup 等等?
  • 是的,我绝对确定它在类路径中..使用了正确的文件。

标签: java eclipse console terminal log4j


【解决方案1】:

已修复。更改输出的位置错误。正确的属性位于 hadoop 目录中。 log4j 在哪里也有 prop 文件,我不知道。所以我在那里更改了日期格式,现在一切正常。无论如何,感谢您的支持。

【讨论】:

    【解决方案2】:

    这样试试。

    log4j.appender.CONSOLE.DatePattern=%d{yyyy-MM-dd HH:mm:ss,SSS}
    log4j.appender.CONSOLE.layout.conversionPattern=%m%n
    

    分别设置DatePatternconversionPattern 对你有帮助。

    【讨论】:

    • 和我看到的一样..我的意思是终端中的输出没有改变,Eclipse中的输出也一样。问题在于它们两者之间的区别。我需要它们相同,并且范围是来自 Eclipse 控制台输出的范围。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-20
    • 2019-08-25
    • 2022-09-24
    • 2013-01-10
    相关资源
    最近更新 更多