配置监控告警

实时计算Flink版支持使用云监控(免费监控服务)或ARMS提供监控报警服务,配置作业指标监控告警、作业事件监控告警以及工作流告警,便于您及时发现并处理异常。本文为您介绍使用不同监控服务时如何配置监控告警。

使用限制

  • 部署时提交至Session集群的Flink作业不支持配置监控告警。

  • 批作业暂不支持配置监控告警。

配置引导

支持在云监控、ARMS或实时计算开发控制台进行配置,根据您工作空间使用的监控服务类型具体配置如下:

  • 使用免费监控服务(云监控)时,您需要在云监控控制台进行指标和事件告警配置。

    • 直接在云监控控制台配置指标告警,支持单个作业和批量告警配置,详情参见云监控指标告警配置

    • 直接在云监控控制台配置事件告警,支持作业和工作流事件告警配置,详情请参见云监控事件告警配置

    • 在实时计算开发控制台通过链接跳转到云监控控制台进行配置,跳转后会自动关联当前工作空间,详情请参见使用云监控

  • 使用ARMS监控服务时,可以在ARMS、云监控、实时计算开发控制台进行配置。

    • 可以在实时计算开发控制台对单个作业配置指标告警(支持6个监控指标,详情请参见使用ARMS配置指标告警),以及单个作业失败告警(详情请参见使用ARMS配置事件告警)。

    • 可以在ARMS控制台通过静态阈值和PromQL语法自定义配置,支持单个作业和批量告警配置,详情请参见ARMS指标告警配置

    • 可以在云监控控制台配置作业事件告警(仅支持ECS宕机事后处理和ECS主动运维影响事件)和工作流事件告警,详情请参见云监控事件告警配置,暂不支持其他事件告警配置。

配置指标告警

云监控控制台

使用免费监控服务(云监控)时,您可以直接在云监控控制台进行单个作业和批量告警配置。

重要

仅购买该工作空间的主账号,以及该主账号下具有项目空间权限的RAM用户和RAM角色,可以在云监控上配置告警。

单个作业配置

  1. 登录云监控控制台

  2. 在左侧导航栏,选择报警服务 > 报警规则

  3. 单击创建报警规则,配置相关参数。

    参数

    说明

    产品

    实时计算Flink

    资源范围

    选择实例,报警规则作用于实时计算Flink版指定工作空间。

    关联资源

    单击添加实例,选择目标地域下的工作空间后(如何查看工作空间ID等信息?),单击确认

    规则描述

    单击添加规则 > 简单指标组合指标,进入设置规则描述面板。

    image

    其中,在维度部分,您可以配置namespace(Flink项目空间名称)和deploymentID(对应Flink作业部署详情页签的部署作业ID),指定需要监控的作业。

    说明

    namespacedeploymentID下拉列表无数据时,您可以手动填写。

    其他参数详情请参见创建报警规则

  4. 单击确认

作业批量配置

  1. 登录云监控控制台

  2. 在左侧导航栏,选择报警服务 > 报警规则

  3. 单击创建报警规则,配置相关参数。

    参数

    说明

    产品

    实时计算Flink

    资源范围

    • 全部资源:报警规则作用于实时计算Flink版全部资源。

    • 实例:报警规则作用于实时计算Flink版指定工作空间。单击添加实例,选择目标地域下的工作空间后,单击确认

    规则描述

    单击添加规则 > 简单指标组合指标,进入设置规则描述面板。

    其中,在维度部分,您可以配置namespace(Flink项目空间名称)和deploymentID(对应Flink作业部署详情页签的部署作业ID)。当仅填写namespace时表示对当前项目空间下所有作业生效,当均不填写时表示对当前工作空间下所有作业生效。

    说明

    namespacedeploymentID下拉列表无数据时,您可以手动填写。

    其他参数详情请参见创建报警规则

  4. 单击确认

实时计算开发控制台

  • 工作空间使用ARMS:支持直接在实时计算开发控制台进行单个作业告警配置(支持6个监控指标),详情请参见使用ARMS

    说明

    实时计算开发控制台仅支持查看近48小时内告警事件,更长时间的告警事件请在ARMS控制台告警管理中查看。

  • 工作空间使用云监控:暂不支持直接在实时计算开发控制台配置,但实时计算开发控制台提供了跳转链接,以便您跳转到云监控控制台进行配置,详情请参见使用云监控

使用ARMS

