1.按天统计

#!/bin/sh

brokers="ip地址"
topic="topic名称"

y1=`date -d yesterday +%Y-%m-%d`
y2=`date +%Y-%m-%d`
yesterday1=`date -d "${y1} 00:00:00" +%s000`
yesterday2=`date -d "${y2} 00:00:00" +%s000`

last=0
now=0
speed=0

    echo "【-------开始统计,当前统计时间为`date`----】"
    last=$(bin/kafka-run-class.sh kafka.tools.GetOffsetShell --broker-list ${brokers} --topic ${topic} --time ${yesterday1} |  awk -F ":" '{sum1+=$NF} END {print sum1}')
    now=$(bin/kafka-run-class.sh kafka.tools.GetOffsetShell --broker-list ${brokers} --topic ${topic} --time ${yesterday2} |  awk -F ":" '{sum+=$NF} END {print sum}')
    let speed=(now-last)/86400

    echo "昨日1天总计消费:`expr $now - $last`张,平均 TPS= $speed 张/秒"

2.按小时统计

#!/bin/sh

brokers="ip地址"
topic="topic名称"
y1=`date -d "1 hour ago" +"%Y-%m-%d %H:%M:%S"`
y2=`date "+%Y-%m-%d %H:%M:%S"`
yesterday1=`date -d "${y1}" +%s000`
yesterday2=`date -d "${y2}" +%s000`

last=0
now=0
speed=0
hourago=`date -d "1 hour ago" +"%T"`
nowtime=`date  +"%T"`
    echo "【-------开始统计,当前统计时间为`date`----】"
    last=$(bin/kafka-run-class.sh kafka.tools.GetOffsetShell --broker-list ${brokers} --topic ${topic} --time ${yesterday1} |  awk -F ":" '{sum1+=$NF} END {print sum1}')
    now=$(bin/kafka-run-class.sh kafka.tools.GetOffsetShell --broker-list ${brokers} --topic ${topic} --time ${yesterday2} |  awk -F ":" '{sum+=$NF} END {print sum}')
    let speed=(now-last)/3600
    echo " ${hourago}到 ${nowtime} 总计消费:`expr $now - $last`张,平均 TPS= $speed 张/秒"
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