1

我很想从/metrics我的指标中的端点重命名或删除标签。指标本身来自kube-state-metrics应用程序,所以没什么特别的。指标如下所示:

kube_pod_container_resource_requests{container="alertmanager", instance="10.10.10.10:8080", funday_monday="blubb", job="some-kube-state-metrics", name="kube-state-metrics", namespace="monitoring", node="some-host-in-azure-1234", pod="alertmanager-main-1", resource="memory", uid="12345678-1234-1234-1234-123456789012", unit="byte"} 209715200

我想替换的标签是instance因为它指的是运行kube-state-metrics应用程序的主机,我不在乎。我想拥有nodein的价值,instance我已经尝试了几个小时,但找不到方法 - 我想知道这是否根本不可能!?

我获取/metrics端点的方式是通过如下所示的 scrape-config 的方式:

- job_name: some-kube-state-metrics
      scrape_interval: 30s
      scrape_timeout: 10s
      metrics_path: /metrics
      kubernetes_sd_configs:
      - api_server: null
        role: pod
      scheme: http
      relabel_configs:
      - source_labels: [__meta_kubernetes_pod_labelpresent_kubeStateMetrics]
        regex: true
        action: keep
      - source_labels: [__meta_kubernetes_pod_label_name]
        regex: (.*)
        replacement: $1
        target_label: name
        action: replace
      - source_labels: [__meta_kubernetes_pod_container_port_name]
        separator: ;
        regex: http
        replacement: $1
        action: keep
      - source_labels: [node]
        regex: (.*)
        replacement: blubb
        target_label: funday_monday
        action: replace
      - action: labeldrop
        regex: "unit=(.*)"
      - source_labels: [ __name__ ]
        regex: 'kube\_pod\_container\_resource\_requests'
        action: drop

如您所知,我也一直在尝试删除标签,即unit-label (仅用于测试目的),并且我还尝试将所有指标都删除。这funday_monday是一个改变的例子,因为我想知道静态重新标签是否可能(它有效!) - 在它看起来像这样之前:

- source_labels: [node]
        regex: (.*)
        replacement: $1
        target_label: funday_monday
        action: replace

帮助表示赞赏。

4

1 回答 1

2

问题是您在错误的时间执行这些操作。relabel_configs发生在实际收集指标之前,因此,此时,您只能操作从服务发现中获得的标签。

node标签来自出口商。因此,您需要在metric_relabel_configs下执行此重新标记操作:

metric_relabel_configs:
- source_labels: [node]
  target_label: instance

删除指标也是如此。如果您想了解更多信息,我在这里回答了一个类似的问题:prometheus relabel_config drop action not working

于 2022-02-18T14:26:44.963 回答