Log4j在localhost上正常工作,但在jenkins中,所有日志语句都打印在同一行上

时间:2014-04-24 12:35:46

标签: java jenkins selenium-webdriver log4j

执行测试用例后,所有日志步骤都将写入文件中。如下所示。

  • 创建日志文件在本地计算机中执行后:
  

[INFO] [2014-04-16 16:49:02,945] - 从dataSource文件中读取数据属性

     

[INFO] [2014-04-16 16:49:02,945] - DataSource.properties文件路径

  • 创建日志文件在JENKINS中执行测试用例后
  

[INFO] [2014-04-21 08:08:27,134] - 从dataSource文件中读取数据属性[INFO] [2014-04-21 08:08:27,135] - DataSource.properties文件路径

在Jenkins中,在完成第一个日志语句后,将添加第二个语句。但我的要求是第一行的第一个声明,第二行的第二个声明。那么如何在Log4j中指定下一行字符?

1 个答案:

答案 0 :(得分:1)

在Log4j(v1或v2)中,您可以使用%n中的PatternLayout插入换行符。 您可以在此处阅读有关Log4j模式的更多信息:

以下是Log4j配置示例:

  • Log4j v1:log4j.appender.FileAppender.layout.ConversionPattern=%-5p [%t] %m%n
  • Log4j v2:<PatternLayout pattern="%-5p [%t] %m%n"/>