有50个依次运行的Autosys作业。Autosys - 按顺序重新运行失败的作业
现在,如果序列中的作业失败。然后我正在寻找一种手动启动失败作业的方式。
可以通过调用sendevent
命令轻松完成。但是,在生产环境中,我们必须为此提高WR。
那么,如何在没有sendevent
命令的情况下手动重启失败的作业呢?
可能的解决方案是使每个作业都依赖于文件观察器作业。但是,这样,我们必须为每个作业创建File Watcher。有没有更好的方法。
有50个依次运行的Autosys作业。Autosys - 按顺序重新运行失败的作业
现在,如果序列中的作业失败。然后我正在寻找一种手动启动失败作业的方式。
可以通过调用sendevent
命令轻松完成。但是,在生产环境中,我们必须为此提高WR。
那么,如何在没有sendevent
命令的情况下手动重启失败的作业呢?
可能的解决方案是使每个作业都依赖于文件观察器作业。但是,这样,我们必须为每个作业创建File Watcher。有没有更好的方法。
您可以手动启动作业的唯一方法是sendevent
。但是如果你想跳过那个,那么你可以做一件事。但为此,您需要访问这两者中的任何一个。
如果你有这一点,那么你可以创建一个作业,那里每5
或10
分钟。这项工作将启动一个shell脚本,如startJobs.sh
。
在shell脚本中,您读取一个文件,如jobsToStart.txt
,其中包含要启动的作业列表。然后,您在该脚本中使用sendevent
以及文件中的作业名称。
现在,一旦将此脚本部署到生产环境中,您只需在文件jobsToStart.txt
中输入作业名称,脚本将在其运行时启动作业。
另一种方法是类似的,但不是将数据放入文件中,而是将数据放入数据库表中。 shell脚本将读取该表以查找作业名称。
就我个人而言,我建议将n_retrys=1
自动重新启动作业,如果再次失败,请让支持团队执行此操作。有一个访问限制的原因,如果你觉得你需要自己做,那么你必须提交你的案例业务给你访问。
由于受限制的权限,我们不能在脚本中使用sendevent。我同意你让支持团队去做。而且,我们在我们的项目中同意这种方法。 –
这个问题是关于服务器管理软件。除非您使用autosys SDK编写软件,否则应该在[sf]上提问您的问题。 – miken32