SENDEVENT

系统组件:事件服务器、事件处理器、远程代理

事件处理器请求(1)事件服务器后获取相关作业信息(2)并将之通过代理连接(3)传递给远程代理(4),远程代理会往事件处理器发送回执表示已经接收相关作业内容(5)。然后远程代理开始运行客户端作业(6)并发起一个CHANGE_STATUS事件通知事件服务器作业状态为RUNNING(7),当客户端作业完成时会通过远程代理(8)向事件服务器发送程序结束状态码(9)。

图片发自简书App

常见作业类型

Command - 可以是shell脚本或是可执行程序

Box - 作为可以包含其它作业的容器使用,能够组织和控制处理流程。如果其中包含的作业中没有指定开始运行条件的话,Box中的作业则会在Box满足运行条件时立即并行运行。

File watcher - 启动一个文件监控进程,用于检测文件是否存在以及文件大小。当文件大小达到某个最小检测值,并且不再继续增长时,File Watcher作业就算执行成功。

常见作业操作

autorep -> 列举出指定作业的各种相关信息 -> autorep -j

job_depends -> 查看依赖条件 -> job_depends [-c | -d ] [-J job_name]

sendevent -> 作业控制 -> sendevent -j  -e

EVENT的可用值说明

+ STARTJOB - 开始作业

+ FORCE_STARTJOB - 强制开始作业,不考虑其依赖条件与调度设置

+ KILLJOB - 关闭作业

+ DELETEJOB - 删除作业

+ JOB_ON_ICE - 与下面的ON_HOLD一样,ON_ICE也会阻止指定的作业运行,区别见下文

+ JOB_OFF_ICE - 与ON_ICE操作对立

+ JOB_ON_HOLD - 阻止指定的作业运行

+ JOB_OFF_HOLD - 与ON_HOLD操作对立

+ CHANGE_STATUS - 手动修过作业状态。当Autosys无法跟踪作业状态时可以使用该功能。比如说Autosys中报告出某个作业仍在运行,而时机上该作业并未运行,这时就可以使用命令“sendevent -j  -e CHANGE_STATUS -s STATUS”修改作业状态。其中的STATUS可以是ACTIVATED或FAILURE或INACTIVE或ON_HOLD或ON_ICE或QUE_WAIT或REFRESH_DEPENDENCIES或REFRESH_FILEWATCHER或RESTART或RUNNING或STARTING或SUCCESS或TERMINATED。

ON ICE与ON HOLD的区别

区别一,对于ON_HOLD的作业来说,如果在ON_HOLD期间曾经满足过运行条件,那么在OFF_HOLD后,作业会立即开始执行。而同样的情况不适用于OFF_ICE后的作业,OFF_ICE后的作业必须等待运行条件重新被满足才会运行。

区别二:依赖ON_HOLD作业的作业不会运行,而依赖于ON_ICE作业的作业会运行,此时ON_ICE作业的状态被视为SUCCESS。

Box作业特点

其最终状态取决于其包含的内部作业,只有被包含的全部作业都运行成功,它的状态才是成功,否则任一被包含作业运行失败,其状态则变为失败。定义Box作业时不需要指定机器名,机器名主要是为运行脚本和命令的作业服务,而Box作业只是一个作业容器与实际执行的进程无关,所以Box作业不需要机器名。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,933评论 18 139
  • 三月春来雨纷纷,淋漓过后又是回南天气。南方的春天矫情得很,黏腻潮湿无休无止,挂在阳台上的衣服,几日都没干得彻底,索...
    柠C小姐阅读 249评论 2 0
  • 儿子,保定之主道是那北方放浪的雪地狐挥舞双手,大型庆祝突击步枪射白鹿那鹿却在灯火阑珊处 西伯利亚怀揣暖水壶去圣岛的...
    超智少年李鱿鱼阅读 223评论 0 1
  • 500斤*80条=4万 4万/8成=5万 成本分析: 苗:36*218=7848 饲料:4000*0.9*4.7=...
    土生水长阅读 386评论 0 0
  • 大袋鼠,忙采购,一家老少爱吃素, 逛完超市往家走,肚兜装满嘴(儿)嘟嘟, 路边发现大蘑菇,口水直流忙出手。 突然跑...
    赵博之友阅读 296评论 0 0