离线报警监控功能,支持您通过配置自定义规则,来实现对任务运行状态的监控。本文将为您介绍监控规则配置的相关操作。
通过新建离线任务监控规则,可对任务运行进行监控。一个监控规则可被多个任务使用,一个任务可使用多个任务监控规则。
登录 DataLeap租户控制台 。
在对应项目下点击运维中心 > 离线任务运维 > 报警监控 > 监控规则界面。
右上角点击新建监控规则,进入报警设置页面,可以对任务监控规则进行配置,配置信息包括基本信息、监控内容、接收人和报警设置四部分:
基本信息:
参数 | 说明 |
---|---|
监控类型 | 支持选择离线任务监控和准实时任务监控:
|
规则名称 | 输入规则名称,仅支持中英文字符、数字、下划线和中小括号。 |
规则对象 | 下拉搜索监控的任务对象,可设置多个,您可根据任务 ID 和任务名称进行搜索。 |
规则描述 | 非必填,您可以添加当前规则的描述信息,或填写在收到报警后,相关的处理方式等。 |
监控内容:
离线任务监控设置说明:
参数 | 说明 |
---|---|
报警 | |
失败报警 |
|
超时报警 |
|
通知 | |
执行状态 | 仅任务执行成功时,才会以邮件形式发送一次通知。 |
准实时任务监控说明:
参数 | 说明 |
---|---|
连续失败报警 | 设置不同业务日期实例连续 N 次执行失败后,发送相应报警内容(N 值您可根据实际情况指定)。 |
连续超时报警 |
(具体 N 值和同比比例大小,您可根据实际情况指定) |
实例堆积告警 | 任务状态为等待中的实例个数超过 N 个时,发送报警信息(N 值您可根据实际情况指定)。 说明 等待状态为等待调度执行资源,不包含等待到达执行时间的实例个数。 |
接收人:
接收人 | 说明 |
---|---|
项目用户 | 任务监控规则的内容触发后,可将任务责任人或指定项目成员,设置为报警/通知的接收人,支持设置多个接收人。 说明 项目用户作为接收人,您需保证接收人在火山控制台 > 访问控制中个人信息邮箱、手机号已填写完整。 |
飞书群 | 将告警发送至指定的目标飞书群中,您可通过在飞书设置界面,开启 Debug 模式后查看您所在的所有飞书群 ID 信息,支持添加多个群 ID,用英文逗号分隔。飞书群 ID 查看方式详见3 飞书群 ID 信息获取。
|
值班计划 | 您可填写值班计划中的唯一名称信息,支持填写多个值班计划唯一名称,用英文逗号分隔即可。 |
报警设置:
参数 | 说明 |
---|---|
报警形式 |
|
发送方式 | 支持邮件、短信、电话、飞书、飞书加急、Webhook 等方式。 注意
|
报警卡片 | 当发送方式配置为 Webhook,且 Webhook 链接为钉钉群机器人时,您可按需勾选任务告警时,是否 @ 任务相关责任人。 注意 告警接受任务责任人对应的火山引擎账号,需在火山引擎 - 账号管理 中绑定相应手机号,且该手机号必须与钉钉账号绑定的手机号一致,方可正常接收告警 @ 信息。 |
发送次数 | 普通的报警形式,您可自定义报警发送次数。 说明 准实时任务监控规则不支持设定告警发送次数。 |
发送间隔 | 每次报警消息发送的时间间隔,以 min 为时间单位。 说明 准实时任务监控规则不支持设定告警发送间隔。 |
免打扰时段 |
|
规则配置完成后,点击右上角提交按钮,即新建监控规则完成。
您可以在监控规则界面,进行监控规则的筛选、编辑、删除等操作:
在任务开发的不同阶段,可按需对该任务进行监控规则设置,具体操作入口如下:
具体离线任务监控规则配置详见1 新建监控规则。
为快速配置任务运行保底监控,使任务不至于处于裸跑状态,项目设置中推出默认监控设置。一旦启用,新任务上线时,将自动使用已设置的默认监控规则。 默认监控规则分为两大类,分别是默认监控规则和离线自定义监控规则。
下文将为您介绍离线任务监控规则,通过 Webhook 方式,发起请求示例及相关字段说明。
{ "taskId": 123456, "instanceId": 123456, "projectId": 123456, "taskName": "t1", "taskTime": "2020-03-01 00:00:00", "instanceStatus": 1, "region": "cn", "alarmRuleType": 1, "scheduleRunTime": "2020-03-01 00:00:00", "startTime": "2020-03-01 00:00:00", "endTime": "2020-03-01 01:00:00", "businessId":"xxxxxxxx", "triggerTypeAlias":"", "triggerId": 1, "triggerType": 10, "retryCount": 1 }
字段名 | 类型 | 说明 |
---|---|---|
taskId | Long | 任务ID |
instanceId | Long | 实例ID |
projectId | Long | 项目ID |
taskName | String | 任务名称 |
taskTime | String | 业务时间 |
Integer | 详见下方-4.4 实例状态说明 | |
region | String | 取值:cn-beijing,cn-shanghai |
Integer | 详见下方-4.3 报警项类型说明 | |
scheduleRunTime | String | 设定的运行时间 |
startTime | String | 开始运行时间 |
endTime | String | 结束运行时间 |
businessId | String | 实例 businessId |
triggerTypeAlias | String | 任务调度类型 |
triggerId | Long | 实例Trigger Id |
triggerType | Integer | 实例Trigger 类型(例行,重跑等) |
retryCount | Integer | 第几次重试 |
报警项 ID | 说明 |
---|---|
1 | every_failed,即每一次失败均发送告警。 |
2 | success,实例运行成功发送告警。 |
3 | running_timeout,实例运行时间超过设定阈值时告警。 |
4 | retry_failed,实例重试结束仍失败后发送告警。 |
5 | failed_from_n_times,从第 N 次重试执行失败后告警。 |
6 | latest_not_start,实例超过设定的执行时间还未开始执行时告警。 |
7 | latest_not_end,实例超过设定时间未运行结束时发送告警。 |
8 | latest_not_success,实例超过设定时间未运行成功时发送告警。 |
9 | fixed_time_not_success,实例超过设定的截止时间未运行成功时发送告警。 |
实例状态码 | 说明 |
---|---|
1 | 未就绪 |
2 | 等待执行 |
3 | 运行中 |
4 | 成功 |
5 | 失败 |
6 | 终止 |
7 | 终止状态(会重试) |
8 | 真正终态,不会再更新的状态 |
30 | 提交前 |
-1 | 非终止状态(未完成) |
num | alias | 说明 |
---|---|---|
1 | system | 系统调度 |
2 | manual | 手动调度 |
10 | rerun | 实例重跑 |
11 | backfill | 回溯 |
13 | debug | 任务调试 |
14 | query | 临时查询 |
16 | backfill_split | 回溯:下游分批执行 |