任务开发完发布上线后,我们需要在运维中心对它进行运维管理。本文介绍如何对任务进行运维管理。
运维管理
周期任务
以下为周期任务主要功能点。查看周期任务DAG图(节点依赖关系的有向无环图)是否符合预期,确认依赖关系符合当前实验预期。
周期任务页面支持按节点类型、资源组、引擎等多条件组合检索过滤。单击任务节点可查看节点ID、调度周期、执行时间、操作日志等详情,也可展开父节点或子节点查看上下游依赖关系。右键单击节点可执行查看代码、编辑节点、查看实例、查看血缘、补数据、暂停(冻结)、恢复(解冻)、下线节点等操作,还支持批量修改责任人、资源组以及批量下线、冻结或解冻节点。
将任务发布上线后,调度任务主要是对未来数据的周期性处理,如果我们需要对历史的数据进行处理那么就可以使用补数据功能。对历史业务日期进行补数据操作,选择需要补的业务日期,选中所有下游节点,一共12个节点,确认执行。在补数据实例中,可以看到实例的运行情况。
在周期任务DAG图中,右键单击目标节点,选择补数据,在弹出的子菜单中选择补数据模式:当前节点、当前节点及下游节点、海量节点模式或高级模式。在补数据对话框中,设置补数据名称和业务日期范围,根据需要选择是否并行和执行顺序(业务日期正序或倒序),然后在节点列表中选择需要补数据的节点,单击确定。
周期实例
任务和实例是一对多的关系,实例是任务的具体实现。发布后的第二天可以按业务日期查看周期实例的DAG,以下是周期实例的一些基本功能点说明。
周期实例页面支持按实例状态、资源组等多条件组合搜索,可查看实例ID、调度周期、执行时间等详情。支持上下游分析以快速定位上游出错实例及下游影响面,也可展开父节点或子节点查看依赖层级。右键单击实例可执行重跑、重跑下游、终止运行、暂停(冻结)或恢复(解冻)等操作,支持批量执行。
您可以通过查看运行日志或运行诊断]来排查实例未正常完成的原因。
通过查看实例详情可以查看实例的运行日志,例如ODPS SQL任务会打印对应的MapReduce的过程,Inputs和Outputs的数据量以及Odps的详细日志Logview等等,如果任务出错,您可以根据这些信息进行排查。
通过实例右键可以对实例进行智能诊断,我们周期实例开始调度的条件是“上游全部运行成功+下游定时时间到+下游有调度资源=下游开始运行”,而智能诊断功能就是对当前实例进行这三个条件的全链路诊断,帮助运维人员更加快速的定位问题。
该功能有版本控制,详情请参见智能诊断官方文档。
智能监控
智能基线
在生产中我们不仅希望任务能够正常产出,还希望部分重要的任务像ads_ec_ec360_gmv_kpi_overview能够按时产出,以便我们在上午9点30分能看到最新的GMV数据等,智能基线就可以实现高保障的需求。智能基线能够及时捕捉导致基线上的任务无法按时完成的异常情况并提前预警,保障复杂依赖场景下重要数据能在预期时间内顺利产出,帮助您降低配置成本、避免无效报警、自动监控所有重要任务。
基线的应用场景:通过预警、调整关键路径上的所有任务调度优先级的方式保障任务K按时产出。

将周期任务ads_ec_ec360_gmv_kpi_overview纳入5级基线,保障其按时产出。
基本信息:
|
参数 |
值 |
|
基线名称 |
retail_e_commerce_2_ads高保障 |
|
所属工作空间 |
零售电子商务2_完整项目_勿测试 |
|
责任人 |
xxx |
|
基线类型 |
天基线 |
|
保障任务 |
任务节点:ads_ec_ec360_gmv_kpi_overview |
|
优先级 |
5 说明
数值越大,优先级越高。取值范围为[1,3,5,7,8]。优先级越高,在同一调度资源组内该任务及其关键路径上的所有任务获取调度资源的优先级也越高。 |
|
预计完成时间 |
每天00:53(系统自动测算) |
|
承诺时间 |
每天09:00 |
|
预警余量 |
30分钟 |
报警行为:
|
参数 |
值 |
|
报警开关 |
开启 |
|
报警类型 |
基线报警/事件报警(本实验中都使用相同的配置)。 |
|
报警方式 |
钉钉群机器人,添加对应的webhook地址。 说明
钉钉群机器人需加上“DataWorks”关键字才可以接收到DataWorks发送的信息,具体可以参见场景实践:发送报警消息至钉钉群。 |
|
最大报警次数 |
3次 |
|
最小报警间隔 |
30分钟 |
|
免打扰时间 |
00:00-00:00 |
自定义规则(可选)
对单个任务或者资源组有监控需求的,可以使用自定义规则。
新建自定义规则时,需配置以下信息:对象类型支持任务节点、基线、工作空间、业务流程、独享调度资源组和独享数据集成资源组;设置触发条件(如任务完成、未完成、出错、超时等触发告警,或资源组利用率超过阈值并持续一定时间时触发告警);选择报警方式(短信、邮件、电话、钉钉群机器人或WebHook);配置疲劳度控制(最大报警次数、最小报警间隔和免打扰时间)。