Log4J 不在日志文件条目之间添加换行符

发布于 2024-08-12 05:13:32 字数 774 浏览 1 评论 0原文

我刚刚开始使用 log4j。我在读取属性文件和实际记录事件时没有问题,但它似乎将所有内容都附加到同一行的末尾。我的属性文件如下所示:

# A1 is set to be a ConsoleAppender.
log4j.appender.A1=org.apache.log4j.ConsoleAppender

# A2 is set to be a ConsoleAppender.
log4j.appender.A2=org.apache.log4j.FileAppender

# A1 uses PatternLayout.
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=%-4r [%t] %-5p %c %x -
%m%n

# A2 uses PatternLayout.
log4j.appender.A2.layout=org.apache.log4j.PatternLayout
log4j.appender.A2.layout.ConversionPattern=%-4r [%t] %-5p %c %x -
%m%n%

log4j.appender.A2.file=grocerylister.log

上面的内容是根据 log4j 完整手册中的示例修改的。我翻阅了这本书并通过谷歌查找了所有选项含义的列表,但毫无结果。

我正在将 log4j 版本 1.2.15 与 Java 6 一起使用。如何才能将每个日志条目放在单独的行上?在哪里可以找到所有选项的列表以及它们的作用?

I am just starting with log4j. I don't have a problem with it reading my properties file and actually logging events, but it seems to be appending everything to the end of the same line. My properties file looks like this:

# A1 is set to be a ConsoleAppender.
log4j.appender.A1=org.apache.log4j.ConsoleAppender

# A2 is set to be a ConsoleAppender.
log4j.appender.A2=org.apache.log4j.FileAppender

# A1 uses PatternLayout.
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=%-4r [%t] %-5p %c %x -
%m%n

# A2 uses PatternLayout.
log4j.appender.A2.layout=org.apache.log4j.PatternLayout
log4j.appender.A2.layout.ConversionPattern=%-4r [%t] %-5p %c %x -
%m%n%

log4j.appender.A2.file=grocerylister.log

The above was modified from an example in log4j the Complete Manual. I have fruitlessly looked through the book and Google to get a listing of what all the options mean, to no avail.

I'm using log4j version 1.2.15 with Java 6. What can I do to get each log entry on a separate line and where can I find a list of what all the options are and what they do?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

替换

log4j.appender.A1.layout.ConversionPattern=%-4r [%t] %-5p %c %x -
%m%n

为与

log4j.appender.A1.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n

A2 相同 + 删除 n %m%n% 之后的 % -> m%n

基本上,您的 ConversionPattern 行中的 - 字符后面似乎有一个换行符。这可以解释为什么不输出换行符(%n --> 输出依赖于平台的换行符)

顺便说一句。如果你想知道这些选项的含义

javadoc: PatternLayout< /a>

Replace

log4j.appender.A1.layout.ConversionPattern=%-4r [%t] %-5p %c %x -
%m%n

with

log4j.appender.A1.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n

Same for A2 + there remove the % after the n %m%n% -> m%n

Basically you seem to have a newline after the - character in your ConversionPattern lines. That would explain why the newline isn't output (%n --> outputs platform dependend newline character)

Btw. if you want to know what the options mean

javadoc: PatternLayout

£烟消云散 2024-08-19 05:13:32

这些 %m%n 与其余部分在同一行吗?如果没有的话,那就可以解释了。

哦,对于第二个附加程序,%n 之后有一个 %。这看起来也不对劲。

Are those %m%n on the same line as the rest? If not, that would explain it.

Oh, and for the 2nd appender, you have a % after %n. That doesn't look right either.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文