如何使用promdash或grafana可视化直方图

时间:2016-08-25 00:43:55

标签: histogram grafana prometheus

我通过直方图(和摘要)时间序列吸引了普罗米修斯,但是我没有成功地在promdash或grafana中显示直方图。我期望的是能够展示:

  • 某个时间点的直方图,例如X轴上的桶和Y轴上的桶的计数以及每个桶的列
  • 水桶的堆叠图,每个水桶都有阴影,堆栈总数等于inf水桶

示例度量标准是HTTP服务器的响应时间。

4 个答案:

答案 0 :(得分:9)

@ brian-brazil上面的答案几乎可以完成,还有一些额外的,未提及的事情要做。

  

您可以对直方图进行速率的标准非堆叠图形,并且当Prometheus直方图累积时,您将获得您正在寻找的结果。

  1. Grafana中的x轴需要处于模式系列
  2. 如果您为系列
  3. 使用其他不同的标签,则需要按le标签汇总结果

    之后你会得到一个漂亮的直方图。研磨齿轮的唯一方法就是grafana的x轴排序顺序是自然的字符串排序。所以x轴以+ Inf开头,然后是0.1,0.2,.. 1, 1.5,10,2 ,......

    PS:在grafana 5.1中,将有prometheus数据源开箱即用的热图。有一个issue本地支持热图可视化,这也适用于(如果你想看到趋势/历史)可视化直方图随着时间的推移。

答案 1 :(得分:8)

Grafana v5 +为将Prometheus直方图表示为热图提供了直接支持。 http://docs.grafana.org/features/panels/heatmap/#histograms-and-buckets

与直方图相比,首选热图,因为直方图无法向您显示趋势如何随时间变化。因此,如果您有时间序列直方图,请使用热图面板对其进行描绘。

为使您入门,下面是一个示例(用于Prometheus数据):

假设您的直方图如下所示,

http_request_duration_seconds_bucket(le=0.2) 1,
http_request_duration_seconds_bucket(le=0.5) 2,
http_request_duration_seconds_bucket(le=1.0) 2,
http_request_duration_seconds_bucket(le=+inf) 5
http_request_duration_seconds_count 5
http_request_duration_seconds_sum 3.07

您可以使用查询将该直方图数据显示为热图: enter image description here

答案 2 :(得分:5)

Grafana的最新版本具有内置的Heatmap可视化类型,但请谨慎使用,因为它在计算上非常昂贵。

通过选择Graph可视化效果,然后在Axes下为Histogram> X-Axis选择Mode,可以获得直方图。

这里是Grafana 7.03的一个示例。 ceph_exporter收集到Prometheus中的数据。指标为ceph_osd_utilization。该查询使用模板变量,但与该问题正交。

Screencap of histogram panel example

答案 3 :(得分:2)

我不相信Grafana支持直方图的条形图。

您可以对直方图进行速率的标准非堆叠图形,并且当Prometheus直方图累积时,您将获得您正在寻找的结果。