代码之家  ›  专栏  ›  技术社区  ›  kentor

从普罗米修斯那里得到的数据只来自上一次的scrape迭代

  •  1
  • kentor  · 技术社区  · 6 年前

    我正在创建一个工具来显示kubernetes集群中所有pod的资源请求。Prometheus已经抓取了我的Prometheus度量导出器,并且历史上保存了所有抓取的度量(间隔10秒),这样我甚至可以在10天前看到来自所有pod的资源请求。

    问题

    每次重新部署pod时,它都会更改名称。不过,我只想显示实际运行的pod的资源请求。为此,我可以添加一个时间选择器,比如,只显示最长15秒的结果,但这将是一个小黑客。如果可能的话,我想从最新的scrape迭代中得到结果(在出现问题的情况下可能会超过15秒)。

    只有那些在上一次迭代中被抹去的普罗米修斯度量,最好的方法是什么?

    eagle_container_resource_requests_cpu

    旁注:

    2 回复  |  直到 6 年前
        1
  •  3
  •   Holger Adam    6 年前

    陈腐可能是你想要的: https://prometheus.io/docs/prometheus/latest/querying/basics/#staleness

    因此,5分钟后,你应该开始看到值消失。

        2
  •  1
  •   mibrl12    6 年前

    eagle_container_resource_requests_cpu 获取最新值,例如,这是使用Prometheus graph execution发送的实际请求:

    https://<prometheus-url>/api/v1/query?query=eagle_container_resource_requests_cpu&time=1541769935.01&_=1541769677378
    

    此外,您还可以通过直接调用 Prometheus API

    curl 'http://localhost:9090/api/v1/query?query=eagle_container_resource_requests_cpu&time=2018-11-09T10:10:51.781Z'
    

    两个响应都将包含时间戳度量,例如:

    "value":[1541770056.042,"11"]

    如果您想在Grafana的singlestat图表中看到这一点:

    您可以查看“当前”(最新)值或最后一点的时间。

    enter image description here