【问题标题】:Separate log file per job execution每个作业执行单独的日志文件
【发布时间】:2014-08-26 06:28:57
【问题描述】:

我有一个批处理(Spring批处理),我想为每个批处理创建单独的日志文件,这样我们就可以很容易地使用这个单一的日志文件来调试整个流程。有没有办法实现它。我们正在使用 log4j 进行日志记录。

【问题讨论】:

  • 我们能够在运行时将 FileAppender 添加到根 Logger 来实现。下面是一个示例代码,每次执行都会创建唯一的日志文件。

标签: logging spring-batch


【解决方案1】:

我认为您可以将动态日志文件名存储为作业参数或存储到执行上下文中,并以编程方式设置 log4j 文件名,如使用 JobExecutionListener 描述的 here
我不知道如何使用log4j XML config 和 log4j 属性替换来实现相同的目标,因为我从来没有过多地使用 log4j。

【讨论】:

  • 我可以通过在运行时动态配置 FileAppender 来实现。在作业开始时,我们会将 FileAppender 添加到具有唯一名称的根记录器中,并在作业执行后将其删除。
猜你喜欢
  • 1970-01-01
  • 2023-03-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-01-09
  • 2011-10-20
  • 1970-01-01
相关资源
最近更新 更多