You need to enable JavaScript to run this app.
导航

推荐设置的告警规则

最近更新时间2024.04.19 11:50:05

首次发布时间2023.09.13 14:24:30

消息队列 RocketMQ版支持配置云监控告警规则,帮助您实时关注实例的运行状态。本文档介绍典型场景下的告警规则配置示例,建议参考这些推荐的告警策略,配置监控指标的告警规则。

实例维度

实例总 TPS 达规格峰值85%

  • 告警规则配置
    告警规则的核心配置如下。创建告警规则的操作步骤请参考设置告警规则

    配置

    取值

    维度

    实例

    触发条件

    • 监控指标:实例生产消费总速率
    • 持续周期:持续3个周期
    • 取值方式:最大值
    • 比较方式:>
    • 阈值:根据实例规格的 TPS 峰值 90%计算

    告警级别

    警告

    示例如下:
    图片

  • 处理建议

    • 如果是短暂的流量高峰,建议持续观察业务运行状态和资源水位。
    • 如果实例的总 TPS 峰值持续超出规格的 90%,建议及时升级实例规格。操作步骤请参考升级实例规格。处理后建议持续观测该指标,确认是否达到了预期效果。

实例磁盘容量使用率超过 75%

  • 告警规则配置
    告警规则的核心配置如下。创建告警规则的操作步骤请参考设置告警规则

    配置

    取值

    维度

    实例

    触发条件

    • 监控指标:实例磁盘使用率
    • 持续周期:持续3个周期
    • 取值方式:最大值
    • 比较方式:>
    • 阈值:75%

    告警级别

    通知

    示例如下:
    图片

  • 处理建议
    触发告警后,建议及时扩容实例磁盘。为了避免实例磁盘超限,建议及时扩容实例磁盘,增加存储空间。操作步骤请参考升级实例规格。处理后建议持续观测该指标,确认是否达到了预期效果。

实例 CPU 使用率超过 85%

  • 告警规则配置
    告警规则的核心配置如下。创建告警规则的操作步骤请参考设置告警规则

    配置

    取值

    维度

    实例

    触发条件

    • 监控指标:CPU使用率
    • 持续周期:持续5个周期
    • 取值方式:最大值
    • 比较方式:>
    • 阈值:85%

    告警级别

    警告

    示例如下:
    图片

  • 处理建议

    • 如果是短暂的业务高峰,建议持续观察业务运行状态和资源水位。
    • 检查实例是否已达到当前计算规格的各个阈值,例如 TPS 等。如果任意一项规格限制达到了计算规格的最大限制,则推荐升级实例规格,以便提高实例的各项处理性能。操作步骤请参考升级实例规格。处理后建议持续观测该指标,确认是否达到了预期效果。

实例内存使用率超过 95%

  • 告警规则配置
    告警规则的核心配置如下。创建告警规则的操作步骤请参考设置告警规则

    配置

    取值

    维度

    实例

    触发条件

    • 监控指标:内存使用率
    • 持续周期:持续5个周期
    • 取值方式:最大值
    • 比较方式:>
    • 阈值:95%

    告警级别

    警告

    示例如下:
    图片

  • 处理建议

    • 如果是短暂的业务高峰,建议持续观察业务运行状态和资源水位。
    • 检查实例是否已达到当前计算规格的各个阈值,例如 TPS 等。如果任意一项规格限制达到了计算规格的最大限制,则推荐升级实例规格,以便提高实例的各项处理性能。操作步骤请参考升级实例规格。处理后建议持续观测该指标,确认是否达到了预期效果。

实例连接数使用率超过 90%

  • 告警规则配置
    告警规则的核心配置如下。创建告警规则的操作步骤请参考设置告警规则

    配置

    取值

    维度

    实例

    触发条件

    • 监控指标:实例连接数使用率
    • 持续周期:持续3个周期
    • 取值方式:最大值
    • 比较方式:>
    • 阈值:90%

    告警级别

    警告

    示例如下:
    图片

  • 处理建议
    触发告警后,您可以通过以下方式处理。处理后建议持续观测该指标,确认是否达到了预期效果。

    • 合理设置连接数。触发告警后,建议根据业务需求合理设置 IP 连接数,清理空闲状态的连接。
    • 升级实例规格。如果连接数持续过高,建议升级实例规格,提高连接数的上限,以免业务高峰时的处理速度受连接数限制,影响生产或消费性能。操作步骤请参考升级实例规格
      处理后建议持续观测该指标,确认是否达到了预期效果。