您可以针对目标作业创建新的告警规则,也可以在创建告警规则模板后,直接使用已有规则模板为目标作业创建告警,加快配置监控告警的效率。

  1. 进入告警配置入口。

    1. 登录实时计算控制台,单击目标工作空间操作列下的控制台

    2. 运维中心 > 作业运维页面,单击目标作业名称。

    3. 单击告警配置页签。

  2. 告警规则页签,选择添加告警规则 > 自定义规则

    您也可以选择添加告警规则 > 规则模板,通过添加并使用告警模板,可以直接创建告警规则或基于模板进行简单修改后创建告警规则,加快配置监控告警的效率。

  3. 填写告警规则信息。

    类别

    参数

    描述

    具体规则

    规则名称

    以字母开头,仅包含小写英文字母、数字、下划线(_),长度限制为3~64个字符。

    描述

    规则的备注信息。

    内容

    配置触发报警的条件内容,配置完成后会每间隔指定时间,对指定的指标值与阈值进行计算比较,计算结果满足则自动报警。

    • 指标

      • Restart Count in 1 Minute:1分钟内Job Manager重启次数,单位为次。

      • Checkpoint Count in 5 Minutes:5分钟内Checkpoint成功次数,单位为个。

      • Emit Delay:业务延时,即数据发生时间与数据离开Source算子的时间差值,单位为秒。

        重要

        数据发生时间依赖于外部系统中记录的时间戳。如果外部系统里面没时间戳,或者数据写入外部系统时,乱写时间戳,则Emit Delay数值不准确,无法反映真实延时。

      • IN RPS:每秒输入记录数,单位为条/秒。

      • OUT RPS:每秒输出记录数,单位为条/秒。

      • Source Idle Time:源端未处理数据的时间,单位为毫秒。

    • 时间差:每分钟查询最近时间差分钟内的数据,并与阈值比较。如果历史数据中满足条件,则会触发告警规则。

    • 运算符:支持>=<=两种。

    • 阈值:与指标进行比较的值。

      • 如果您选择的运算符是>= ,则取纵轴中的MAX值。如果时间差内最大值>=阈值,则触发告警规则。

      • 如果您选择的运算符是<= ,则取纵轴中的MIN值。如果时间差内最小值<= 阈值,则触发告警规则。

    例如,配置时间差为5分钟,选择运算符<=,阈值为2。则每次取指标值的历史5分钟的纵轴数据,将其最小值与阈值进行比较,小于等于阈值则触发告警。

    生效时间

    告警监控的生效时间,可以指定只在白天(9点~18点)生效,默认全天生效。

    告警频率

    连续多少分钟内只发一次告警。支持1分钟~1440分钟(24小时)。

    通知方式

    通知方式

    支持选择多个通知方式。支持的通知方式如下:

    • DingTalk:钉钉。

    • Email:邮件。

    • SMS:短信。

    • Webhook:网络服务地址。

    • Phone:电话。

      需确保接收人电话已完成验证,否则无法生效。您可以单击下方的通知对象管理,若联系人页签中目标联系人电话列存在未验证标识,需单击完成验证。

      image

    重要
    • 请确保已创建并添加可用的通知对象,否则将导致告警通知方式失败。例如,选择钉钉通知方式时,请选中DingTalk并添加钉钉机器人类型的钉钉通知对象。

    • 告警管理的收费详情请参见告警计费说明

    通知对象

    支持同时通知多个通知对象,您可以直接选择或搜索通知对象。在选择通知对象前,您需要单击右侧的通知对象管理创建通知对象,详情请参见空间管理与操作

    告警降噪

    单击高级配置后,您可以打开告警降噪开关。

    打开告警降噪开关后,对于作业可以快速恢复的场景(因集群调度或触发自动调优等场景触发的短期的Failover)则不会向您发送告警,只有连续达到您设置的阈值条件时,才会向您发送告警。

    无数据告警

    单击高级配置后,您可以打开无数据告警开关并填写连续无数据的时间信息。

    打开该功能后,将监测无监控埋点数据汇报场景,如果数据在选择时间段内没有汇报就会触发告警。通常JobManager异常、作业异常停止或者汇报链路异常会导致无监控埋点数据汇报。

  4. 单击确定

    保存后的告警规则默认已启用,且出现在告警规则列表中,您可以选择停止、编辑或删除。

