跨多个java类创建作业报告

时间:2016-01-27 07:47:03

标签: java scheduled-tasks

我正在实施一项需要创建详细报告的预定作业。 报告示例如下所示:

date - Started job 
date - Looking for stuff to process
date - Got x stuff to process
date - Processing y1
date - done
date - Processing y2
date - done
date - Processing y3
date - Failed with error : this_is_why_processing_failed
date - Processing completed
date - Job completed in z seconds

执行所有处理的实际代码可以在多个类中。 实现类似这样的事情的显而易见的方法是使用StringBuilder并传递它以便附加消息。

另一种更高级的方法是创建一个单例,并且在所有参与处理的类(可能是Thread名称?)中以某种方式知道id,并将报告字符串存储在那里。

有更好的方法吗? 是否有创建工作报告的最佳实践?

将使用ejb计时器触发作业。

2 个答案:

答案 0 :(得分:0)

您应该使用记录器,而不是绕过StringBuilder。 具有ThreadLocal成员字段的单身人士可以是存储"令牌的好地方。用于所有为同一工作工作的班级。

答案 1 :(得分:0)

或者您可以使用专为此原因设计的Log4j