Ham*_*med 2 monitoring amazon-ec2 prometheus
我正在尝试过滤prometheus.yml. 假设以下内容是 yml 文件的一部分。如何使用中的值的正则表达式返回实例与启动,让说,prod或者qa还是其他的标签?这可以不配置relabeling吗?
ec2_sd_configs:
- region: us-east-1
access_key: access
secret_key: mysecret
profile: profile
filters:
- name: tag:Name
values:
- prod.*
- qa.*
Run Code Online (Sandbox Code Playgroud)
Prometheus 目前似乎不支持过滤 API 中的正则表达式,但如果他们可以在未来版本中添加它,那将是一个不错的功能。在这种情况下可以做的是,您可以在 EC2 实例上添加单独的标签,以便您可以根据这些标签进行过滤。如果您有大量实例,早期过滤非常有用。否则,您将获得一个巨大的列表,并且您需要通过重新标记来经历删除/保留阶段,这仍然在服务发现面板中保留一长串列表并使其难以阅读。
在下一步中,您可以使用重新标记将每个发现的实例的地址从私有 IP 替换为公共 IP。最后,您可以用标签名称替换实例名称,例如,所有 QA 实例都标记为 QA。
ec2_sd_configs:
- region: value
access_key: value
secret_key: value
port: value
filters:
- name: tag:Name
values:
- qa
- prod
- some other types
relabel_configs:
- source_labels: [__meta_ec2_public_ip]
replacement: '${1}:your port number'
target_label: __address__
- source_labels: [__meta_ec2_tag_Name]
target_label: instance
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3908 次 |
| 最近记录: |