# 消费者组消费进度监控
aka. 消费者 Lag(Consumer Lag)
* 滞后成都:消费者当前落后于生产者的程度
* Lag 的单位:消息数
* Kafka 监控 Lag 的层级是 Partition
* 计算 Topic 级别的 Lag:需要自己汇总
* 如果 Consumer 速度无法匹及 Producer,会导致消费数据不在 OS 的 Page Cache,导致失去 Zero-copy 特性
* 最好的 Lag 应趋近于 0
* 因此,需要时刻关注消费进度
* 监控 Lag 的方法
* Kafka 自带的命令行工具 `kafka-consumer-groups` 脚本
* Kafka Java Consumer API
* Kafka 自带的 JMX 监控指标
## Kafka shell cmd
* 能够监控独立消费者(Standalone Consumer) Lag
* Standalone Consumer 调用 KafkaConsumer.assign() 直接消费指定 Partition
* 查看 Lag
```
$ bin/kafka-consumer-groups.sh --bootstrap-server --describe --group
```
## Kafka Java Consumer API
```
public static Map lagOf(String groupID, String bootstrapServers) throws TimeoutException { <