Files
ai-security-xdr/haobang-security-dm/upgrade-doc/v3/kafka/03-query-kafka-consumer-lag.md
T

46 lines
1.2 KiB
Markdown
Raw Normal View History

# 查询 Kafka 当前积压
在 Kafka 的 `bin` 目录执行。查询操作只读,不会修改消息或消费组 offset。
## 查询主日志消费积压
```bash
./kafka-consumer-groups.sh \
--bootstrap-server 10.141.121.35:9092 \
--group agent-01-syslog-group-dm \
--describe
```
如果现场主消费组仍使用旧名称,将组名改为 `agent-01-syslog-group`。
## 查询所有消费组的总积压
```bash
./kafka-consumer-groups.sh \
--bootstrap-server 10.141.121.35:9092 \
--all-groups \
--describe \
| awk '$6 ~ /^[0-9]+$/ {lag[$1]+=$6} END {for (g in lag) print lag[g], g}' \
| sort -nr
```
输出第一列是总积压条数,第二列是消费组名称,积压最多的排在最前面。
需要查看某个消费组各分区的明细时执行:
```bash
./kafka-consumer-groups.sh \
--bootstrap-server 10.141.121.35:9092 \
--group 消费组名称 \
--describe
```
重点查看:
- `CURRENT-OFFSET`:已经消费并提交的位置;
- `LOG-END-OFFSET`:Kafka 当前最新位置;
- `LAG`:该分区积压条数。
间隔一分钟查询两次:`LAG` 下降表示正在追赶;`LAG` 上升表示消费速度低于数据进入速度;
`CURRENT-OFFSET` 不变且 `LAG` 大于零,表示消费没有进展。