我是第一次接触autosys..有没有人知道如何对特定的工作进行阳性和阴性测试
发布于 2011-05-12 22:42:18
Autosys似乎有限得令人痛苦。您可以在JOB2中创建一个依赖于JOB1成功的条件,例如成功(JOB1)。但似乎没有人支持与成功相反的条件。Autosys提供了RUNNING和NOTRUNNING条件,但由于某些原因,它们不幸地遗漏了NOTSUCCESS。
到目前为止,我想出的最好的解决方法是使用以下JIL配置:
insert_job: 0AM-7AM_BOX
job_type: b
start_times: "00:00"
description: "Succeeds if JOB1 succeeds, TERMINATED if JOB1 does not succeed"
term_run_time: 419
insert_job: CHECK_THE_CONDITION
job_type: c
box_name: 0AM-7AM_BOX
command: date
condition: success(JOB1)
description: "Succeeds if JOB1 succeeds"
insert_job: ACT_ON_THE_CONDITION
job_type: c
command: [put the command you want to execute here]
condition: SUCCESS(CHECK_THE_CONDITION)
description: "Run the run between midnight and 7am if the condition is true"因此,如果JOB1在午夜到早上7点之间进入"SUCCESS“状态,那么ACT_ON_THE_CONDITION将立即运行。由于该命令只是对"date“的一个虚拟调用,因此它应该立即运行,并且也将变为”成功“,因此0AM-7AM_BOX框也将变为”成功“。
另一种可能性是JOB3在早上7点之前没有进入“成功”状态在这种情况下,"term_run_time“设置将使盒子进入"TERMINATED”状态。
总而言之,
这很有用,因为您可以设置相关作业来测试成功条件或终止条件(因为terminated是可以放入条件中的有效测试)。
发布于 2011-05-05 02:02:24
不确定您要测试什么。首先,获取您希望在Autosys之外运行的命令或脚本。作为其中的一部分,测试命令或脚本错误处理。Autosys会将来自a命令的任何零退出代码报告为成功,因此请确保您的脚本在任何退出错误时发送非零退出代码。然后,您可以使用虚拟命令或脚本(如睡眠命令)测试autosys作业是否按计划运行。然后,您可以使用实时命令或脚本进行测试。
要测试特定的作业,如果您强制启动作业,作业运行成功,并且autosys运行的命令生成的日志表明命令成功,则测试结果为阳性。对命令作业执行否定测试将取决于正在运行的命令或脚本。更改作业外部的某些内容以使命令或脚本失败。
https://stackoverflow.com/questions/5357665
复制相似问题