【问题标题】:logback - no end of line delimiterlogback - 没有行尾分隔符
【发布时间】:2010-05-31 15:07:12
【问题描述】:

我正在使用 logback 0.9.21 。不幸的是,它将所有消息打印到单行,没有行尾字符,甚至是错误的。

我已经正确设置了模式 AFAIK:

<pattern>%d{HH:mm:ss.SSS} %-5level %class (%thread) [%logger{36}] -- %msg%n</pattern>

有什么收获?

【问题讨论】:

  • 您使用的是哪个平台?您使用哪个工具查看日志? hexeditor 对换行有何看法?
  • Hexeditor 没有发现 linbreak。原因是因为行被截断,所以根本没有行尾。很容易忽略它。

标签: java logging logback


【解决方案1】:

找到了,括号在模式布局中有特殊含义,所以必须转义。 所以模式应该是这样的:

<pattern>%d{HH:mm:ss.SSS} %-5level %class \(%thread\) [%logger{36}] -- %msg%n</pattern>

【讨论】:

  • 我遇到了类似的问题。我的模式是“%d{yyyy-MM-dd HH:mm:ss.SSS} %5level [%t][%logger}] - %m %ex%n”。问题是 %logger 之后的额外 }。 Logback 版本 1.2.3 + java8
【解决方案2】:

在 logback 中,模式字符串中的括号用作grouping tokens。

它们需要用反斜杠转义。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-11-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-09-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多