我一直在尝试根据 Prometheus 数据在 Grafana 中创建堆积条形图,但很困难,说实话,我什至不完全确定我正在尝试做的事情是否可行。我尝试过使用旧的图表面板和新的条形图面板 - 但说实话,我发现新的条形图面板相当不直观,而且文档也很模糊。我正在使用按响应代码分割的 nginx 请求的时间序列计数器。 Prometheus 中的数据样本是:
nginx_vts_server_requests_total{code="2xx", host="example.com", instance="localhost:443", job="nginx_vts"}
我希望根据过去 12 小时的请求数创建一个堆积图表,并采用最后一个值:
increase(nginx_vts_server_requests_total[12h])
我没有包含聚合,因为我只使用单个实例。
我希望创建与此图像类似的东西(在 Excel 中模拟):
如果有人之前在 Grafana 中基于 Prometheus 数据创建了这样的图表,如果您能向我展示它是如何完成的(如果实际上可能的话),我将非常感激。 https://grafana.com/docs/grafana/latest/visualizations/bar-chart/页面顶部的屏幕截图表明,尽管此示例未堆叠,但可以进行此类分组。
我也遇到过类似的问题。这是我使用的查询;这非常相似:
sum(rate(http_requests_received_total[1h])) by (code,instance)
code
字段创建新列。使用 code
作为 Column,
instance
作为 Row,使用 Max 作为 Cell Value。
检查这些值是否与您想象的一样。特别要注意 code
和
instance
上的空值。