$__rate_interval 的默认 grafana 设置是什么

问题描述 投票:0回答:2

我知道

rate(xyz[5m]) * 60
是每分钟xyz的速率,5分钟内的平均值。

  1. 那么如何定义
    $__rate_interval
    $__interval
    , 可能使用相同的语法?
  2. 我的面板中测量的速率是什么格式?每分钟、每秒?
  3. 我的面板中的间隔 = 30 秒是多少?我的抓取间隔设置为5秒。
  4. 如何更改费率格式?
grafana
2个回答
14
投票
  1. 请参阅 Grafana 7.2 中的新增功能:适用于 Prometheus 速率查询的 $__rate_interval 可以正常工作
  2. 速率始终为每秒。请参阅 Grafana 文档了解速率函数
  3. 单击“查询选项”,然后单击“信息符号”。将显示说明。
  4. 要获得每分钟的速率,只需将速率乘以 60 即可。

编辑:

$__rate_interval
$__interval

Prometheus 定期从您的应用程序获取数据。 Grafana 定期从 Prometheus 获取数据。 Grafana 不知道 Prometheus 轮询您的应用程序数据的频率。 Grafana 将通过查看配置并假设每次抓取都会给我们一个数据点来估计这一时间。然后,

$__interval
变量扩展到图中两个数据点之间的持续时间(请注意,这仅适用于小时间范围和高分辨率,因为
$__interval
的预期用例是在时间范围很宽。请参阅$__interval的近似计算。)

如果每个系列中每两个数据点之间的时间距离为 15 秒,则在速率函数中使用小于

[15s]
的值作为间隔是没有意义的。速率函数在至少 4 个数据点时效果最佳。因此,
[1m]
[15s]
[1m]
之间的任何内容都要好得多。这就是
$__rate_interval
试图实现的目标:猜测速率函数的最小合理区间。

我个人认为,如果您的应用程序提供稀疏数据(每次抓取少于一个数据点),这并不总是有效。在这些情况下,我更喜欢使用固定间隔,例如 10m 甚至 1h 或 1d。间隔需要足够大,才能为指标提供足够的数据点,以便与速率函数配合使用。

另一种方法是使用

$__rate_interval
$__interval
中的任何一个,同时将 Grafana UI 中查询的 Min step 参数设置得足够大。


© www.soinside.com 2019 - 2024. All rights reserved.