如何以百分比获取内存使用情况

时间:2018-05-07 14:58:20

标签: time-series metrics influxdb

我正在使用collected memory plugin每分钟从{> 1}}获取网络服务器的指标,并将其远程存储到influxdb服务器Interval 60中。

这是我的系列:

version 1.5.1

这是一些价值观:

> SHOW SERIES FROM memory_value WHERE host = 'webserver'

key
---
memory_value,host=webserver,type=memory,type_instance=buffered
memory_value,host=webserver,type=memory,type_instance=cached
memory_value,host=webserver,type=memory,type_instance=free
memory_value,host=webserver,type=memory,type_instance=slab_recl
memory_value,host=webserver,type=memory,type_instance=slab_unrecl
memory_value,host=webserver,type=memory,type_instance=used

要获得总内存,我需要总结> SELECT * FROM memory_value WHERE host='webserver' AND time > now() -1m name: memory_value time host type type_instance value ---- ---- ---- ------------- ----- 1525704284702691476 webserver memory buffered 2138112 1525704284702691476 webserver memory cached 462839808 1525704284702691476 webserver memory free 1184563200 1525704284702691476 webserver memory slab_recl 45092864 1525704284702691476 webserver memory slab_unrecl 34017280 1525704284702691476 webserver memory used 199811072 + free,然后获取我需要做的百分比:

used

我可以使用

获取used * 100 / (free + used)
free

> SELECT mean(value) FROM memory_value WHERE host='webserver' and "type_instance" = 'free' AND time > now() -1m name: memory_value time mean ---- ---- 1525704816631763155 321410389.3333333

相同
used

但想知道如何在同一个查询中获取值,以便我> SELECT mean(value) FROM memory_value WHERE host='webserver' and "type_instance" = 'used' AND time > now() -1m name: memory_value time mean ---- ---- 1525704846204790445 199811072 获取sum然后计算使用的百分比。

我发现我可以使用以下方法对系列进行求和:

total available memory

但是,现在需要找到如何将所有这些放在一起以便计算百分比。

0 个答案:

没有答案