python分析nmon并获取性能指标数据的姿式是这样的

背景html

在性能测试或Linux服务器运维中,都会涉及对系统资源使用状况的监控,除了经常使用的系统命令外(如topiostatfree等),比较全面的资源数据监控工具是NMON,经过在服务器上运行NMON能够按期监控硬件资源并将采集数据生成到.nmon文件中。所以,问题就来了,在自动化监控中,如何实现对.nmon文件的解析并得到关心的性能指标数据呢?python

 

nmon及其经常使用数据处理方法linux

nmon是一款用于系统监视、性能测试分析及调优的免费,它可以一次性提供关于系统及资源使用状况的大量性能指标信息,如CPU、内存、网络、磁盘IO等。ios

经常使用nmon使用方法是:服务器

1.       开启nmon网络

./nmon_linux_64 -s 10 -c 60 -f -m /home/nmon运维

其中-s 指定每次采集间隔时间;-c 指定采集次数;-f 指定输出使用电子表格格式;-m 在命令将数据保存至文件以前切换目录。ide

2.       分析nmon数据工具

使用上述命令,采集次数到达后,会在指定目录生成xxxx.nmon的文件,分析.nmon文件的经常使用方法是使用nmon_analyser.xlsm,经过导入.nmon文件,将数据显示在excel文件中。性能

 

python解析nmon的姿式

经过上述分析,获取nmon文件数据的经常使用方法主要应用在交互模式下,并不适合在性能自动化或自动化运维监控中。下面将介绍使用python解析nmon文件并获取性能指标数据的方法。

首先.nmon文件本质是文本文件,可使用python直接进行读写操做;

其次,经过分析关心指标数据的位置,经过正则匹配的方法获取数据;

最后,将数据汇总写入html,用于展现各个服务器上的资源使用状况;

根据上述思路,实现解析.nmon并得到CPU使用状况的代码以下:

 

6666.png


其余资源的获取状况相似,再也不赘述。

 

效果展现

根据实现的脚本,分析各服务器的.nmon文件并生成html报告的效果以下:

 

5555.png


总结

Nmon是经常使用的性能监控工具,经常使用的nmon_analyser.xlsm工具分析nmon的方法在性能自动化中并不适用,于是介绍了使用python脚本直接分析nmon文件并得到性能指标数据的方法。

相关文章
相关标签/搜索