1. 程式人生 > >kafka監控命令kafka-run-class.sh檢視消費了多少條資料

kafka監控命令kafka-run-class.sh檢視消費了多少條資料

kafka自帶了很多工具類,在原始碼kafka.tools裡可以看到:


這些類該如何使用呢,kafka的設計者早就為我們考慮到了,在${KAFKA_HOME}/bin下,有很多的指令碼,其中有一個kafka-run-class.sh,通過這個指令碼,可以呼叫其中的tools的部分功能,如呼叫kafka.tools裡的ConsumerOffsetChecker.scala


檢視consumer組內消費的offset
./kafka-run-class.sh kafka.tools.ConsumerOffsetChecker --zookeeper **:2181 --group ** --topic **

其中的group可去zookeeper中檢視:
[[email protected] zookeeper-3.4.5-cdh5.5.2]$ bin/zkCli.sh
[zk: localhost:2181(CONNECTED) 2] ls /consumers
[console-consumer-74653, WordcountConsumerGroup]
(console-consumer-74653這個組當我在另一個視窗啟動消費者[[email protected] kafka_2.10-0.8.2.0]$ bin/kafka-console-consumer.sh --zookeeper h71:2181,h72:2181,h73:2181 --topic test --from-beginning時才會有,關閉消費者程序該組會自動消失)

我們在使用kafka消費資訊的過程中,不同group的consumer是可以消費相同的資訊的,group是在建立consumer時指定的,如果group不存在,會自動建立。其實簡單點說就是每個group都會在zk中註冊,區別就是註冊過還是沒註冊過。每個group內的consumer只能消費在group註冊過之後生產的資訊。

執行結果如下:列出了所有消費者組的所有資訊,包括Group(消費者組)、Topic、Pid(分割槽id)、Offset(當前已消費的條數)、LogSize(總條數)、Lag(未消費的條數)、Owner

[[email protected] kafka_2.10-0.8.2.0]$ bin/kafka-run-class.sh kafka.tools.ConsumerOffsetChecker --zookeeper 192.168.8.71:2181,192.168.8.72:2181,192.168.8.73:2181 --group WordcountConsumerGroup --topic test
或者:
[
[email protected]
kafka_2.10-0.8.2.0]$ bin/kafka-run-class.sh kafka.tools.ConsumerOffsetChecker --zookeeper=192.168.8.71:2181,192.168.8.72:2181,192.168.8.73:2181 --group=WordcountConsumerGroup --topic=test 再或者: [[email protected] kafka_2.10-0.8.2.0]$ bin/kafka-run-class.sh kafka.tools.ConsumerOffsetChecker --zookeeper=h71:2181 --group=WordcountConsumerGroup Group Topic Pid Offset logSize Lag Owner test-consumer-group test 0 4 40 36 none test-consumer-group test 1 14 57 43 none [[email protected] kafka_2.10-0.8.2.0]$ bin/kafka-run-class.sh kafka.tools.ConsumerOffsetChecker --zookeeper 192.168.8.71:2181,192.168.8.72:2181,192.168.8.73:2181 --group=WordcountConsumerGroup Group Topic Pid Offset logSize Lag Owner WordcountConsumerGroup test 0 9 40 31 none WordcountConsumerGroup test 1 21 57 36 none [[email protected] kafka_2.10-0.8.2.0]$ bin/kafka-run-class.sh kafka.tools.ConsumerOffsetChecker --zookeeper 192.168.8.71:2181,192.168.8.72:2181,192.168.8.73:2181 --group=console-consumer-42639 Group Topic Pid Offset logSize Lag Owner console-consumer-42639 test 0 40 40 0 console-consumer-42639_h71-1498000434797-f1c703cf-0 console-consumer-42639 test 1 57 57 0 console-consumer-42639_h71-1498000434797-f1c703cf-0

細看kafka-run-class.sh指令碼,它是呼叫了ConsumerOffsetChecker的main方法,所以,我們也可以通過java程式碼來訪問scala的ConsumerOffsetChecker類,程式碼如下:

import kafka.tools.ConsumerOffsetChecker;   
public class hui 
{
    public static void main(String[] args)  
    {
    	//適用於kafka0.8.2.0
        String[] arr = new String[]{"--zookeeper=h71:2181,h72:2181,h73:2181","--group=test-consumer-group"};
        //適用於kafka0.8.1
//    	String[] arr = new String[]{"--zkconnect=h71:2181,h72:2181,h73:2181","--group=test-consumer-group"};
        ConsumerOffsetChecker.main(arr); 
    }
}
在myeclipse中執行該程式碼結果為:


跟通過kafa-run-class.sh執行的結果是一樣的

注意:

在http://jxauwxj.iteye.com/blog/2233925部落格中所使用的kafka版本是kafka0.8.1,我一開始按其中的方法在Java程式碼中寫入String[] arr = new String[]{"--zookeeper=h71:2181,h72:2181,h73:2181","--group=test-consumer-group"};總是報錯:


後來才發現,我用的是kafka0.8.2.0版本,並且這兩個版本這塊有差異,我查看了原始碼kafka-0.8.2.0-src.tar\kafka-0.8.2.0-src\core\src\main\scala\kafka\tools\ConsumerOffsetChecker.scala和kafka-0.8.1-src.tar\kafka-0.8.1-src\core\src\main\scala\kafka\tools\ConsumerOffsetChecker.scala

kafka-0.8.2.0:


kafka-0.8.1:


尼瑪,這不是坑爹嗎。。。。。。

並且:在kafka0.8.2.0版本下在Java程式碼中不能寫入"--zookeeper h71:2181,h72:2181,h73:2181","--group test-consumer-group"(在命令列模式下就可以),還必須得有等於號"--zookeeper=h71:2181,h72:2181,h73:2181","--group=test-consumer-group",不加會報錯:


相關推薦

kafka監控命令kafka-run-class.sh檢視消費多少資料

kafka自帶了很多工具類,在原始碼kafka.tools裡可以看到: 這些類該如何使用呢,kafka的設計者早就為我們考慮到了,在${KAFKA_HOME}/bin下,有很多的指令碼,其中有一

Kafka監控工具kafka-monitor v0.1簡要介紹

頁面 分享圖片 穩定 簡要介紹 markdown post down arc img Kafka Monitor為Kafka的可視化管理與監控工具,為Kafka的穩定運維提供高效、可靠、穩定的保障,這裏主要簡單介紹Kafka Monitor的相關功能與頁面的介紹;   Ka

apache kafka監控系列-KafkaOffsetMonitor

lan Kafka集群 解釋 water zabbix xxx order avi download apache kafka中國社區QQ群:162272557 概覽 近期kafka server消息服務上線了,基於jmx指標參數也寫到zabbix中了。

kafka監控實戰(jmxtrans+InfluxDb+Grafana)

監控 kafka kafka 一、前言 從上周一直在調研找一款好用的kafka監控,我測試使用過的KafkaOffsetMonitor、Burrow、kafka-monitor、Kafka-Manager,他們各有優缺點,具體情況我這裏就不展開描述了,大家可以到它們的git上去查看, 並且

kafka 監控

see color 分區 offset reat Owner block set -s topic:創建時topic名稱 partition:分區編號 offset:表示該parition已經消費了多少條message logSize:表示該partition已經寫了多少

kafka常用命令

--delete quit topic delet path web rod .sh del kafka 刪除topic /usr/local/kafka/bin/zookeeper-shell.sh IP:2181 WatchedEvent state:SyncConn

DataPipeline |Apache Kafka實戰作者胡夕:Apache Kafka監控與調優

推出 充足 不足 交互 進入 時間片 第一條 小時 send 胡夕,《Apache Kafka實戰》作者,北航計算機碩士畢業,現任某互金公司計算平臺總監,曾就職於IBM、搜狗、微博等公司。國內活躍的Kafka代碼貢獻者。 前言雖然目前Apache Kafka已經全面進化成