实例剩余可用 Topic 数不足

  • 告警规则配置
    告警规则的核心配置如下。创建告警规则的操作步骤请参考设置告警规则

    配置

    取值

    维度

    实例

    触发条件

    • 监控指标:剩余可用Topic数
    • 持续周期:持续3个周期
    • 取值方式:最小值
    • 比较方式:<
    • 阈值:根据业务需求自行设置,推荐设置为 50。

    告警级别

    • 如果通常通过控制台创建 Topic,推荐设置为通知
    • 如果通常通过 OpenAPI 创建 Topic,推荐设置为警告

    示例如下:
    图片

  • 处理建议
    触发告警后,您可以通过以下方式处理。处理后建议持续观测该指标,确认是否达到了预期效果。

    • 清理闲置资源。检查是否存在未使用的闲置 Topic,如果有,建议及时清理。
    • 如果实例规格低于 medium,为了避免业务高峰时 Topic 数量不足影响实例的业务处理速度,建议提前升级实例规格,预留足够的 Topic 数量。操作步骤请参考升级实例规格。操作步骤请参考升级实例规格
    • 如果规格已经是 medium,且后续预计会有大量 Topic 接入,建议及时申请一个新的实例。

实例剩余可用 Group 数不足

  • 告警规则配置
    告警规则的核心配置如下。创建告警规则的操作步骤请参考设置告警规则

    配置

    取值

    维度

    实例

    触发条件

    • 监控指标:剩余可用Group数
    • 持续周期:持续3个周期
    • 取值方式:最小值
    • 比较方式:<
    • 阈值:根据业务需求自行设置,推荐设置为 50。

    告警级别

    • 如果通常通过控制台创建 Group,推荐设置为通知
    • 如果通常通过 OpenAPI 创建 Group,推荐设置为警告

    示例如下:
    图片

  • 处理建议
    触发告警后,您可以通过以下方式处理。处理后建议持续观测该指标,确认是否达到了预期效果。

    • 清理闲置资源。检查是否存在未使用的闲置 Group,如果有,建议及时清理。
    • 如果实例规格低于 medium,为了避免业务高峰时 Group 数量不足影响实例的业务处理速度,建议提前升级实例规格,预留足够的 Group 数量。操作步骤请参考升级实例规格
    • 如果规格已经是 medium,且后续预计会有大量 Group 接入,建议及时申请一个新的实例。

实例剩余可用队列数不足

  • 告警规则配置
    告警规则的核心配置如下。创建告警规则的操作步骤请参考设置告警规则

    配置

    取值

    维度

    实例

    触发条件

    • 监控指标:剩余可用队列数
    • 持续周期:持续3个周期
    • 取值方式:最小值
    • 比较方式:<
    • 阈值:根据业务需求自行设置,推荐设置为 100。

    告警级别

    • 如果通常通过控制台创建 Topic,推荐设置为通知
    • 如果通常通过 OpenAPI 创建 Topic,推荐设置为警告

    示例如下:
    图片

  • 处理建议
    触发告警后,您可以通过以下方式处理。处理后建议持续观测该指标,确认是否达到了预期效果。

    • 清理闲置资源。检查是否存在未使用的闲置 Topic,如果有,建议及时清理。清理 Topic 后会空余出部分队列资源。
    • 如果清理后仍旧触发此告警,则考虑升级实例规格。 为了避免业务高峰时队列数量不足影响实例的业务处理速度,建议提前升级实例规格,预留足够的队列数量。操作步骤请参考升级实例规格

