Prometheus提供了自动发现的功能,对于开源组件,我们选择基于文件的自动发现,即<file_sd_config>,实现方式如下:
1. prometheus.yml配置
修改prometheus.yml文件,添加自动发现文件信息,具体如下:
scrape_configs:
- job_name: 'file_ds' #此处定义了自动发现的采集任务名称,可以依据自己的业务定义多个自动发现任务
file_sd_configs:
- files:
- targets/*.json #采集文件路径
refresh_interval: 5m #自动发现间隔时间,默认5m
2.配置自动发现文件target.json
target.json文件包含的项与prometheus.yml的配置文件中job_name.static_configs的项一致,用户可以为每组targets加labels,便于告警分组、告警抑制时使用,示例如下:
[
{
"targets": [
"172.16.0.96:19100"
],
"labels": {
"project_name": "项目测试20200413",
"env_name": "开发环境",
"soft_name": "测试应用20200413",
"template_name"