规则管理

自定义监控规则帮助您根据实际业务需求,自定义监控规则,监控任务运行状态或资源使用情况,以便及时发现并处理异常。本文为您介绍如何在规则管理页面自定义报警规则,以及添加钉钉群机器人获取Webhook地址。

使用限制

  • 自定义监控规则仅对自动调度的周期实例生效,不对周期任务的测试和补数据任务运行结果进行监控。

  • 自定义监控规则支持邮件短信电话、钉钉群机器人WebHook报警方式,使用限制如下:

    • WebHook

      • 可用版本:仅DataWorks企业版支持使用WebHook功能。

      • 可用地域:仅华东2(上海)、西南1(成都)、华北3(张家口)、华北2(北京)、华东1(杭州)、华南1(深圳)、中国(香港)、欧洲中部 1(法兰克福)、亚太东南1(新加坡)地域支持使用WebHook功能报警。

      • 可用报警方式:仅支持推送报警信息至企业微信或飞书。

    说明

    DataWorks仅支持使用钉钉群、企业微信和飞书的WebHook地址,如您需要使用自主开发的WebHook发送消息服务,请参考智能监控自定义WebHook进行适配,并在完成后与我们联系以便进一步处理。您需要先单击申请链接加入“阿里云大数据AI平台”交流群,再扫描下方二维码加入DataWorks产品钉钉交流群,进行售前售后咨询,咨询可直接@智能机器人,值班时间段内也可直接联系值班人员。技术支持二维码

  • 仅DataWorks专业版及以上版本可配置出错实例数量、出错实例占比、任务日志含关键字等触发条件,详情请参见DataWorks各版本详解;开通DataWorks,详情请参见购买指引

注意事项

当通过自定义监控规则监控周期实例时,不同报警触发条件对应的监控时间范围如下。

监控范围

触发条件

说明

业务日期(即昨天T)

  • 任务转实例完成

  • 实例数量波动

  • 实例运行完成

  • 出错实例数

  • 出错实例占比

  • 任务日志含关键字

DataWorks会监控业务日期为昨天,定时时间为今天的周期实例,满足触发条件则产生报警。

业务日期(即昨天T)、前天(T-1)

  • 实例运行未完成

  • 实例周期运行未完成

  • 实例运行超时

DataWorks会监控业务日期为昨天、前天,定时时间为今天、昨天的周期实例,满足触发条件则产生报警。

业务日期(即昨天T)、前天(T-1)、大前天(T-2)

  • 实例运行出错

  • 实例自动重跑后仍出错

DataWorks会监控业务日期为昨天、前天、大前天,定时时间为今天、昨天、前天的周期实例,满足触发条件则产生报警。

说明

监控范围外的周期实例即使满足触发条件,也不会产生报警。不同触发条件对应的监控规则,详情请参见创建自定义规则

进入规则管理

  1. 进入运维中心页面。

    登录DataWorks控制台,切换至目标地域后,单击左侧导航栏的数据开发与治理 > 运维中心,在下拉框中选择对应工作空间后单击进入运维中心

  2. 在左侧导航栏,单击监控报警 > 规则管理

    说明

    还支持您进入周期任务页面批量选择节点并创建监控规则。详情请参见查看并管理周期任务

创建自定义规则

在规则管理页面,您可根据需要创建自定义监控规则。

配置基本信息

参数

描述

规则名称

输入新建自定义规则的名称。

对象类型

指定监控对象的类型,定义监控的粒度。包括任务节点基线工作空间业务流程独享调度资源组独享数据集成资源组

说明

对象类型为基线时,仅对基线上的任务运行状态进行监控,不会监控基线任务的上游任务,如果您需要同时监控基线任务的上游任务,请参见:智能基线概述

规则对象

指定监控对象。输入监控对象的名称或ID后,在列表中选择需要添加的对象,单击添加

支持添加的监控对象类型及数量上限如下:

  • 任务节点:50个

  • 基线:5个

  • 业务流程:5个

  • 工作空间:1个

任务白名单

指定上述监控对象中,哪些任务不受当前规则监控。

对象类型基线工作空间业务流程时,支持您输入节点名称/ID,单击添加按钮将任务添加至白名单列表中。

说明

白名单中的任务将不受监控,且最多支持添加50个任务。

资源组名称

指定需要监控的独享资源组名称。

对象类型独享调度资源组独享数据集成资源组时,则需要在下拉列表中选择需要监控的资源组名称

配置触发方式

说明

自定义报警逻辑中,任务冻结状态表示任务已完成。

