github.com/weedge/lib@v0.0.0-20230424045628-a36dcc1d90e4/client/mq/kafka/kafka-monitor.md (about)

     1  监控环境: mac
     2  
     3  ```shell
     4  # install prometheus
     5  brew install prometheus
     6  
     7  # install grafana
     8  brew install grafana
     9  
    10  # install kafka_exporter
    11  wget https://github.com/danielqsj/kafka_exporter/releases/download/v1.3.1/kafka_exporter-1.3.1.darwin-amd64.tar.gz -P /usr/local/Cellar/kafka_exporter && cd /usr/local/Cellar/kafka_exporter
    12  tar -xzvf kafka_exporter-1.3.1.darwin-amd64.tar.gz 
    13  
    14  
    15  # start kafka_exporter job   http://localhost:9308
    16  ./kafka_exporter --kafka.server=localhost:9092 --kafka.server=localhost:9093 --kafka.server=localhost:9094
    17  
    18  # 修改 prometheus.yml,加上 kafka_exporter 的 job。默认端口是 9308。
    19  cat /usr/local/etc/prometheus.yml
    20  global:
    21    scrape_interval: 15s
    22  
    23  scrape_configs:
    24    - job_name: "prometheus"
    25      static_configs:
    26      - targets: ["localhost:9090"]
    27    - job_name: "kafka_exporter"
    28      static_configs:
    29      - targets: ["localhost:9308"]
    30      
    31  # start prometheus http://localhost:9090
    32  brew services start prometheus
    33  
    34  # start grafana http://localhost:3000
    35  brew services start grafana
    36  
    37  
    38  # import Grafana Dashboard ID: 7589, name: Kafka Exporter Overview.
    39  
    40  # config panel add metrics
    41  # view Grafana Dashboard monitor broker, topic, partition offset/replicas/isr, consumergroup offset/lag ...etc
    42  ```
    43  ##### 监控指标
    44  
    45  | Metrics                                          | Description                               | 维度指标实例(from Prometheus)                                |
    46  | ------------------------------------------------ | ----------------------------------------- | ------------------------------------------------------------ |
    47  | kafka_brokers                                    | kafka 集群的 broker 数量                  | kafka_brokers{**instance**="localhost:9308", **job**="kafka_exporter"} |
    48  | kafka_topic_partitions                           | kafka topic 的分区数                      | kafka_topic_partitions{**instance**="localhost:9308", **job**="kafka_exporter", **topic**="sarama"} |
    49  | kafka_topic_partition_current_offset             | kafka topic 分区当前的 offset             | kafka_topic_partition_current_offset{**instance**="localhost:9308", **job**="kafka_exporter", **partition**="0", **topic**="sarama"} |
    50  | kafka_topic_partition_oldest_offset              | kafka topic 分区最旧的 offset             | kafka_topic_partition_oldest_offset{**instance**="localhost:9308", **job**="kafka_exporter", **partition**="0", **topic**="sarama"} |
    51  | kafka_topic_partition_in_sync_replica            | 处于同步过程中的 topic/partition 数       | kafka_topic_partition_in_sync_replica{**instance**="localhost:9308", **job**="kafka_exporter", **partition**="0", **topic**="sarama"} |
    52  | kafka_topic_partition_leader                     | topic/partition leader 的 broker id       | kafka_topic_partition_leader{**instance**="localhost:9308", **job**="kafka_exporter", **partition**="0", **topic**="sarama"} |
    53  | kafka_topic_partition_leader_is_preferred        | topic/partition 是否使用 preferred broker | kafka_topic_partition_leader_is_preferred{**instance**="localhost:9308", **job**="kafka_exporter", **partition**="0", **topic**="sarama"} |
    54  | kafka_topic_partition_replicas                   | topic/partition 的副本数                  | kafka_topic_partition_replicas{**instance**="localhost:9308", **job**="kafka_exporter", **partition**="0", **topic**="sarama"} |
    55  | kafka_topic_partition_under_replicated_partition | partition 是否处于 replicated             | kafka_topic_partition_under_replicated_partition{**instance**="localhost:9308", **job**="kafka_exporter", **partition**="0", **topic**="sarama"} |
    56  | kafka_consumergroup_current_offset               | kakfa topic 消费者组的 offset             | kafka_consumergroup_current_offset{**consumergroup**="consumer.group.test", **instance**="localhost:9308", **job**="kafka_exporter", **partition**="0", **topic**="sarama"} |
    57  | kafka_consumergroup_current_offset_sum           | kakfa topic 消费者组的 offset 总数        | kafka_consumergroup_current_offset_sum{**consumergroup**="consumer.group.test", **instance**="localhost:9308", **job**="kafka_exporter", **topic**="sarama"} |
    58  | kafka_consumergroup_lag_sum                      | kakfa-lag 消费延迟 总数                   | kafka_consumergroup_lag_sum{**consumergroup**="consumer.group.test", **instance**="localhost:9308", **job**="kafka_exporter", **topic**="sarama"} |
    59  | kafka_consumergroup_lag                          | kakfa-lag 消费延迟                        | kafka_consumergroup_lag{**consumergroup**="consumer.group.test", **instance**="localhost:9308", **job**="kafka_exporter", **partition**="0", **topic**="sarama"} |
    60  | kafka_consumergroup_members                      | kakfa topic 消费者组成员                  | kafka_consumergroup_members{**consumergroup**="consumer.group.test", **instance**="localhost:9308", **job**="kafka_exporter"} |
    61  
    62  
    63  
    64  ##### reference
    65  
    66  1. [Prometheus+Grafana+kafka_exporter搭建监控系统监控kafka](https://github.com/Lancger/opslinux/blob/master/kafka/Prometheus%2BGrafana%2Bkafka_exporter%E6%90%AD%E5%BB%BA%E7%9B%91%E6%8E%A7%E7%B3%BB%E7%BB%9F%E7%9B%91%E6%8E%A7kafka.md)