我想删除一个标签,但仅限于特定系列。从文档中我可以看到所需的操作是 labeldrop。
我的出发点是这样的
- action: replace
source_labels: [__name__, url_rule]
regex: 'test_.+;(.+)'
target_label: path
- action: labeldrop
regex: 'url_rule'
Run Code Online (Sandbox Code Playgroud)
如何确保第二个操作只会从以 test_ 开头的指标中删除 url_rule 标签(就像第一个操作一样)?
Prometheus 不提供通过 条件标签删除的功能action: labeldrop。此操作无条件应用于每个指标的每个标签。但您可以使用以下解决方法url_rule从名称以 开头的指标中删除标签test_:
- source_labels: [__name__, url_rule]
regex: "test_.+;.+"
replacement: ""
target_label: url_rule
Run Code Online (Sandbox Code Playgroud)
它只是设置一个空值来url_rule标记名称从test_前缀开始的指标。然后,Prometheus 在重新标记后会丢弃带有空值的标签。
ifPS当使用 VictoriaMetrics - 我从事的类似 Prometheus 的监控解决方案时,可以通过条件简化重新标记规则:
- if: "{__name__=~'test_.+'}"
action: labeldrop
regex: url_rule
Run Code Online (Sandbox Code Playgroud)
有关详细信息,请参阅这些文档。
| 归档时间: |
|
| 查看次数: |
2271 次 |
| 最近记录: |