|NO.Z.00326|——————————|CloudNative|——|KuberNetes&运维.V44|——|白盒监控.v06|kafka.v03|Prometheus获取监控数据|
一、通过Prometheus的UI查看是否监控到数据
### --- 通过Prometheus的UI查看是否监控到数据
~~~ 地址:http://prom.test.com/targets#job-monitoring%2fkafka-exporter%2f0
~~~ 目前只有一个节点
~~~ topic创建之后数据已经生成


二、在grafana中添加kafka的dashboard
### --- kafka_exporter创建地址:
~~~ kafka_exporter的创建地址:https://github.com/danielqsj/kafka_exporter
~~~ dashboard的ID是7598
### --- kafka_exporter的dashboard地址:
~~~ kafka_exporter的dashboard地址:https://grafana.com/grafana/dashboards/7589
~~~ download下7598的Json文件:kafka-exporter-overview_rev5.json

三、导入到grafana的控制台:
### --- 导入到grafana的控制台:
~~~ grafana地址:http://grafana.test.com/
~~~ 导入模板:+号——>Import——>Upload.json file——>Prometheus:Prometheus——>Import——>grafa获取不到数据:故障现象
~~~ 是因为kafka是新安装的,什么数据都没有,所Job、Instance、Topic取值取不到:所以取值取不到
~~~ 若是kafka在生产环境中使用很久了,使用grafana去采集数据不会为空,是没有这种问题的

四、获取不到数据解决方案
### --- 更改kafka-exporter-overview_rev5.json源码文件
~~~ # 默认是没有这个值的,所以取值取不到
kafka_consumergroup_current_offset
~~~ # 找一个有这个值的,替换一下
~~~ # 把下面的kafka_consumergroup_current_offset这个值替换成kafka_topic_partition_in_sync_replica这个值即可
"query": "label_values(kafka_topic_partition_in_sync_replica, job)",
"query": "label_values(kafka_topic_partition_in_sync_replica{job=~\"$job\"}, instance)",
"query": "label_values(kafka_topic_partition_current_offset{instance='$instance',topic!='__consumer_offsets',topic!='--kafka'}, topic)",
~~~ # 重新导入Json模板 ;刷新查看
五、查看获取到的数据

Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart
——W.S.Landor
浙公网安备 33010602011771号