实例连接数使用率过高

  • 告警规则配置
    告警规则的核心配置如下。创建告警规则的操作步骤请参考设置告警规则

    配置

    取值

    维度

    实例

    触发条件

    • 监控指标:实例连接数使用率
    • 持续周期:持续3个周期
    • 取值方式:最大值
    • 比较方式:>
    • 阈值:连接数使用率超过 90%

    告警级别

    警告

    示例如下:
    图片

  • 处理建议
    如果触发告警,表示实例连接数使用率较高。

    • 如果实例规格低于 medium,建议升级实例的计算规格,提高连接数上限。操作步骤请参考升级实例规格
    • 如果规格已经是 medium,且后续预计还会创建大量连接,建议及时申请一个新的实例,或复用连接。

实例消息生产 P99 耗时过高

  • 告警规则配置较高
    告警规则的核心配置如下。创建告警规则的操作步骤请参考设置告警规则

    配置

    取值

    维度

    实例

    触发条件

    • 监控指标:消息生产P99耗时
    • 持续周期:持续3个周期
    • 取值方式:最大值
    • 比较方式:>
    • 阈值:高于 500ms 触发告警

    告警级别

    警告

    示例如下:
    图片

  • 处理建议
    如果触发告警,表示实例生产请求的 P99 耗时较高,可以参考实例的生产流量速率判断:

    • 如果业务流量大,接近实例计算规格对应的读写能力上限,建议及时升级实例规格,提高业务流量支撑能力。
    • 如果业务流量不大,建议排查业务发送的消息体大小,判断是否因消息体过大等其他因素导致生产请求的 P99 耗时较高。

实例均衡状态

磁盘用量倾斜率超过 30%

  • 告警规则配置
    告警规则的核心配置如下。创建告警规则的操作步骤请参考设置告警规则

    配置

    取值

    维度

    实例均衡情况

    触发条件

    • 监控指标:磁盘倾斜率
    • 持续周期:持续3个周期
    • 取值方式:最大值
    • 比较方式:>
    • 阈值:大于 30% 则触发告警

    告警级别

    警告

    示例如下:
    图片

  • 处理建议
    如果触发告警,表示数据在各个节点磁盘上分布不均衡,部分节点磁盘使用率明显高于其他节点磁盘。建议通过以下方式处理:

    • 如果业务场景造成短暂的磁盘倾斜,建议暂不处理,持续观察业务运行状态和资源水位。
    • 如果此实例为升配不久的实例,建议持续观察,升配实例后可能有新的数据节点加入实例,此时磁盘倾斜为正常现象。
    • 如果磁盘倾斜率持续处于高位,建议观察并评估业务的数据写入逻辑是否合理,并尽量均衡写入数据到各个节点。

队列数倾斜率超过 1%

  • 告警规则配置
    告警规则的核心配置如下。创建告警规则的操作步骤请参考设置告警规则

    配置

    取值

    维度

    实例均衡情况

    触发条件

    • 监控指标:队列数倾斜率
    • 持续周期:持续3个周期
    • 取值方式:最大值
    • 比较方式:>
    • 阈值:大于 1% 则触发告警

    告警级别

    警告

    示例如下:
    图片

  • 处理建议
    如果触发告警,表示各个节点的队列数量差异较大,部分节点的队列数量明显高于其他节点。在生产环境中,应保证队列数在各个节点中数量均衡,如果存在不均衡的情况,可能导致数据流量同样不均衡,影响业务读写的效率。
    触发告警之后,建议找到队列数量较少的 Topic,通过设置队列数功能提高队列数量,并保证队列数是节点数量的整数倍,例如规格 rocketmq.n3.x2.medium 的计算节点数为 3,队列数建议设置为 3 的倍数,即 3、6、9 等。调整队列数量的操作步骤请参考设置队列数

生产速率倾斜率超过 30%

  • 告警规则配置
    告警规则的核心配置如下。创建告警规则的操作步骤请参考设置告警规则

    配置

    取值

    维度

    实例均衡情况

    触发条件

    • 监控指标:生产速率倾斜率
    • 持续周期:持续3个周期
    • 取值方式:最大值
    • 比较方式:>
    • 阈值:大于 30% 则触发告警

    告警级别

    警告

    示例如下:
    图片

  • 处理建议
    如果触发告警,表示部分节点消息生产速率明显高于其他节点。通常情况下,业务生产的消息通过轮询的方式发送到各个节点,所以各节点的生产速率都是均衡的。如果出现不均衡的情况,建议观察是否有顺序消息的情况,导致消息生产速率不均,并尽快调整业务消息发送逻辑,尽量保证流量均衡。

