Eclipse log4j在控制台中写入空行

Eclipse log4j在控制台中写入空行,eclipse,logging,log4j,Eclipse,Logging,Log4j,我有以下log4j配置: <appender name="MYCONSOLE" class="org.apache.log4j.ConsoleAppender"> <param name="Threshold" value="INFO"/> <param name="Target" value="System.out"/> <layout class="org.apache.log4j.PatternLayout"> <p

我有以下log4j配置:

<appender name="MYCONSOLE" class="org.apache.log4j.ConsoleAppender">
  <param name="Threshold" value="INFO"/>
  <param name="Target" value="System.out"/>
  <layout class="org.apache.log4j.PatternLayout">
    <param name="ConversionPattern" value="%d{ISO8601}|%-5p|MYAPP|%t|%C{1}.%M(%L)|%m%n"/>
  </layout>
</appender>

<appender name="MYFILE" class="org.apache.log4j.DailyRollingFileAppender">
  <param name="File" value="${jboss.server.log.dir}/myapp.log"/>
  <param name="Append" value="true"/>
  <param name="DatePattern" value="'.'yyyy-MM-dd"/>

  <layout class="org.apache.log4j.PatternLayout">
    <param name="ConversionPattern" value="%d{ISO8601}|%-5p|MYAPP|%t|%C{1}.%M(%L)|%m%n"/>
  </layout>
</appender>
这只发生在MYCONSOLE生成的日志中,所有其他日志(如内部JBoss的日志)都没有空行。 此外,在MyFrfile日志文件中,日志是相同的,但空白行不存在。
原因可能是什么?

我可以通过使用
\n
而不是
%n
来去掉多余的行


我仍然不清楚
%n
的奇怪行为的原因。

当我使用ConsolePader进行审核记录器时,我也了解到了这一点

log4j.appender.audit=org.apache.log4j.ConsoleAppender
log4j.appender.audit.layout=org.apache.log4j.PatternLayout
log4j.appender.audit.Target=System.out
log4j.appender.audit.ConversionPattern=%d{ISO8601}|%t|%m%n
控制台上转储的日志为空行/空行

如果我删除了我可以去掉空行,我也会丢失实际数据。
如果有人能给我指点一下,我将不胜感激。

我们已经寻找这个答案很久了。谢谢由于我正在阅读审计日志,我需要将PatternLayout更改为审计布局,在添加以下审计日志后,可以正确打印
log4j.appender.audit.layout=org.apache.knox.gateway.audit.log4j.layout.AuditLayout
log4j.appender.audit=org.apache.log4j.ConsoleAppender
log4j.appender.audit.layout=org.apache.log4j.PatternLayout
log4j.appender.audit.Target=System.out
log4j.appender.audit.ConversionPattern=%d{ISO8601}|%t|%m%n