首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jenkins和生产服务器的不同log4j配置

jenkins和生产服务器的不同log4j配置
EN

Stack Overflow用户
提问于 2015-06-08 07:42:23
回答 1查看 3.1K关注 0票数 3

我正在我的linux服务器上的/logs/MyApp目录下转储日志文件(/logs/MyApp),并且它正常工作。应用程序(EAR)是使用Jenkins构建的,我正在为此编写junit测试用例。问题是,log4j文件附录的位置不会指向jenkins服务器文件系统,而是相对于我的linux服务器。

代码语言:javascript
复制
Log4j.appender.App.File = /logs/MyApp/AppLogs.log

这将导致在不存在log4j文件位置时从jenkins执行测试用例时出现错误。

Log4j:错误setFile(null,true)调用失败。java.io.FileNotFoundException: /log/MyApp/Applogs.log(没有此类文件或目录)

如何将log4j配置为使用jenkins而不更改已经为我的生产环境设置的当前配置。

EN

回答 1

Stack Overflow用户

发布于 2015-06-08 07:56:05

有几种方法可以解决这个问题:

  1. 在Jenkins主/奴隶中创建目录。如果有一个新奴隶,那是不可持续的。
  2. 更改log4j配置,使您有不同的log4j配置--一种用于生产,一种用于本地测试,另一种用于詹金斯。(这就是Play框架所做的,对于不同的配置文件,您得到了不同的日志文件)
  3. 您可以将它作为Jenkins作业的参数传递(或者在env中设置它),并在Jenkins中使用它。
  4. 如果可能的话,不要在log4j配置中使用绝对路径。
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30703619

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档