【问题标题】:PromQL Prometheus Query - How do we specify a data range in absolute termsPromQL Prometheus 查询 - 我们如何以绝对值指定数据范围
【发布时间】:2022-12-21 09:35:46
【问题描述】:

从 Grafana 查询检查器中,我能够获取日期范围内的数据;例子

rate(node_disk_read_bytes_total{job="node-exporter",instance="172.18.0.2:9100",device=~"nvme.*"}[20m])

我还可以给出绝对数据时间范围。当我使用 Prometheus GUI 直接查询时,我不确定放置日期时间范围的语法。我知道它是在 Unix Epoch 时间

我通过阅读文档在 PromQL 中尝试过的内容

rate(node_disk_read_bytes_total{job="node-exporter",instance="172.18.0.2:9100",device=~"nvme.*"}[10m] @ 1648473649)[1d:10m]

1648473649 = Monday, 28 March 2022 13:20:49 https://www.epochconverter.com/

这有效,没有错误并给出数据,但数据是错误的(你可以从输出中看到它一直给出一个值 38775.46666666667。

另外,我想在上面的查询中提供日期时间戳。

在 PromQL 中提供正确数据的查询

rate(node_disk_read_bytes_total{job="node-exporter",instance="172.18.0.2:9100",device=~"nvme.*"}[10m])[7d:10m]

【问题讨论】:

    标签: prometheus grafana promql


    【解决方案1】:

    PromQL 不允许为查询指定时间范围。相反,时间范围是通过传递给相应端点的 HTTP API 参数指定的:

    这样的设计决策允许在任何时间戳或任何时间范围内执行相同的 PromQL 查询,而无需更改查询本身。

    【讨论】:

      猜你喜欢
      • 2020-06-29
      • 1970-01-01
      • 2021-10-25
      • 2021-11-13
      • 2020-11-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-01-20
      相关资源
      最近更新 更多