5.2. 在时间序列和警报中附加额外标签


您可以使用 Prometheus 的外部标签功能,将自定义标签附加到离开 Prometheus 的所有时间序列和警报。

先决条件

  • 您可以使用具有 dedicated-admin 角色的用户访问集群。
  • user-workload-monitoring-config ConfigMap 对象存在。在集群创建时默认创建此对象。
  • 已安装 OpenShift CLI(oc)。

流程

  1. 编辑 ConfigMap 对象:

    1. openshift-user-workload-monitoring 项目中编辑 user-workload-monitoring-config ConfigMap 对象:

      $ oc -n openshift-user-workload-monitoring edit configmap user-workload-monitoring-config
    2. data/config.yaml 下定义每个指标要添加的标签映射:

      apiVersion: v1
      kind: ConfigMap
      metadata:
        name: user-workload-monitoring-config
        namespace: openshift-user-workload-monitoring
      data:
        config.yaml: |
          prometheus:
            externalLabels:
              <key>: <value> 1
      1
      使用键值对替换 <key>: <value>,其中 <key> 是新标签的唯一名称,<value> 是它的值。
      警告
      • 不要使用 prometheus prometheus_replica 作为键的名称,因为它们是保留的并会被覆盖。
      • 不要使用 clustermanaged_cluster 作为密钥名称。使用它们可能会导致您无法在开发人员仪表板中看到数据的问题。
      注意

      openshift-user-workload-monitoring 项目中,Prometheus 负责处理指标,而 Thanos Ruler 负责处理警报和记录规则。在 user-workload-monitoring-config ConfigMap 中为 prometheus 设置 externalLabels 只会为指标配置外部标签,而不会为任何规则配置外部标签。

      例如,要将有关地区和环境的元数据添加到与用户定义的项目相关的所有时间序列和警报中,请使用以下示例:

      apiVersion: v1
      kind: ConfigMap
      metadata:
        name: user-workload-monitoring-config
        namespace: openshift-user-workload-monitoring
      data:
        config.yaml: |
          prometheus:
            externalLabels:
              region: eu
              environment: prod
    3. 保存文件以使改变生效。受新配置影响的 Pod 会自动重新部署。
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.