菜单
Grafana Cloud Enterprise 开源

创建 Grafana 管理的记录规则

记录规则允许您定期预先计算常用或计算量大的查询,并将结果保存为新的时间序列指标。

然后,警报规则和仪表盘可以查询记录规则生成的新指标。这比查询实时数据更快,有助于减少系统负载。

Grafana 不包含嵌入式时间序列数据库来存储记录规则结果。您必须提供自己的 Prometheus 兼容数据库来存储由记录规则生成的时间序列。

Grafana 管理的记录规则提供与 Prometheus 类似的功能,但允许您查询报警支持的数据源。此外,您还可以使用记录规则将来自其他数据源的数据导入并映射到 Prometheus。

注意

Grafana Cloud 中默认启用 Grafana 管理的记录规则。

在 Grafana OSS 和 Enterprise 中,您必须按照开始之前的说明启用它们。

要配置 Grafana 管理的记录规则,请完成以下步骤。

开始之前

本节仅适用于 Grafana OSS 和 Grafana Enterprise。

首先,启用 grafanaManagedRecordingRules 特性标记

然后,在 Grafana 配置 .ini 的 [recording_rules] 部分中设置 enabled = true 来启用该特性。在 url 字段中提供您的 Prometheus 兼容远程写入端点 URL,以及可选的凭据或头部信息。

[recording_rules]
enabled = true
url = http://my-example-prometheus.local:9090/api/prom/push
basic_auth_username = my-user
basic_auth_password = my-pass

[recording_rules.custom_headers]
X-My-Header = MyValue

添加新记录规则

创建新的 Grafana 管理的记录规则

  1. 点击 Alerts & IRM -> Alerting -> Alert rules

  2. 滚动到 Grafana-managed section 部分,点击 +New recording rule

  3. 输入用于识别您的记录规则和指标的名称。

    指标名称必须是 Prometheus 指标名称,且不包含空格。详情请参阅 Prometheus 指标名称

定义记录规则

定义一个查询以获取您要度量的数据并设置记录规则输出。

  1. 选择数据源。

  2. Options 下拉菜单中,指定时间范围。

    注意

    Grafana Alerting 仅支持固定的相对时间范围,例如 now-24hr: now

    它不支持绝对时间范围:2021-12-02 00:00:00 to 2021-12-05 23:59:592 或半相对时间范围:now/d to: now

  3. 添加查询。

    要添加多个查询,请点击 Add query

  4. 添加一个或多个表达式

    a. 对于每个表达式,选择 Classic condition 创建单个记录规则,或从 MathReduceResample 选项中选择。

    使用 Prometheus 时,您可以使用即时向量和内置函数,因此无需添加额外的表达式。

    b. 点击 Preview 验证表达式是否成功。

  5. 在您希望设置为规则输出的查询或表达式上点击 Set as recording rule output

设置评估行为

使用记录规则评估来确定记录规则的评估频率。

为此,您需要确保您的记录规则位于正确的评估组中,并设置最适合您用例的评估间隔。

  1. 选择一个文件夹或点击 + New folder

  2. 选择一个评估组或点击 + New evaluation group

    如果您正在创建新的评估组,请为该组指定间隔。

    同一组内的所有规则在同一时间间隔内并发评估。组内的每个记录规则都使用相同的评估时间,这意味着同一组的所有查询始终相互对齐。

  3. 在创建记录规则之前或之后,如有必要,您可以选择 Pause evaluation

高级配置

min_interval 设置规则评估之间强制执行的最小间隔。默认值为 10s,等于调度器间隔。如果规则小于此值或不是调度器间隔 (10s) 的倍数,则将进行调整。较高的值有助于资源管理,因为随时间安排的评估较少。

此设置优先于每个单独规则的频率。如果规则频率低于此值,则强制执行此值。

此设置适用于 Grafana 管理的警报规则和记录规则。

添加标签

您可以选择通过从下拉菜单中选择现有键值对或输入新的键或值,为结果指标添加自定义标签。

在仪表盘或警报规则中查询新指标

点击 Save ruleSave rule and exit 以保存规则。

保存后,新的记录指标即可用于仪表盘和警报规则中。