我使用Grafana(v2.1.3)进行指标可视化。 指标来自collectd收集的Graphite。目标图表是为多个节点的百分比显示免费磁盘空间,例如假设文件夹是/ data,那么表示以字节为单位的可用空间的度量标准是:
collectd.$node.df-data.df_complex-free
表示总空间的指标是:
的总和collectd.$node.df-data.*
所以,我有以下配置:
Series A: collectd.$node.df-data.df_complex-free (Invisible)
Series B: collectd.$node.df-data.* (Invisible)
Series C: alias(asPercent(#A, sumSeries(#B)), 'Free space')
这里$ node是一个从下拉列表中选择的变量(All,node1,node2,node3等)。当选择一个特定节点时,它按预期工作,但选择了错误的一个全部选项(例如,如果每个节点的百分比是~95%,那么当选择全部时,显示24%)。
另一种选择(可能更为可取:
Series A: collectd.$node.df-data.df_complex-free
Series B: groupByNode(collectd.$node.df-data.*, 1, 'sum')
Series C: scale(divideSeries(#A, #B), 100)
对于单个节点,它很好,但是一旦选择了“所有节点”选项,就会显示以下错误:
divideSeries第二个参数必须正好引用1个系列
有什么想法吗?我相信应该有简单的解决方案。
答案 0 :(得分:5)
由于您使用的是collectd和df插件,因此您只需启用ValuesPercentage
中的/etc/collectd.conf.d/df.conf
参数,即可查询collectd.$node.df-data.percent_bytes-free