Grafana 以秒为单位绘制当前持续时间

Grafana 以秒为单位绘制当前持续时间,grafana,graphite,Grafana,Graphite,我想以秒为单位显示从范围开始到结束的总持续时间 图形的总持续时间(以秒为单位)为Y轴,时间为X轴 它将从0到3600开始,持续一小时 我设法以石墨系列为基础绘制它,但是当范围太宽时,它是不正确的。我想这与一段时间后清理数据有关。 Graphite包含一个名为的函数,该函数仅返回图形中每个点的时间戳,时间戳的间隔由您选择。结合函数,您可以画一条线。看起来是这样的: offsetToZero(timeFunction('duration', 60)) 我在不同的maxdataPoint值下测试了9

我想以秒为单位显示从范围开始到结束的总持续时间

图形的总持续时间(以秒为单位)为Y轴,时间为X轴

它将从0到3600开始,持续一小时

我设法以石墨系列为基础绘制它,但是当范围太宽时,它是不正确的。我想这与一段时间后清理数据有关。

Graphite包含一个名为的函数,该函数仅返回图形中每个点的时间戳,时间戳的间隔由您选择。结合函数,您可以画一条线。看起来是这样的:

offsetToZero(timeFunction('duration', 60))
我在不同的maxdataPoint值下测试了90天,看起来效果不错。60秒是timeFunction的默认时间间隔,但根据您认为仪表板的最佳时间间隔,您可以使用任何您喜欢的时间间隔

如果您使用的是不同版本的Graphite,并且在不同的缩放级别上仍然看到值看起来很奇怪,请尝试添加以确保在合并数据点时使用最高值而不是平均值。您还可以使用consolidateBy(min)-Graphite数据点表示以下时间段而不是前一时间段,因此第一个数据点在数学上可能更正确,具体取决于您的实现


(注意:合并数据点是因为Grafana向Grafana发送了一个maxDataPoints值及其请求,这样Graphite就不会返回更多图形可以显示的数据点。)

它工作得很好,谢谢!然而,当我在
asPercent
的另一个系列中用作输入时,我在使用之前的解决方案时出错(总数仍然不正确)。知道为什么吗?猜测一下,由时间生成的序列和您自己的序列没有匹配的间隔。asPercent函数无法比较具有不同时间戳的数据点,而time函数会生成自己的时间戳,而不管实际的存储方案如何。您可以通过更改时间间隔函数,在最有可能查看的时间范围内匹配您自己的存储方案,从而克服此问题。如果您使用Grafana查看它,您可以使用模板变量从您提供的列表中选择不同的间隔。我使用了
divideSeries
而不是
asPercent
,它工作得很好!非常感谢你的帮助!查看您当前使用的函数可能会有所帮助-也许有办法解决这个问题?如果您发现它在进一步放大时效果不太好,请尝试使用consolidateBy功能-支持Graphite 3年,这是数据显示怪异的第二个原因:)(第一个原因仅适用于托管Graphite,但如果您使用HG签出数据视图,或者发送邮件给支持,我会看一看!)