Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/lua/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Email 控制cron作业复杂性的方法或软件系统?_Email_Logging_Automation_Cron_Analytics - Fatal编程技术网

Email 控制cron作业复杂性的方法或软件系统?

Email 控制cron作业复杂性的方法或软件系统?,email,logging,automation,cron,analytics,Email,Logging,Automation,Cron,Analytics,在我的工作中,我们大量使用cron来自动化许多系统管理任务,从备份到报告生成。问题是,我们50多个cron作业系统的复杂性在其自身的重压下开始崩溃。让我描述一下我们的设置: 约15名开发人员,其中一些人负责通过个人crontab运行cron作业 30多台机器,其中一些正在运行cron作业,有时由几个人操作 许多cron作业没有被记录,它们的所有stdout和stderr都被管道传输到/dev/null(让我懊恼) 一些cron的工作太吵了,吐出了多余的文本,使得cron的电子邮件很难筛选 大多

在我的工作中,我们大量使用cron来自动化许多系统管理任务,从备份到报告生成。问题是,我们50多个cron作业系统的复杂性在其自身的重压下开始崩溃。让我描述一下我们的设置:

  • 约15名开发人员,其中一些人负责通过个人crontab运行cron作业
  • 30多台机器,其中一些正在运行cron作业,有时由几个人操作
  • 许多cron作业没有被记录,它们的所有stdout和stderr都被管道传输到/dev/null(让我懊恼)
  • 一些cron的工作太吵了,吐出了多余的文本,使得cron的电子邮件很难筛选
  • 大多数cron作业(如果它们受到监控的话)都会转到一个组电子邮件别名,因此许多人会看到与它们无关的消息,并习惯于忽略它们
  • cron作业经常失败,我们没有及时注意到
  • 我们的备份系统正在跟踪一些cron作业,其他的则没有。没有源代码控制
  • 当我们的一台服务器宕机时,这意味着该机器上存储在用户crontab文件中的任何cron作业都不会运行,而且我们没有意识到cron作业无法运行
理想情况下,我们需要一个设置或软件系统,其中:

  • 任何开发人员都可以轻松地调整/修复cron作业,而不局限于个人crontab
  • 即使crontab以某种方式集中在特定的机器上,也可以灵活地确定cron作业在哪台机器上运行
  • 所有成功的cron作业运行都被简洁地记录下来,因此我们知道发生了一些事情
  • 所有错误都被捕获,并根据错误消息和cron作业报告给相关开发人员的细粒度列表
  • 用户可以设置为监视某些cron作业,不管它们成功与否
  • 用户可以收到摘要(电子邮件或网页),详细说明在特定时间段内哪些作业失败,哪些作业成功
  • 使用类似用于分析的方法记录cron作业统计信息(运行时、退出状态、输出量)
    • 健壮性:一台服务器宕机不会影响整个cron作业系统
在网上搜索时,我看到了一些关于的讨论,但它似乎只满足了我们的一些需求。就这些功能的软件支持而言,似乎有cronic、shush和cronwrap等工具(对不起,我是新用户,仅限于2个超链接)。我肯定还有更多我错过的


似乎我可以编写这样的代码,但似乎这样的东西肯定已经被创造出来了。任何关于现有系统/方法的建议,或关于如何构建这样一个系统的建议,都将不胜感激。

我不是这方面的专家,但我希望这能对您有所帮助, 我最近听说了这种新技术:

,解决方案,还有这个

实际上,我对此一无所知,但我认为此作业调度器和工作负载自动化软件是企业级作业调度器,用于SOA或企业集成架构,通常可以与ERP系统集成


老实说,我必须承认,我不确定这项技术是否适合您的需要,您必须对这一主题进行深入研究,我希望这一回应能扩大您的“解决方案全景”.

可能相关:你有没有试过使用Hudson/Jenkins这样的持续集成服务器?@collindo:我以前使用过Condor和qsub这样的批量提交系统。它们有一些很好的监控功能,但它们不提供类似cron的功能,也不提供日志记录或分析功能。@Harsha:我以前没有使用过持续集成服务器。我的理解是,它会在每次提交代码时应用构建代码和测试套件。你能更详细地描述一下为什么你认为这是一个很好的解决方案来满足我发布的需求吗?谢谢你的参考。我认为“工作负载自动化”的方向是正确的,尽管所有的例子似乎都是这些重型企业级公司解决方案。理想情况下,我正在寻找一种管理cron复杂性的工具,它是Unixy的、脚本友好的、开源的。