使用云监控

  1. 登录实时计算控制台,单击目标工作空间操作列下的控制台

  2. 运维中心 > 作业运维页面,单击目标作业名称。

  3. 监控告警页签,单击订阅指标告警,可以跳转到云监控控制台完成相关配置,具体参数配置详情请参见云监控控制台

    image

ARMS控制台

工作空间使用ARMS监控服务时,您可以直接在ARMS控制台通过静态阈值和PromQL语法自定义配置,支持单个作业和批量告警配置。

说明

使用RAM用户、RAM角色等身份访问时,需要具有访问应用实时监控服务权限,详情请参见访问控制概述

单个作业配置

  1. 登录实时计算控制台

  2. 单击目标工作空间操作列下的更多 > 监控指标配置,进入应用实时监控服务ARMS控制台。

    上方展示了工作空间名称、工作空间ID,以及对应的Prometheus实例名称。

    image.png

  3. 单击左侧的告警规则,创建告警规则。

    image

    • 检测类型:支持通过静态阈值和自定义PromQL进行指标告警(Flink已支持的告警指标除外)。

    • 筛选条件:命名空间填写项目空间名称;部署作业填写项目空间下目标作业的部署作业ID(在Flink作业部署详情页签查看),选择等于时,对指定作业进行监控告警。

    更多配置参数详情请参见创建Prometheus告警规则

作业批量配置

  1. 登录实时计算控制台

  2. 单击目标工作空间操作列下的更多 > 监控指标配置,进入应用实时监控服务ARMS控制台。

    上方展示了工作空间名称、工作空间ID,以及对应的Prometheus实例名称。

    image.png

  3. 单击左侧的告警规则,创建告警规则。

    image

    • 检测类型:支持通过静态阈值和自定义PromQL进行指标告警(Flink已支持的告警指标除外)。

    • 筛选条件:支持批量告警配置。命名空间填写项目空间名称,选择全部时表示工作空间下全部项目空间;部署作业填写项目空间下目标作业的部署作业ID(在Flink作业部署详情页签查看),选择全部时表示项目空间下的全部作业。

    更多配置参数详情请参见创建Prometheus告警规则。您也可以创建Prometheus告警规则模板,详情请参见创建Prometheus告警规则模板

配置事件告警(含工作流)

云监控控制台

重要

仅购买该工作空间的主账号,以及该主账号下具有项目空间权限的RAM用户和RAM角色,可以在云监控上配置告警或订阅事件。

  • 工作空间使用云监控:支持在云监控控制台进行作业失败、ECS宕机事后处理、ECS主动运维影响和工作流事件告警配置。

  • 工作空间使用ARMS:仅支持在云监控控制台配置ECS宕机事后处理和ECS主动运维影响事件告警,以及作业流事件告警。

作业事件告警

通过配置条件来订阅作业的系统事件告警,支持事件批量告警配置。

  1. 登录云监控控制台

  2. 在左侧导航栏,选择事件中心 > 事件订阅

  3. 订阅策略页签,单击创建订阅策略

  4. 创建订阅策略页面,配置相关参数,参数详情请参见管理事件订阅(推荐)

    image

    • 订阅类型:系统事件

    • 产品:选择实时计算Flink

    • 事件名称:支持作业运行失败(使用ARMS监控服务时不支持)、ECS宕机事后处理ECS主动运维影响事件。目前作业运行失败事件仅支持严重(Critical)事件等级。 

    • 事件内容:可以在事件内容中通过填写如下Flink信息进行指定作业批量告警

      • 工作空间ID:对目标工作空间下所有项目空间的所有作业进行事件告警。工作空间ID查看请参见如何查看工作空间ID等信息?

      • 项目空间名称:对目标项目空间下所有作业进行事件告警。

      • 部署作业名称:对指定作业进行事件告警,多个作业时使用英文逗号(,)分隔。需要注意账号下是否存在重名作业,若存在重名作业请使用DeploymentID。

      • DeploymentID:对指定作业进行事件告警,多个作业时使用英文逗号(,)分隔。可在Flink作业部署详情页签的部署作业ID查看。

    说明

    应用分组事件内容事件资源均不设置时,表示订阅范围对本账号内所有工作空间生效。

工作流事件告警

