菜单
Grafana Cloud Enterprise 开源 RSS

Prometheus 数据源

Prometheus 是一个开源数据库,它使用遥测收集代理来抓取和存储用于监控和告警的指标。Grafana 原生支持 Prometheus。如果您刚开始使用 Prometheus,请参阅什么是 Prometheus?

提示

有关下载 Prometheus 的说明,请参阅

Grafana 和 Prometheus 快速入门.

如果您准备开始可视化您的指标,请查看我们的 Prometheus 学习旅程

有关如何将数据源添加到 Grafana 的说明,请参阅管理文档。只有具有组织 administrator 角色的用户才能添加数据源和编辑现有数据源。管理员还可以通过 Grafana 的供应系统通过 YAML 配置数据源

添加 Prometheus 数据源后,您可以对其进行配置,以便您的 Grafana 实例用户可以在构建仪表盘时在其查询编辑器中创建查询,使用Explore,并标注可视化

以下指南将帮助您开始使用 Prometheus 数据源

Prometheus API

Prometheus 数据源也适用于实现Prometheus 查询 API 的其他项目。

有关如何从 Grafana 查询其他兼容 Prometheus 的项目的更多信息,请参阅特定项目的文档

供应数据源

您可以在 YAML 文件中定义和配置数据源,作为 Grafana 供应系统的一部分。有关供应的更多信息以及可用的配置选项,请参阅供应 Grafana

注意

数据源一旦供应后,您将无法编辑它。

供应示例

yaml
apiVersion: 1

datasources:
  - name: Prometheus
    type: prometheus
    access: proxy
    # Access mode - proxy (server in the UI) or direct (browser in the UI).
    url: https://:9090
    jsonData:
      httpMethod: POST
      manageAlerts: true
      prometheusType: Prometheus
      prometheusVersion: 2.44.0
      cacheLevel: 'High'
      disableRecordingRules: false
      incrementalQueryOverlapWindow: 10m
      exemplarTraceIdDestinations:
        # Field with internal link pointing to data source in Grafana.
        # datasourceUid value can be anything, but it should be unique across all defined data source uids.
        - datasourceUid: my_jaeger_uid
          name: traceID

        # Field with external link.
        - name: traceID
          url: 'https://:3000/explore?orgId=1&left=%5B%22now-1h%22,%22now%22,%22Jaeger%22,%7B%22query%22:%22$${__value.raw}%22%7D%5D'

使用 Prometheus 查看 Grafana 指标

Grafana 在 /metrics 端点上暴露了 Prometheus 的指标。我们还在 Grafana 中捆绑了一个仪表盘,以便您可以更快地开始查看指标。

要导入捆绑的仪表盘

  1. 导航到数据源的配置页面

  2. 选择仪表盘选项卡。

    这将显示适用于 Grafana 和 Prometheus 的仪表盘。

  3. 选择要导入的仪表盘的导入

有关这些指标的详细信息,请参阅Grafana 内部指标

Amazon Managed Service for Prometheus

与 Amazon Managed Service for Prometheus 一起使用的 Prometheus 数据源已弃用。请使用Amazon Managed Service for Prometheus 数据源。迁移步骤在链接中有详细说明。

Azure 身份验证设置

Prometheus 数据源支持 Azure 身份验证。要配置 Azure 身份验证,请参阅配置 Azure Active Directory (AD) 身份验证

在 Grafana Enterprise 中,更新 .ini 配置文件:配置 Grafana。根据您的设置,.ini 文件位于此处。在 [auth] 部分添加以下设置

bash
[auth]
azure_auth_enabled = true

注意

如果您正在使用 Azure 身份验证设置,请勿启用 Forward OAuth identity。两者都使用相同的 HTTP 授权头。OAuth 令牌将覆盖 Azure 设置。

Exemplars

Exemplars 将特定事件中的高基数元数据与传统时间序列数据关联起来。有关它们如何工作的详细信息,请参阅 Prometheus 文档中的Exemplars 简介

注意

适用于 Prometheus v2.26 及更高版本以及 Grafana v7.4 及更高版本。

Grafana 可以在 Explore 和仪表盘中与指标一起显示 Exemplars 数据。

Screenshot showing the detail window of an Exemplar
显示 Exemplar 详细信息窗口的屏幕截图

请参阅配置 Prometheus 数据源中的 Exemplars 部分。

Exemplars
Exemplars

增量仪表盘查询(Beta 版)

从 Grafana 10 开始,Prometheus 数据源可以配置为增量查询活动仪表盘,而不是在每次仪表盘刷新时重新查询整个时长。

这可以在数据源配置或供应文件中切换开启或关闭(在 jsonData 的 incrementalQuerying 下)。此外,增量查询之间的重叠量可以使用 incrementalQueryOverlapWindow jsonData 字段进行配置,默认值为 10m(10 分钟)。

增加 incrementalQueryOverlapWindow 的时长会增加每次增量查询的大小,但对于最近数据结果不一致的实例可能会有所帮助。

记录规则(Beta 版)

Prometheus 数据源可以在数据源配置或供应文件中配置为禁用记录规则(在 jsonData 的 disableRecordingRules 下)。