实时同步任务告警设置最佳实践

对于DataWorks数据集成的实时同步任务、全增量同步任务的实时同步阶段,您可以设置任务告警规则,用来监控同步任务的状态,本文为您介绍实时同步任务告警设置的指标有哪些,并为您示例一个最佳实践。

告警规则指标

您可以在DataWorks的运维中心对实时同步任务设置报警规则,其中包含的报警指标包括:任务状态、业务延迟、Failover、DDL不支持、DDL通知、脏数据。报警指标

指标1:任务状态

指标报警场景

配置建议

任务状态告警指标通过任务心跳状态来判断实时同步任务是否异常。

  • 建议所有重要实时同步任务均配置。

  • 建议告警阈值不小于3分钟,防止由于网络抖动或其他瞬时异常导致的误报警。

指标2:业务延迟

报警监控原理与适用场景

配置建议

实时同步业务延迟指标告警,用于判断同步任务正常运行时同步速率是否能满足源端数据生产速率。其基本原理为数据处理时间与数据在源端生产时间差。

  • 此告警指标为核心告警指标,建议所有重要实时同步任务(Kafka源端实时同步任务建议使用消息堆积量指标监控)均配置。

  • 告警阈值根据业务实际需要设置,建议告警阈值为分钟级别,防止由于网络抖动或源端数据峰值造成的误报警。

指标3:消息堆积量(仅Kafka源)

报警监控原理与适用场景

配置建议

本指标仅可见于kafka源端实时同步任务。同步任务运行时通过对比Kafka源端Offset和消费记录Offset获取Kafka数据消费延迟数据量。

建议Kafka源端重要实时同步任务配置均配置。

指标4:Failover

报警监控原理与适用场景

配置建议

Failover指标是指当实时同步进程发生异常退出时,为提升进程可靠性,数据集成控制服务会重新拉起进程尝试恢复失败退出同步进程,进而提升同步进程可靠性。

如果关注任务Failover信息,可以配置Failover指标告警,感知同步程序是否存在异常频繁发生Failover。

指标5:DDL不支持(即将下线)

报警监控原理与适用场景

配置建议

数据集成实时同步支持部分源端DDL事件,对于不支持的DDL事件可以在DDL配置页面设置Ignore、Warning、Critical等DDL处理策略。当发生Warning、Critical级别DDL事件时,可以设置DDL不支持指标发送告警。

此监控指标处于待下线状态,您可以通过DDL通知指标满足类似报警需求,DDL通知指标告警包含此项功能。

指标6:DDL通知

报警监控原理与适用场景

配置建议

DDL通知指标监控支持设置DDL类型(与DDL处理策略解耦),当监控的DDL事件发生时发送对应告警。

功能包含DDL不支持类型告警功能,DDL类型监控告警场景推荐使用此告警设置。

指标7:脏数据

报警监控原理与适用场景

配置建议

实时同步过程中当数据写入目标端失败时,此条数据会被归类为脏数据。当用户需要感知脏数据发生时,可设置此监控指标。

  • 默认实时同步任务不容忍脏数据,不需要设置脏数据指标告警。仅当实时任务重启脏数据策略改为容忍脏数据,用户需要感知脏数据发生时,设置此监控指标。

  • 修改脏数据策略会导致写入失败数据被舍弃,目标端数据与源端数据不一致,除非有明确原因不建议修改。

告警接收方式

DataWorks对实时同步任务设置告警时支持一些告警接收方式:邮件、短信、电话、钉钉、webhook。

邮件

告警信息以邮件形式向接收人邮箱发送,接收人邮箱在DataWorks管控台报警联系人页面设置。如果接收人没有设置邮箱会升级到对应主账号邮箱发送。

说明

查看告警邮件时,您需要确认相关告警邮件没有被归类到垃圾邮件分类中。

短信

告警信息以短信形式向接收人手机号码发送,接收人手机号在DataWorks管控台报警联系人页面设置。如果接收人没有设置手机号码会升级到对应主账号手机号码发送。

电话

告警信息以语音电话形式向接收人手机号码发送,接收人手机号在DataWorks管控台报警联系人页面设置。如果接收人没有设置手机号码会升级到对应主账号手机号码发送。

说明

电话告警不支持海外地域。建议重要级别告警配置电话告警。

钉钉

告警信息以文本形式通过钉钉自定义机器人向指定钉钉群发送。钉钉群机器人Token输入框填写自定义机器人token,多个token使用逗号分隔。同时您可以启用钉钉群通知@所有人功能避免群内消息过多告警信息被忽略。

重要

钉钉群添加自定义机器人后,需要设置自定义关键字(不支持同时设置其他过滤规则),必须添加DataWorks为关键词,注意区分大小写,否则无法收到告警通知。发送报警至钉钉机器人操作实践内容请参见下文的场景实践:发送报警消息至钉钉群

webhook

告警信息以文本形式向指定web地址发送。WebHook地址输入框填写对接产品的webhook,多个webhook使用逗号分隔。

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

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

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

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

添加钉钉机器人并获取Token

说明

不同版本的钉钉操作细节步骤可能不一致,以下步骤为一个简单示例。

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

  2. 单击智能群助手

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

  4. 群机器人页面,单击添加机器人

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

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

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

    参数

    描述

    机器人名字

    自定义机器人的名称。

    添加到群组

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

    自定义关键词

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

    说明

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

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

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

    重要

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

添加报警规则

  1. 进入实时同步任务的报警设置页面。

    登录DataWorks控制台,在运维中心实时同步任务页面找到要设置告警的同步任务,单击操作列的报警设置,进入报警设置页面。报警设置

    • 报警事件页面:可以查看已发送报警的事件。

    • 报警规则页面:可以查看已经设置的报警规则、设置新的报警规则。

  2. 单击报警规则进入报警规则设置页签,单击新建规则

  3. 配置报警规则。

    根据界面提示配置报警规则的名称、描述等内容。本实践以发送报警至钉钉群为例,核心配置项如下。

    • WARNINGCRITICAL:选择钉钉

    • 钉钉群机器人Token:填写钉钉机器人的Token。

    • 钉钉群通知@所有人:勾选启用

    重要
    • 报警规则置完成后,告警项自动启动。

    • 实际使用时,建议组合配置以下两个报警指标:

      • 通过任务状态指标监控任务是否正常运行。

      • 通过业务延迟消息堆积量指标监控同步速率是否能满源端数据产生速率。

验证告警规则配置是否正确

添加完成报警规则后,您可以在报警规则页面单击模拟测试验证配置结果是否正确。