通过配置条件来订阅Flink工作流的系统事件告警,支持事件批量告警配置,工作流详情请参见管理工作流

  1. 获取工作流节点的资源ID。

    1. 登录云监控控制台

    2. 在左侧导航栏,选择事件中心 > 系统事件

    3. 事件监控页签,产品选择实时计算Flink、事件名称选择工作流任务状态变化,单击搜索

    4. 在下面筛选出工作流节点的资源ID。

      工作流告警_cn.png

      资源格式为acs:flink:cn-hangzhou:<阿里云账号Id>:resourceId/workspaceId/<workspaceId-namespaceId>#workflowDefinitionName/<workflowDefinitionName>#taskDefinitionName/<taskDefinitionName>,您也可以使用这个格式直接拼接您的工作流节点的资源ID。

      参数

      说明

      <workspace阿里云账号Id>

      开通Flink工作空间的阿里云账号ID。

      <workspaceId-namespaceId>

      由"-"字符拼接workspaceIdnamespaceId组成。

      workspaceId:工作空间ID,详情请参见空间管理与操作

      namespaceId: 项目空间名称。

      <workflowDefinitionName>

      工作流名称。

      <taskDefinitionName>

      工作流节点名称。

      说明

      云监控中工作流的状态变更事件显示通常会存在几分钟的延迟。

  2. 订阅事件通知。

    1. 在左侧导航栏,选择事件中心 > 事件订阅

    2. 订阅策略页签,单击创建订阅策略

    3. 创建订阅策略页面,设置订阅策略的相关参数,参数详情请参见管理事件订阅(推荐)

      • 订阅类型:系统事件

      • 产品:选择实时计算Flink

      • 事件名称:选择工作流任务状态变化

      • 事件内容:支持填写toState: FAILED(工作流状态失败)、toState: SUCCESS(工作流状态成功)、fromState: SCHEDULED, toState: RUNNING(工作流状态从等待调度,到运行中的参数)。

      • 事件资源:输入步骤1中获取到的工作流的资源ID,多个时使用英文逗号(,)分隔。

      • 事件类型、事件等级、应用分组:均不设置。

实时计算开发控制台

  • 工作空间使用ARMS:支持直接在实时计算控制台对单个作业配置作业失败事件告警,详情请参见使用ARMS

    说明

    Flink控制台仅支持查看近48小时内告警事件,更长时间的告警事件请在ARMS控制台告警管理中查看。

  • 工作空间使用云监控:暂不支持直接在实时计算开发控制台配置,但实时计算开发控制台提供了跳转链接,以便您跳转到云监控控制台进行配置,详情请参见使用云监控

使用ARMS

  1. 进入告警配置入口。

    1. 登录实时计算控制台,单击目标工作空间操作列下的控制台

    2. 运维中心 > 作业运维页面,单击目标作业名称。

    3. 单击告警配置页签。

  2. 告警规则页签,选择添加告警规则 > 自定义规则

    您也可以选择添加告警规则 > 规则模板,通过添加并使用告警模板,可以直接创建告警规则或基于模板进行简单修改后创建告警规则,加快配置监控告警的效率。

  3. 填写告警规则信息。

    类别

    参数

    描述

    具体规则

    规则名称

    以字母开头,仅包含小写英文字母、数字、下划线(_),长度限制为3~64个字符。

    描述

    规则的备注信息。

    内容

    选择Job Failed(作业失败)指标。

    生效时间

    告警监控的生效时间,可以指定只在白天(9点~18点)生效,默认全天生效。

    告警频率

    连续多少分钟内只发一次告警。支持1分钟~1440分钟(24小时)。

    通知方式

    通知方式

    支持选择多个通知方式。支持的通知方式如下:

    • DingTalk:钉钉。

    • Email:邮件。

    • SMS:短信。

    • Webhook:网络服务地址。

    • Phone:电话。

      需确保接收人电话已完成验证,否则无法生效。您可以单击下方的通知对象管理,若联系人页签中目标联系人电话列存在未验证标识,需单击完成验证。

      image

    重要
    • 请确保已创建并添加可用的通知对象,否则将导致告警通知方式失败。例如,选择钉钉通知方式时,请选中DingTalk并添加钉钉机器人类型的钉钉通知对象。

    • 告警管理的收费详情请参见告警计费说明

    通知对象

    支持同时通知多个通知对象,您可以直接选择或搜索通知对象。在选择通知对象前,您需要单击右侧的通知对象管理创建通知对象,详情请参见空间管理与操作

  4. 单击确定

    保存后的告警规则默认已启用,且出现在告警规则列表中,您可以选择停止、编辑或删除。

