curl 命令 | 说明 |
curl localhost:8429/targets | 查询 target 抓取状态,会返回类似如下的打印信息。您可以通过 grep 的方式过滤具体的 job。对应 dashboard 的 target 列表。 job=nodeScrape/kube-system/kubelet-cadvisor/1 (3/3 up) state=up, endpoint=https://192.168.XX.XX:10250/metrics/cadvisor, labels={ecs="i-ydh********9xk",instance="192.168.XX.XX",job="kubelet-cadvisor",machine="ncsd********ibkg",machinepool="pcsd********if30",node="192.168.XX.XX"}, scrapes_total=85661, scrapes_failed=5, last_scrape=6229ms ago, scrape_duration=41ms, samples_scraped=1603, error= state=up, endpoint=https://192.168.XX.XX:10250/metrics/cadvisor, labels={ecs="i-ydh********rfb",instance="192.168.XX.XX",job="kubelet-cadvisor",machine="ncsc********h3j0",machinepool="pcsc********h3ig",node="192.168.XX.XX"}, scrapes_total=85661, scrapes_failed=1, last_scrape=3407ms ago, scrape_duration=47ms, samples_scraped=1483, error= state=up, endpoint=https://192.168.XX.XX:10250/metrics/cadvisor, labels={ecs="i-ydg********0p6",instance="192.168.XX.XX",job="kubelet-cadvisor",machine="ncs3********islg",machinepool="pcs3********ssv0",node="192.168.XX.XX"}, scrapes_total=85660, scrapes_failed=3, last_scrape=14092ms ago, scrape_duration=92ms, samples_scraped=4593, error= 在命令 curl -H 'accept:text/html' 'http://localhost:8429/targets' 中加上 accept header,可以返回 html 的格式。 |
curl localhost:8429/api/v1/targets | 查询较为详细的 JSON 形式的 target 信息,分为 activeTargets 和 droppedTargets,每个 targets 里包括 meta labels。 { "status": "success", "data": { "activeTargets": [ ], "droppedTargets": [ ] } } 具体返回示例如下: "activeTargets": [ { "discoveredLabels": { "__address__": "192.168.XX.XX:10250", "__meta_kubernetes_node_address_Hostname": "192.168.XX.XX", "__meta_kubernetes_node_address_InternalIP": "192.168.XX.XX", ... "__metrics_path__": "/metrics/cadvisor", "__scheme__": "https", "__scrape_interval__": "15s", "__scrape_timeout__": "10s", "instance": "192.168.XX.XX", "job": "nodeScrape/kube-system/kubelet-cadvisor/1" }, "labels": { "ecs": "i-ydh9hrtxxcr9cxx9j9xk", "instance": "192.168.XX.XX", "job": "kubelet-cadvisor", "machine": "ncsd********ibkg", "machinepool": "pcsd********if30", "node": "192.168.XX.XX" }, "scrapePool": "kubelet-cadvisor", "scrapeUrl": "https://192.168.XX.XX:10250/metrics/cadvisor", "lastError": "", "lastScrape": "2024-12-06T14:20:02.71+08:00", "lastScrapeDuration": 0.054, "lastSamplesScraped": 1603, "health": "up" } ... ] |
curl localhost:8429/config | 查看 prometheus-agent 读取到的原始配置。一般用 servicemonitor 等 CR 配置采集,operator 会自动加上一些 relabel,可以通过这个命令查看到实际被 prometheus-agent 读取到的完整的 scrape 采集配置。 |
采集方式 | 对应格式 |
servicemonitor 采集 | serviceScrape/<namespace>/<servicemonitor-name>/n |
podmonitor 采集 | podScrape/<namespace>/<servicemonitor-name>/n |
vmnodescrape 采集 | nodeScrape/<namespace>/<servicemonitor-name>/n |
通过 pod 的 annotation 采集 | pod |