詹金斯监控外部cron工作

时间:2011-12-26 07:50:06

标签: cron jenkins

我们使用专用的Amazon Ubuntu ec2实例作为Cron服务器,以不同的时间间隔执行16个cron作业,即早上4:15 - 7:15的10个cron作业,其余的是@ 23:00 - 23:50 。我通过电子邮件收到结果。我想配置一些东西,它们会在一天结束时发送电子邮件消息,列出成功执行的cron作业和失败的作业。

我有一个jenkins配置的ubuntu实例,用于自动构建Dev,Beta,Staging&现场环境。我可以将这些 cron作业 shell脚本)添加为 jenkins 中的外部作业并监控它们。有可能吗?

4 个答案:

答案 0 :(得分:8)

绝对有可能!您可以按照此处所述监控外部cron作业: https://wiki.jenkins-ci.org/display/JENKINS/Monitoring+external+jobs

您还可以通过创建自由式软件项目并将“执行shell”添加为构建过程来向Jenkins添加cron job(类似行为)。 这样更方便,因为您也可以通过Jenkins触发执行(“立即构建”)。

答案 1 :(得分:2)

您可以将Jenkins monitor external job project typematrix project合并。至少前者可以让你单独监控cron作业。

或者,您可以让当天最后一次监视的cron作业触发构建一个项目,该项目检查所有cron作业的状态(例如,通过检索和比较最后一次和最后一次成功构建的构建号)并发送一个电子邮件。 email plugin可能对后者有用。

答案 2 :(得分:1)

检查CPAN或对shell或perl脚本进行一些网络挖掘以管理cron作业并扩展其行为以执行一些可以使用HTML呈现的报告。或者编写一个servlet和一些函数调用来做到这一点。

这将成为您自己的独立监视器应用程序,可以位于jenkins中或独立部署。如果您选择将其添加到jenkins,则将报告HTML文件及其脚本添加到容纳jenkins的已部署Web文件的容器中,通知字段将您的文件和脚本放在单独的容器中。

添加一个指向jenkins index html的超链接,它会加载你的记者。现在重新启动tomcat并从那里开始。

答案 3 :(得分:0)

另一种选择可能是看看Cronitor(https://cronitor.io)。它基本上归结为跟踪信标,当cron作业/计划任务开始和结束时使用http请求进行ping操作。

如果您的工作没有按计划运行,或者运行时间太长/太短等,您将收到通知。您也可以将其配置为通过电子邮件,短信,还有Slack,Hipchat,Pagerduty等人。