我已将 Prometheus 设置为使用 prometheus-ecs-discovery 中的文件 sd :
scrape_configs:
- job_name: ecs
file_sd_configs:
- files:
- /prometheus/ecs_file_sd.yml
这会将任务 arn 添加为标签:
container_label_com_amazonaws_ecs_task_arn=
"arn:aws:ecs:us-west-1:xxxxxx:task/2c1655cd-36b7-4db9-4326-ee90537b6271"
在grafana中,我想使用任务ID(在我的示例中为2c1655cd-36b7-4db9-4326-ee90537b6271
)作为我的大部分统计数据的图例,可以从任务 arn。我可以以某种方式添加新标签吗?
最佳答案
这可以使用 relabel_configs 来实现。这将允许您从源标签创建新的目标标签。
scrape_configs:
- job_name: ecs
file_sd_configs:
- files:
- /prometheus/ecs_file_sd.yml
relabel_configs:
- source_labels: [container_label_com_amazonaws_ecs_task_arn]
regex: '.*\/(.*)'
replacement: '${1}'
target_label: task_id
上面的代码将创建一个名为 task_id
的新标签,其值是 container_label_com_amazonaws_ecs_task_arn
标签的 /
之后的部分。
关于Prometheus:根据其他标签添加标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53634935/