消费速率倾斜率超过 30%

  • 告警规则配置
    告警规则的核心配置如下。创建告警规则的操作步骤请参考设置告警规则

    配置

    取值

    维度

    实例均衡情况

    触发条件

    • 监控指标:消费速率倾斜率
    • 持续周期:持续3个周期
    • 取值方式:最大值
    • 比较方式:>
    • 阈值:大于 30% 则触发告警

    告警级别

    警告

    示例如下:
    图片

  • 处理建议
    如果触发告警,表示部分节点消息消费速率明显高于其他节点。通常情况下,各节点的消费速率都是均衡的,如果出现不均衡的情况,建议观察是否有顺序消息的情况,导致消息消费速率不均。

    • 在顺序消费场景,建议确认业务消息消费的逻辑,尽量保证流量均衡。
    • 其他场景下,建议观察业务的各个消费者是否均可正常消费,是否存在部分消费端消费失败、消费性能下降的情况。

节点最大磁盘使用率超过 75%

  • 告警规则配置
    告警规则的核心配置如下。创建告警规则的操作步骤请参考设置告警规则

    配置

    取值

    维度

    实例均衡情况

    触发条件

    • 监控指标:最大磁盘使用率
    • 持续周期:持续3个周期
    • 取值方式:最大值
    • 比较方式:>
    • 阈值:75%

    告警级别

    警告

    示例如下:
    图片

  • 处理建议
    触发告警后,您可以参考流量倾斜率指标,并通过以下方式处理告警。处理后建议持续观测该指标,确认是否达到了预期效果。

    • 确认业务流量是否均衡,流量是否集中指向某个节点,导致磁盘使用率过高。如果是,则需要业务侧判断是否符合预期,如果不符合业务预期,建议调整下消息写入,尽量均衡流量。
    • 如果流量基本不倾斜,触发告警后,为了避免实例磁盘超限,建议及时扩容实例磁盘,增加存储空间。操作步骤请参考升级实例规格

节点最大队列数过高

  • 告警规则配置
    告警规则的核心配置如下。创建告警规则的操作步骤请参考设置告警规则

    配置

    取值

    维度

    实例均衡情况

    触发条件

    • 监控指标:节点最大队列数
    • 持续周期:持续3个周期
    • 取值方式:最大值
    • 比较方式:>=
    • 阈值:根据实例规格来设置,micro 规格不高于 400,tiny 不高于 1000,small 不高于 2000, medium 不高于 4000

    告警级别

    警告

    示例如下:
    图片

  • 处理建议
    触发告警后,您可以通过以下方式处理告警。处理后建议持续观测该指标,确认是否达到了预期效果。

    • 如果节点队列数快超过单节点上限,建议及时升配实例,提高实例队列数量的上限。
    • 如果队列数在节点上分布不均衡,建议调整 Topic 的队列数量,保证每个 Topic 的队列数量均为实例节点数量的整数倍,从而保证队列数量在不同节点上都是均匀的。

节点最大生产速率过高

  • 告警规则配置
    告警规则的核心配置如下。创建告警规则的操作步骤请参考设置告警规则

    配置

    取值

    维度

    实例均衡情况

    触发条件

    • 监控指标:节点最大生产速率
    • 持续周期:持续3个周期
    • 取值方式:最大值
    • 比较方式:>=
    • 阈值:根据实例规格来设置,micro 规格不高于 2000,tiny 不高于 5000,small 不高于 10000, medium 不高于 20000

    告警级别

    警告

    示例如下:
    图片

  • 处理建议
    触发告警后,您可以通过以下方式处理告警。处理后建议持续观测该指标,确认是否达到了预期效果。

    • 如果是短暂的业务高峰,建议持续观察业务运行状态和资源水位。
    • 如果生产速率都持续较高,则建议升级实例规格,以提高实例的生产处理能力。
    • 观察生产速率倾斜率指标,如果存在生产速率在各节点不均衡的情况,需要观察是否有顺序消息的情况,导致消息生产速率不均,并调整业务侧消息发送的逻辑,尽量保证流量均衡。

