日誌報錯總結:
日誌關鍵字 | 監控項說明 | 備註 |
---|---|---|
Error processing append operation on partition | 一個類型告警 | 配置了正則過濾了下面的一二情況,如果仍然告警需要留意,通知相關人員。 |
org.apache.kafka.common.errors.UnknownProducerIdException: Found no record of producerId | 冪等性問題 | 有一些一天可能只發送一條消息的,如果partition數超過7,比如設成8,設成7天的保留時間就有可能出現上面的問題,像這種消息的保留時間可以設成一個月甚至更長都沒問題 |
org.apache.kafka.common.errors.OutOfOrderSequenceException: Out of order sequence number for producerId | 冪等性問題 | 有一些一天可能只發送一條消息的,如果partition數超過7,比如設成8,設成7天的保留時間就有可能出現上面的問題,像這種消息的保留時間可以設成一個月甚至更長都沒問題 |
org.apache.kafka.common.errors.NotEnoughReplicas: Number of insync replicas for partition | partition在ISR中的副本,少於配置文件中要求的min.insync.replica=$ | 配置副本同步成功最小數告警,發生此告警需要留意聯繫一下相關人員。 |
Broker may not be available | kafka broker 不可用監控 | 需要留意集羣健康情況,聯繫一下相關人員確認。 |
WARN Attempting to send response via channel for which there is no open connection | 5595這個報錯的issue在1.0.0版本也就是我們在用的版本已經修復了 | 不影響業務,可調源碼需要留意連接zk過多情況 |
NotLeaderForPartionException:This server is not the leader for that topic-partition | 發生了leader切換就有可能報NotLeaderForPartionException | broker切換是這樣的,因爲partiton是均衡分佈在各個broker的,所以不管是預期的還是非預期的broker切換,一般都會發生一些topic partition的leader切換,如果此時在完成切換前有讀寫請求,就會發現短時間的報錯現象,切換完就恢復了 |
WARN Client session timed out, have not heard from server in 4002ms for sessionid 0x100b72efc7c0006 (org.apache.zookeeper.ClientCnxn) | 客戶端連接出現會話超時情況 | zk會話超時出現的原因可能有多方面,比如網絡問題如流量風暴,broker本身性能如full gc影響,zk性能原因等 |
INFO re-registering broker info in ZK for broker 0 (kafka.server.KafkaHealthcheck$SessionExpireListener) | 發生了broker重連的情況 | zk會話超時出現的原因可能有多方面,比如網絡問題如流量風暴,broker本身性能如full gc影響,zk性能原因等 |
Shrinking ISR from 2,0,1 to 0 | 發生了ISR伸縮 | isr伸縮的原因一般有兩種,一種是真的有broker出現了問題下線了,會導致isr縮容,還有一種是複製原因,從節點來不及複製副本數據,這個有可能是發送的數據太大太多 |
This error can be ignored if the cluster is starting up and not all brokers are up yet | 集羣可能在重啓中 | 集羣重啓時可忽略 |
UnknownTopicOrPartitionException: This server does not host this topic-partition | 搜查可能bug | https://issues.apache.org/jira/browse/KAFKA-6221 從issue討論來看是偶發的,且一段時間會恢復,不會影響集羣的,可以忽略 |
JMX監控指標總結:
參考:http://kafka.apachecn.org/documentation.html#monitoring