全部产品
Search
文档中心

实时计算Flink版:配置监控告警

更新时间:Sep 12, 2024

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

使用限制

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

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

配置引导

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

  • 使用ARMS监控服务时:

配置指标告警

云监控

重要

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

单个作业配置

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

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

  3. 监控告警页签,单击订阅指标告警,跳转到云监控控制台完成相关配置。

    image

  4. 在云监控控制台设置规则描述面板填写参数后,单击确定

    指标类型选择为简单指标组合指标,在维度部分,您可以选择namespace(Flink项目空间名称)和deploymentID(对应Flink作业部署详情页签的部署作业ID),指定需要监控的作业,其他参数详情请参见创建报警规则

    说明

    下拉列表仅显示有监控数据的namespace和deploymentID,无数据时您可以手动填写。

    image

  5. 创建报警规则面板,配置其他报警参数。

    通常资源范围实例已默认关联资源为当前作业对应工作空间ID(控制台操作),报警规则创建后,关联资源不可更改。其他参数详情请参见创建报警规则

  6. 单击确认

作业批量配置

  1. 登录云监控控制台

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

  3. 单击创建报警规则,配置相关参数,详情请参见创建报警规则

    参数

    说明

    产品

    实时计算Flink版

    资源范围

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

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

    规则描述

    单击添加规则 > 简单指标组合指标,进入设置规则描述面板,参数详情请参见创建报警规则

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

    说明

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

实时计算开发控制台

说明

实时计算开发控制台仅支持查看近48小时内告警事件,更长时间的告警事件请在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并添加钉钉机器人类型的钉钉通知对象。

    通知对象

    支持同时通知多个通知对象,您可以直接选择或搜索通知对象。在选择通知对象前,您需要先创建通知对象。

    具体操作为单击右侧的通知对象管理,然后分别在联系人组联系人Webhook钉钉机器人页签中,单击编辑后单击保存。添加钉钉机器人告警、新建Webhook以及飞书机器人告警,详情请参见常见问题

    告警降噪

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

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

    无数据告警

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

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

  4. 单击确定

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

ARMS

说明

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

单个作业配置

  1. 登录实时计算控制台

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

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

    image.png

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

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

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

    image

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

作业批量配置

  1. 登录实时计算控制台

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

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

    image.png

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

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

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

    image

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

配置事件告警

云监控

重要

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

作业事件告警

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

  1. 登录云监控控制台

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

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

  4. 创建订阅策略页面,配置相关参数。

    具体参数详情请参见管理事件订阅(推荐)

    • 订阅类型系统事件

    • 产品:选择实时计算Flink版

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

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

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

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

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

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

    说明

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

    image

工作流事件告警

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

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

    1. 登录云监控控制台

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

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

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

      工作流告警_cn.png

      资源格式为acs:flink:cn-hangzhou:<workspace阿里云账号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: FAILED:工作流状态失败。

          • toState: SUCCESS:工作流状态成功。

          • fromState: SCHEDULED, toState: RUNNING:工作流状态从等待调度,到运行中的参数。

        • 事件资源:输入步骤1中获取到的资源ID。

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

实时计算开发控制台

说明

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

目前实时计算控制台仅支持对单个作业配置作业失败事件告警。

  1. 进入告警配置入口。

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

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

    3. 单击告警配置页签。

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

    您也可以选择添加告警规则 > 规则模板,通过添加并使用事件告警模板,可以直接创建作业失败告警规则,加快配置监控告警的效率。

  3. 填写告警规则信息。

    类别

    参数

    描述

    具体规则

    规则名称

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

    描述

    规则的备注信息。

    内容

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

    生效时间

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

    告警频率

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

    通知方式

    通知方式

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

    • DingTalk:钉钉

    • Email:邮件

    • SMS:短信

    • Webhook:网络服务地址。

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

    重要

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

    通知对象

    支持同时通知多个通知对象,您可以直接选择或搜索通知对象。在选择通知对象前,您需要先创建通知对象。

    具体操作为单击右侧的通知对象管理,然后分别在联系人组联系人Webhook钉钉机器人页签中,单击编辑后单击保存。如何添加钉钉机器人告警或新建Webhook,详情请参见常见问题

  4. 单击确定

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

ARMS

当工作空间使用ARMS提供监控报警服务时,支持在云监控控制台订阅事件告警(仅支持ECS宕机事后处理和ECS主动运维影响事件,作业运行失败告警可参见实时计算开发控制台),详情请参见云监控

常见问题

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

  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

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

    说明

    请确保key与value的冒号后存在空格分隔符。

    Params

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

    说明

    请确保key与value的冒号后存在空格分隔符。

    Body

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

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

  4. 单击确定

相关文档

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

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

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

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

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