簡介
prometheus抓取目標的時候,是按照job來的,job就是配置我們的監控目標。
Jobprometheus預設有一個job,這個就是抓取本身的指標的。
- job_name: 'prometheus' # metrics_path defaults to '/metrics' # scheme defaults to 'http'. static_configs: - targets: ['localhost:9090']
static_configs 靜態配置,如果監控目標是固定的,就可以用這種配置方式。
動態配置的也支援很多例如:consul_sd_configs、file_sd_configs、kubernetes_sd_config等
最快的就是有用file_sd_configs只要修改檔案,就會自動新增的監控。
file_sd_configs配置例子
- job_name: 'node_exporters' # metrics_path defaults to '/metrics' # scheme defaults to 'http'. file_sd_configs: - files: - /opt/prometheus/config.d/*.json refresh_interval: 10s
這個配置就是監聽/opt/prometheus/config.d/目錄下的.json字尾的檔案,refresh_interval指定監聽間隔。
檔案格式
[ { "targets": ["192.168.122.100:9100","192.168.122.101:9100"], "labels": { "project": "testing-project", } },{ "targets": ["10.0.1.20:9100","10.0.1.22:9100"], "labels": { "project": "product-project", } }]
targets設定抓取目標,labels可以新增或者修改標籤。
總結還有很多做服務發現的配置,可以根據實際需求進行配置。