Kafka常用命令彙總

Kafka常用命令彙總: 1、列出叢集裡的所有主題。 kafka-topics.sh --zookeeper localhost:2181 --list [[email protected] ~]$ kafka-topics.sh --zookeeper localhost:218

Kafka開源監控工具-Kafka Eagle

集群 nag 獲取 strong 系統 優秀 監控工具 求次數 很多                   Kafka開源監控工具-Kafka Eagle                                            作者:尹正傑 版權聲明:原創作品,

kafka監控指令碼

#!/bin/bash#-*- coding: utf-8 -*-#Date: 2018/08/15#Author: Mr.yang ps -ef |grep kafka |grep -v grep |grep -v kafka.sh > /dev/null if [ $? -eq

kafka基本命令啟動和測試

Step 1: 啟動伺服器 首先啟動zookeeper > bin/zookeeper-server-start.sh config/zookeeper.properties (遠端啟動的時候需要在後面加上一個 & 作為後臺程序,然後斷開和遠端的連結) 接著啟動kafka伺

kafka監控

編輯文章 監控策略 1、Kafka總體監控 leader 選舉頻率:kafka.controller:type=ControllerStats,name=LeaderElectionRateAndTimeMs 2、Kafka Broker監控 kafka叢集中Bro

flume實現監控檔案,並將檔案內容傳入kafka的,kafka在控制檯實現消費

在flume的配置裡建一個檔案flume-kafka.conf 生產者產生的資料放在/home/hadoop/c.txt中 topic消費c.txt中的檔案 a1.sources = s1

Kafka監控工具KafkaOffsetMonitor配置及使用

一、KafkaOffsetMonitor簡述 KafkaOffsetMonitor是Kafka的一款客戶端消費監控工具,用來實時監控Kafka服務的Consumer以及它們所在的Partition中的Offset,我們可以瀏覽當前的消費者組,並且每個Topic的所有Part

Kafka-配置&命令

《Kafka權威指南》學習筆記 kafka安裝配置 broker配置 broker.id:每個broker都需要有一個識別符號,使用broker.id來表示。它的預設值是0,也可以被設定成其他任意整數。這個值在整個Kafka叢集裡必須是唯一的。 potr:

kafka shell 命令列操作

kafka的命令列操作     1、產看當前叢集中已存在的主題topic         bin/kafka-topics.sh --list --zookeeper bigdata:2181  &n

Prometheus 監控kafka

初探 預設情況下, Kafka metrics 所有的 metric 都可以通過 JMX 獲取,暴露kafka metrics 支援兩種方式 1.在 Kafka Broker 外部, 作為一個獨立程序, 通過 JMX 的 RMI 介面讀取資料. 這種方式的好處是有任何調整不需要重啟 Ka

kafka命令列操作

1)檢視當前叢集中已存在的主題topic bin/kafka-topics.sh --zookeeper master:2181 --list 2)建立topic bin/kafka-topics.sh --zookeeper master:2181 --create -

你與Kafka監控進階,只差一個“視角”的距離

Kakfa監控實踐 監控工具選擇 實際使用中對比了多種Kafka監控工具,最終選擇如下幾種工具: Kafka Monitor:這是LinkedIn開源的Kafka核心功能監控工具,並且提供了視覺化介面。它可以模擬資料生產並消費,基本上覆蓋了黑盒監控大部分指標,包括叢集核心功能、資料讀寫、

KAFKA 監控管理介面 KAFKA EAGLE 安裝

  概述 Kafka Eagle監控系統是一款用來監控Kafka叢集的工具,目前更新的版本是v1.2.3,支援管理多個Kafka叢集、管理Kafka主題(包含檢視、刪除、建立等)、消費者組合消費者例項監控、訊息阻塞告警、Kafka叢集健康狀態檢視等。 安裝與使用 1.下載 https://