对象类型

触发条件

描述

任务节点基线工作空间业务流程

完成

表示从任务运行的起始时间点开始监控,在任务运行成功时系统发送报警。

  • 当对象类型为基线业务流程时,仅当基线、业务流程上的所有任务都运行成功时,才会触发报警。

  • 当对象类型为任务节点,且添加了多个节点时,仅当所有节点都执行完成时,才会触发报警。

  • 当对象类型为工作空间时,触发条件不支持设置为完成

说明

对于小时任务,只有全部周期均运行成功后,该任务才会被判定为完成。

未完成

表示从任务运行的起始时间点开始监控,到指定的目标时间点任务仍未结束运行,则系统发送报警。

说明

此报警与智能基线报警策略不同,智能基线能够及时捕捉导致基线上的任务无法按时完成的异常情况并提前预警,详情请参见:智能基线概述

场景示例:

  • 场景一:任务的定时调度时间为1点,设置的未完成时间为2点,则1点时该任务开始运行,在2点时任务仍未结束运行,则发送报警。

  • 场景二:设置任务每天0:00~23:59每小时调度一次,当该任务未完成时间设置为12点时,则该规则每天都会触发告警。

  • 场景三:设置某基线完成时间为10点,则只要基线上有一个任务没有在10点完成,便会发送告警。

说明

对于小时或分钟任务,会校验当天所有周期在指定时间点是否未运行完成。

出错

表示从任务运行的起始时间点开始监控,如果任务运行出错,则系统发送报警。

说明

实例任务运行出错即在运维中心 > 周期任务运维 > 周期实例的基本信息列,目标实例显示3状态。

  • 当对象类型为基线工作空间业务流程时,只要基线、工作空间或业务流程内的某个任务运行出错,便会触发告警。

  • 任务每次运行出错都会触发报警,如果某个任务出错报警次数为2,当该任务重跑2次均出错时,将会触发4次报警。

  • 如果您需要在任务自动重跑后仍出错时再触发报警,则可以将触发条件配置为:自动重跑后仍出错

出错实例数

表示处于出错状态的实例数量,包括DQC校验不通过以及代码逻辑执行失败情况。

当对象类型为工作空间时,选择触发条件出错实例数量后,您需要配置阈值,即出错实例个数达到阈值时,就会触发报警。

说明
  • DataWorks专业版及以上版本才可使用该功能。

  • “当天”特指业务日期为昨天,定时时间为今天的周期实例。

出错实例占比

当对象类型为工作空间时,选择触发条件出错实例占比后,您需要配置阈值,即出错实例占当天总实例数的比例达到阈值时,就会触发报警。

说明
  • DataWorks专业版及以上版本才可使用该功能。

  • “当天”特指业务日期为昨天,定时时间为今天的周期实例。

任务日志含关键字

当对象类型为工作空间时,选择触发条件任务日志含关键字后,您需要配置关键字,即当天任务运行日志含关键字时,将触发告警。

说明
  • DataWorks专业版及以上版本才可使用该功能。

  • “当天”特指业务日期为昨天,定时时间为今天的周期实例。

  • 8月24前创建的独享资源组,若要使用任务日志含关键字告警功能,请提交工单联系我们进行升级。否则无法收到相关报警信息。

周期未完成

表示在指定的周期内,任务仍未结束运行,则系统发送报警。通常用于监控以小时为周期单位的实例任务。

当业务流程设置了周期未完成监控后,系统会根据您设置的周期N,对业务流程中的任务(例如,天任务、小时任务、分钟任务等),进行第N个周期任务的监控。如果实例数少于N时,则会忽略该任务的告警。

例如,设置的周期为3,业务流程中有如下两个任务,则告警监控情况如下:

  • 小时任务A:每2小时调度一次,运行一次耗时25min。运行起始时间为每日0点0分,则该任务一天(24小时)共有12个任务周期,0点为第一个周期,则第3个周期为4点。该任务正常运行时,第3个周期任务会在4点25分执行完毕。此时设置触发条件为周期未完成,且指定该任务第3个周期在4点30未完成的时候发送报警信息,则如果任务某天运行到4点30还未完成时,将会发送报警。

  • 分钟任务B:每10分钟调度一次,运行一次耗时2min。运行起始时间为每日0点0分,则该任务一小时共有6个任务周期,0点0分为第一个周期,则第3个周期为0点20分。该任务正常运行时,第3个周期任务会在0点22分执行完毕。此时设置触发条件为周期未完成,且指定该任务第3个周期在0点23未完成的时候发送报警信息,则如果任务某天运行到0点23还未完成时,将会发送报警。

