加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

nmon的二次开发

发布时间:2020-12-16 22:31:34 所属栏目:大数据 来源:网络整理
导读:最近需要在linux下监视某几个进程,并且生成报表来研究。发现这款opensource的工具nmon在统计方面做得非常棒,只可惜不支持统计指定的进程。唯一有一个top的指令,可以按照cpu占用率排序的进程,看了源代码,发现一些cpu占用为0的就不再统计了,不符合我的需

最近需要在linux下监视某几个进程,并且生成报表来研究。发现这款opensource的工具nmon在统计方面做得非常棒,只可惜不支持统计指定的进程。唯一有一个top的指令,可以按照cpu占用率排序的进程,看了源代码,发现一些cpu占用为0的就不再统计了,不符合我的需求。

可以在nmon的官方网站下载到源代码。我习惯于eclipse+cdt做C开发,拷贝到某个工程下面,分析一下源代码。

需要做以下的事情,

1.增加一个参数 -O <processName~processName~...>,类似这样可以指定需要监视的进程,其他进程就忽略。

2.切割 ~分开的进程名,得到的进程放入数组。

3.每一次NMONloop循环的时候(循环次数由 -c <次数>指定),写入nmon的分析文件。根据nmon analyser v33g.xls的VB程序可以写入以下格式的数据,就可以直接用nmon analyser打开,打开后就可以看到柱状图和线性图,刚好满足我的需要。之前我还去更改nmon analyser的VB脚本,弄好后还不如原来默认的效果好。

格式 : <sheetname>,<A1 name>,<processName1>,<processName2>,...<processNameN>


最后代码重新编译,生成nmon_x86_m2可执行文件。

运行以下命令:

./nmon_x86_m2 -s2 -c30 -fT -O scanCC~retroBB~tgpTT~tgpUU

最后运行生成localhost_120420_1802.nmon文件.

拷贝这个文件到windows系统,用nmon analyser v33g.xls打开后,就可以看到自己指定的进程统计。


(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读