命令
./kafka-consumer-groups.sh --bootstrap-server localhost:9092 --describe -group tuevGroup | grep mis.merchantCtpCredential
Run Code Online (Sandbox Code Playgroud)
产生以下不带标题的输出:
GROUP TOPIC PARTITION CURRENT-OFFSET LOG-END-OFFSET LAG CONSUMER-ID HOST CLIENT-ID
tuevGroup mis.merchantCtpCredentials 1 231 231 0 consumer-tuevGroup-2-00e2ed7d-0fdc-4303-bc06-0e8f50b1dc00 00.24.242.16/00.24.242.00 consumer-tuevGroup-2
tuevGroup mis.merchantCtpCredentials 5 182 182 0 consumer-tuevGroup-2-00e2ed7d-0fdc-4303-bc06-0e8f50b1dc00 00.24.242.16/00.24.242.00 consumer-tuevGroup-2
Run Code Online (Sandbox Code Playgroud)
我想获取所有行的 LAG 列的总数,因此我将结果通过管道传递给 awk,如下所示
./kafka-consumer-groups.sh --bootstrap-server localhost:9092 --describe -group tuevGroup |
grep mis.merchantCtpCredentials |
awk '{sum += $5} END {print sum}'
Run Code Online (Sandbox Code Playgroud)
然而,这不起作用,尽管如果我提交,grep mis.merchantCtpCredential
我会得到所有行的总结果,但未过滤
我想知道我在这里做错了什么,非常感谢您的帮助
感谢 @unxnut、@JimL 和 @camh 的帮助,我的命令遇到了两个问题:
该命令的最终版本将是
./kafka-consumer-groups.sh --bootstrap-server localhost:9092 --describe -group tuevGroup | awk '$2 == "mis.merchantCtpCredential" {sum += $6} END {print sum+0}'
Run Code Online (Sandbox Code Playgroud)