超时

表示从任务运行的起始时间点开始监控,到指定的运行时长后,该任务仍未结束运行,则系统发送报警。通常用于监控任务的运行时长。

说明

如果监控的任务执行失败,到指定的运行时长后,该任务仍处于未成功状态,将触发超时告警。

自动重跑后仍出错

表示从任务运行的起始时间点开始监控,如果任务运行出错且自动重跑后仍出错,则系统发送报警,

说明

如果您需要在任务每次运行出错时就触发报警,则可以将触发条件配置为:出错

任务转实例完成

仅当对象类型为工作空间时,可以选择该触发条件。

实例数量波动

仅当对象类型为工作空间时,可以选择该触发条件。DataWorks每天在24:00前生成次日需要运行的周期实例,当工作空间的实例数量与历史均值相比发生一定幅度的波动时,您将收到该报警。

独享调度资源组独享数据集成资源组

资源组利用率

利用率大于某个数值并持续指定时长时,触发该报警。

示例:利用率大于50%并持续15分钟时,触发报警。

资源组上等待资源的实例数

等资源实例数大于某个数值并持续指定时长时,触发该报警。

示例:等资源实例数大于10并持续15分钟,触发报警。

配置报警行为

报警方式

报警接收人

描述

邮件短信、电话

支持报警给任务责任人值班表其他人员

  • 您可以单击校验联系方式,校验手机号或邮箱是否填写正确。

  • 您需要购买DataWorks专业版及以上版本,才可以使用电话告警功能。

  • 如果您选择报警方式电话,则需要选中为了避免短时间内产生大量报警电话,DataWorks会对报警电话进行过滤,同一个用户在20分钟内最多接收到一通报警电话,其余报警电话将被降级为短信,请知悉。

  • 您需要先配置值班表,再在此处选择报警给值班表,值班表配置详情请参见:值班表

    说明

    配置完值班表后,在产生报警时,前两次仅主值班人会收到报警信息,第三次开始系统将发送报警信息至主值班和备值班人

钉钉群机器人WebHook

群内人员

  • 您可单击操作列的发送测试消息,测试该报警是否可以正常发送。如未收到告警信息,请参考智能监控进行排查。

  • 钉钉群机器人安全配置仅支持配置关键字,并且关键字需要包含DataWorks

配置疲劳度控制

参数

描述

最大报警次数

报警的最大次数,超过设置的次数后,不再产生报警。

最小报警间隔

两次报警之间的最小时间间隔。

免打扰时间

设置了免打扰时间后,则在该时间段内系统将不会发送告警。

例如,当设置了任务状态为超时出错未完成时触发报警,且该任务设置的免打扰时间为00:0008:00,则该时间段内将不会发出报警信息,如果到达8点,任务仍处于上述异常状态,将会发出报警信息。

配置完成后单击确定,即可生成规则。您可以在规则管理页面单击相应规则后的详情开启/关闭删除进行相关操作。

  • 详情:单击详情,即可查看规则的基本信息。

  • 开启关闭:控制规则的状态,开启后方可监控任务的执行情况。您可以在报警信息面板查看报警详情。

  • 删除:单击删除,即可直接删除规则。

场景实践:发送报警消息至钉钉群

  1. 打开需要告警的目标钉钉群,单击右上角的群设置图标。

  2. 单击智能群助手

  3. 智能群助手页面,单击添加机器人

  4. 群机器人页面,单击新增图标。

  5. 选择要添加的机器人页面,单击自定义

  6. 自定义对话框中,单击添加

  7. 添加机器人对话框中,配置各项参数。

    参数

    描述

    机器人名字

    自定义机器人的名称。

    添加到群组

    添加机器人的群组,不可以修改。

    自定义关键词

    设定后,只有包含关键词的消息内容才会被正常发送。此处必须添加DataWorks为关键词,注意区分大小写。

    说明

    最多可以设置10个关键词,消息中至少包含其中1个关键词才可以发送成功。

  8. 选中我已阅读并同意《自定义机器人服务及免责条款》,单击完成

  9. 完成安全设置后,复制机器人的Webhook,单击完成

    重要

    请妥善保管Webhook地址,一旦泄露会有安全风险。

  10. 进入规则管理页面,单击新建自定义规则,选择报警方式为钉钉群机器人,复制webhook地址钉钉群机器人webhook地址输入框中。

DataWorks智能监控推送企业微信或飞书的报警信息样例如下。webhook样例