使用云监控

  1. 登录实时计算控制台,单击目标工作空间操作列下的控制台

  2. 运维中心 > 作业运维页面,单击目标作业名称。

  3. 监控告警页签,单击订阅事件告警,可以跳转到云监控控制台完成相关配置,具体参数配置详情请参见云监控控制台

    image

ARMS控制台

工作空间使用ARMS监控服务时,暂不支持直接在ARMS控制台配置事件告警,您可以:

  • 在云监控控制台配置事件告警,仅支持ECS宕机事后处理、ECS主动运维影响事件、工作流事件,详情请参见云监控控制台

  • 在实时计算控制台配置作业运行失败告警,详情请参见实时计算开发控制台

常见问题

如何确认工作空间使用的监控服务类型

监控服务类型是您在开通工作空间时进行选择。开通后,在运维中心 > 作业运维页面,单击目标作业名称,如果存在告警配置页签,则工作空间使用的是按量付费 Prometheus 监控服务(ARMS)监控服务类型,不存在则使用的是免费监控服务(云监控)类型。不同类型的监控告警配置操作详情请参见配置引导

image

如何在实时计算开发控制台添加钉钉机器人告警

  1. 添加一个自定义钉钉机器人,并获取它的Webhook地址,详情请参见添加自定义钉钉机器人并获取Webhook地址

    重要

    安全设置请至少选中自定义关键词,且关键词至少设置为报警才能收到告警信息。

  2. 添加通知对象。

    1. 运维中心 > 作业运维页面,单击目标作业名称,单击告警配置页签。

    2. 选择添加告警规则 > 自定义规则规则模板

    3. 创建规则创建告警规则模板信息页面,单击通知对象管理

      image.png

  3. 钉钉机器人页签,单击添加钉钉机器人

    输入钉钉机器人的名称地址,单击提交

  4. 返回步骤2创建规则创建告警规则模板信息页面,通知方式选择DingTalk通知对象选择对应的钉钉机器人。

    告警规则中的其他参数说明请参见实时计算开发控制台告警配置

  5. 单击确定

如何在实时计算开发控制台新建Webhook

  1. 告警模板或者规则信息页面,单击通知对象管理

  2. Webhook页签,单击新建Webhook

  3. 新建Webhook页面,输入Webhook信息。

    参数

    说明

    名称

    必填,Webhook名称。

    URL

    必填,网络服务地址。

    Headers

    可选,请求头,用来存放cookietoken信息。格式为key: value

    说明

    请确保keyvalue的冒号后存在空格分隔符。

    Params

    可选,请求参数,格式为key: value

    说明

    请确保keyvalue的冒号后存在空格分隔符。

    Body

    必填,请求体,用来存放POST的参数和参数数据。

    您可以在Body字符串中使用$content占位符输出报警内容。

  4. 单击确定

如何在实时计算开发控制台添加飞书机器人告警

  1. 告警模板或者规则信息页面,单击通知对象管理

  2. Webhook页签,单击新建Webhook

  3. 新建Webhook页面,输入Webhook信息。

    参数

    说明

    名称

    必填,Webhook名称。

    URL

    必填,网络服务地址。参数详情请参见飞书自定义机器人使用指南获取飞书机器人的Webhook地址。

    Headers

    可选,请求头,用来存放cookietoken信息。格式为key: value

    例如:Arms-Content-Type: json

    Content-Type: application/json

    说明

    请确保keyvalue的冒号后存在空格分隔符。

    Params

    可选,请求参数,格式为key: value

    说明

    请确保keyvalue的冒号后存在空格分隔符。

    Body

    必填,请求体,用来存放POST的参数和参数数据。

    您可以在Body字符串中使用$content占位符输出报警内容。

    例如:{"msg_type":"text","content": {"text":"$content"}}

  4. 单击确定

相关文档

  • 实时计算Flink版支持选择云监控(免费监控服务)或ARMS可观测监控Prometheus版监控服务为您提供作业监控告警功能,功能、费用等对比详情请参见云监控与ARMS告警服务功能对比

  • ARMS支持静默策略、告警升级及排班等功能配置,详情请参见静默策略升级策略相关实践教程

  • 云监控支持通过钉钉群、飞书群等接收报警通知,配置方法详情请参见报警通知方式

  • 支持的监控指标详情请参见监控指标说明

  • 您可以关闭监控告警或废弃具体指标(使用ARMS监控告警时),以节省费用,后续有需要时可以重新恢复指标采集,具体操作请参见废弃或恢复监控指标