ConsumerGroup是一个消费者组,包含多个Consumer,每个Consumer消费Logstore中的一部分Shard。

Shard的数据模型可以简单理解成一个队列,新写入的数据被加到队尾,队列中的每条数据都会对应一个数据写入时间,下图是Shard的数据模型。
图 1. Shard数据模型

shard数据模型

协同消费延迟报警中的基本概念:

  • 消费过程:消费者从队头开始顺序读取数据的过程。
  • 消费进度:消费者当前读取的数据对应的写入时间。
  • 消费落后时长:当前消费进度和队列中最新的数据写入时间的差值,单位为秒。

ConsumerGroup的消费落后时长取其包含的所有Shard的消费落后时长的最大值,当超过用户预设阈值时,就认为消费落后太多,触发报警。

操作步骤

  1. 登录日志服务控制台,单击需要监控的Logstore后的日志库图标图标,选择监控进入云监控控制台。
  2. 单击消费落后时长图表,查看消费落后时长。
    图 2. 消费落后时长图表

    消费落后时长
    下图展示了Logstore下所有ConsumerGroup的消费落后时长,单位为秒。框中图例是所有的 ConsumerGroup,
    图 2. 查看消费落后时长

    查看消费落后时长
  3. 单击右上角创建报警规则进入规则创建页面。
  4. 创建针对 ConsumerGroup spamdetector-report-c 的报警规则,5分钟内只要有一次延迟大于等于600秒就会报警。设置生效时间和报警通知联系人,保存规则。
    图 4. 设置报警规则

    设置报警规则

    上面的操作完成后便成功创建了报警规则。有关报警规则配置的任何问题,请提工单到云监控。