节点最大消费速率过高

  • 告警规则配置
    告警规则的核心配置如下。创建告警规则的操作步骤请参考设置告警规则

    配置

    取值

    维度

    实例均衡情况

    触发条件

    • 监控指标:节点最大消费速率
    • 持续周期:持续3个周期
    • 取值方式:最大值
    • 比较方式:>=
    • 阈值:根据实例规格来设置,micro 规格不高于 2000,tiny 不高于 5000,small 不高于 10000, medium 不高于 20000

    告警级别

    警告

    示例如下:
    图片

  • 处理建议
    触发告警后,您可以通过以下方式处理告警。处理后建议持续观测该指标,确认是否达到了预期效果。

    • 如果是短暂的业务高峰,建议持续观察业务运行状态和资源水位。
    • 如果消费速率持续较大,建议升级实例规格,以提高实例的生产消费处理能力。

重试队列维度

重试 Topic 发送速率大于 1000

  • 告警规则配置
    告警规则的核心配置如下。创建告警规则的操作步骤请参考设置告警规则

    配置

    取值

    维度

    主题

    触发条件

    • 监控指标:重试Topic消息数
    • 持续周期:持续1个周期
    • 取值方式:最大值
    • 比较方式:>
    • 阈值:1000

    告警级别

    警告

    示例如下:
    图片

  • 处理建议
    触发告警后,建议及时排查业务消费处理是否出现问题,导致消息消费失败。处理后建议持续观测该指标,确认是否达到了预期效果。

死信队列维度

新增死信消息

  • 告警规则配置
    告警规则的核心配置如下。创建告警规则的操作步骤请参考设置告警规则

    配置

    取值

    维度

    死信队列

    触发条件

    • 监控指标:死信Topic消息数
    • 持续周期:持续1个周期
    • 取值方式:平均值
    • 比较方式:>=
    • 阈值:1

    告警级别

    严重

    示例如下:
    图片

  • 处理建议
    触发告警后,您可以通过以下方式处理。处理后建议持续观测该指标,确认是否达到了预期效果。

    • 重新投递死信消息,查看消息是否可以被正常消费。操作步骤请参考重新发送死信消息
    • 排查客户端消费失败的原因,避免后续再次出现消费失败的情况。

消费组维度

消息堆积

  • 告警规则配置
    告警规则的核心配置如下。创建告警规则的操作步骤请参考设置告警规则

    配置

    取值

    维度

    消费组

    触发条件

    • 监控指标:消费组消息堆积数
    • 持续周期:持续3个周期
    • 取值方式:最大值
    • 比较方式:>=
    • 阈值:建议根据业务需求自定义设置

    告警级别

    警告

    示例如下:
    图片

  • 处理建议
    触发告警后,您可以参考消费速率慢处理进行问题排查与处理。处理后建议持续观测该指标,确认是否达到了预期效果。

消息堆积时长过高

  • 告警规则配置
    告警规则的核心配置如下。创建告警规则的操作步骤请参考设置告警规则

    配置

    取值

    维度

    消费组

    触发条件

    • 监控指标:消息堆积时长
    • 持续周期:持续3个周期
    • 取值方式:最大值
    • 比较方式:>
    • 阈值:根据业务实际情况设置,但不要大于消息的保存时间

    告警级别

    警告

    示例如下:
    图片

  • 处理建议
    触发告警后,您可以通过以下方式处理。处理后建议持续观测该指标,确认是否达到了预期效果。

    • 如果消息堆积时间过长,典型原因为业务消费能力不足,建议业务侧提高消费速率。
    • 如果业务消息消费不完,且确认未消费的消息可以丢弃,建议重置消费进度。重置的操作步骤请参考重置消费位点