首页 文章

从石墨/ grafana的初始值单一百分比变化?

提问于
浏览
5

有没有办法简单地显示所选时间段内值的变化?我感兴趣的是与最初值相比的最后一个值的偏移量 . 在这段时间内,这些值可能会在这些值之上和之下变化,但这并不是真正相关的(在我的情况下也是例外) .

对于初始值100和最终值105,我希望单个统计框显示5% .

我有一种感觉,我错过了一些显而易见的东西,但找不到一种方法来展示这个看似简单的任务 .

Edit:

我正在尝试创建一个脚本化的Grafana仪表板,它将自动填充所有各种卷的磁盘消耗增长 . 数据已经在Graphite中,但出于容量管理和财务规划(项目/部门获得计费)的目的,管理人员可以简单粗略地概述哪些数据量超出预期参数 .

我们的想法是创建一个带有颜色编码的单一统计值列表,可以轻松滚动查找异常 . 磁盘使用量显然永远不会是负数,但在此视图中,时间段开始和结束之间的使用波动性将会丢失 . 这对我们来说不是一个大问题,因为这是所有共享存储,并且这种使用在一定程度上是预期的 .

完美的解决方案是根据选定的时间段动态更改计算 .

我认为这与Graphite和Grafana不太可能(至少不容易),并且已经开始寻找替代方法 . 我们可能必须为此目的实施不同的报告系统 .

Edit 2

我已经尝试过实施Leonid的建议解决方案,并且它在时尚之后起作用 . 计算似乎与我的预期有些不同 .

我的测试仪表板如下所示:

Storage Growth over 30 days

如果我手动计算更改,我最终会在开始(7,23)和结束(8.96)值之间进行大约24%的更改 . Graphite将其计算为19% . 这可能是造成差异的一个原因,可能与时间序列有关,而不是谨慎的 Value 观?

作为旁注:这个例子只有30天,尽管最有趣的数字是一年 . 我们在Graphite中还没有一年的数据,并且拥有30天的视图也很有趣 . 看来我必须用静态时间实现几个仪表板 .

1 回答

  • 4

    你当然可以在一段固定时间内做到这一点 . 例如,在查询之后,取当前度量值与度量在一分钟之前的值(即初始值)之间的绝对差值,然后计算它的初始值的百分比 .

    asPercent(absolute(diffSeries(my_metric, timeShift(my_metric, '1m'))), timeShift(my_metric, '1m'))
    

    我相信你不能在Grafana选择器中选择的时间段内这样做 .

    但这真的是你需要的吗?这看起来很奇怪,因为正如你所说, Value 可以在两个方向上发生变化 . 也许standard deviation会更适合你吗?它在Graphite中可用作stdev function .

相关问题