2017-06-27 55 views
0

我看到一個關於我的當前實例沒有訂閱的主題kafka警告。我們使用相同的卡夫卡經紀人,每個開發者都有他/她自己的主題。但是,我們都使用在屬性文件中指定的相同默認組ID/clientid。卡夫卡錯誤的主題我沒有訂閱

2017-06-27T11:48:35.20-0400 [APP/PROC/WEB/0]OUT 2017-06-27 15:48:35,195 WARN [NetworkClient] - [kafka-coordinator-heartbeat-thread | ingestion-matching-kafka-consumer-group] - Error while fetching metadata with correlation id 154274 : {to-process-yi=UNKNOWN_TOPIC_OR_PARTITION, to-process-shawn=UNKNOWN_TOPIC_OR_PARTITION} 
2017-06-27T11:48:35.34-0400 [APP/PROC/WEB/0]OUT 2017-06-27 15:48:35,339 INFO [PdfXmlMatcherTask] - [scheduler-1] - 
2017-06-27T11:48:35.34-0400 [APP/PROC/WEB/0]OUT 2017-06-27 15:48:35,340 INFO [PdfXmlMatcherTask] - [scheduler-1] - Checking messages... 
2017-06-27T11:48:35.41-0400 [APP/PROC/WEB/0]OUT 2017-06-27 15:48:35,412 WARN [NetworkClient] - [scheduler-1] - Error while fetching metadata with correlation id 154275 : {to-process-yi=UNKNOWN_TOPIC_OR_PARTITION, to-process-shawn=UNKNOWN_TOPIC_OR_PARTITION} 

這是預期嗎?即使每個人都有自己的主題,我是否需要單獨的小組/客戶ID?

其次,我不太確定這個錯誤的含義:心跳協調器線程無法獲取2個主題的元數據,但這些主題存在,只是這些主題的使用者沒有運行。

回答

1

client.id - 對追蹤請求很有用,對每個客戶端都應該是唯一的(儘管不是必需的)。

groupid - 這隻適用於消費者。通過您的簡短描述,您可能希望每個消費者都在自己的組中。

我建議你讀什麼ConsumerGroups是:「卡夫卡的一個消費羣體,這是一組消費者共享一個公用組識別符之間分配分區擴展主題消費」 https://www.confluent.io/blog/tutorial-getting-started-with-the-new-apache-kafka-0-9-consumer-client/

UNKNOWN_TOPIC_OR_PARTITION是一個錯誤當主題或分區不存在時,代理正確返回。卡夫卡客戶認爲這是可逆的錯誤。

如果您認爲該主題存在,請檢查兩次。 也可能是話題存在,但生產者或消費者直接針對現有話題的不存在的分區。

+0

似乎這些主題被刪除並用相似的名稱重新創建。既然它是同一個消費者羣體(即使它沒有訂閱這些主題),我仍然收到經紀人的錯誤消息? – kyl

相關問題