2008-11-17 85 views
3

我们有50多个Java批处理过程在一天的不同时间运行。它们在Solaris机器上运行,并通过cron启动。目前,我们只知道他们是成功还是失败的唯一方法是在每批处理结束时生成一封电子邮件。我们有一个支持团队来监控这些电子邮件。最近,即使批次正在运行,我们也遇到了未收到电子邮件的问题。一定会有更好的办法。Java批量监控

无需重新发明轮子,是否有任何开源批处理监控应用程序?

还有一个更普遍的问题,监视批处理过程的最佳方法是什么?

回答

3

目前是否有一些批次管理系统在原地?还是作业是通过OS调度程序运行的? (即视窗Schedule Tasks或* nix中cron

Quartz是一个开源(Apache许可证)基于java的作业调度已在地方听众可用于通知目的的基础设施,但仍然会有一些涉及代码开发。

+0

对不起,将信息留下。我更新了这个问题:“他们在Solaris机器上运行,并通过cron启动。”我会看看石英。 – 2008-11-17 16:30:02

3

我不知道开源批处理监控应用程序,但有一个新的子项目Spring:Spring-Batch,它提供了一个批处理框架。我已经在一些新项目中成功地使用了它。

当您启动批处理作业时,可以连接作业执行监听器。在我的情况下,当作业失败并出现异常时,我的执行监听器拦截此事件,并将有关堆栈跟踪的错误电子邮件发送到众所周知的电子邮件列表。我在批处理结束时使用Tasklet发送电子邮件以指示正常完成。

当然,如果在电子邮件子系统错误(该消息不会发送)全盘皆输...

1

必须有使用Nagios的,看看日常任务的方式已经成功运行,因为它可以通过许多不同的方式(从PID文件到存在的文本文件,到拖网日志文件等)监视事物。可悲的是,纳吉奥斯不在我的工作岗位上,所以我不能再走了。