nmon监控及分析(转)

Posted zpw-1

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了nmon监控及分析(转)相关的知识,希望对你有一定的参考价值。

转自:http://blog.csdn.net/on_my_way20xx/article/details/19406061

  性能测试中,各个服务器资源占用统计分析是一个很重要的组成部分,通常我们使用nmon这个工具来进行监控以及监控结果输出。

一. 在监控阶段使用类似下面的命令

     ./nmon -f write_3s_20vu.nmon -t -s 30 -c 100  进行监控.

      -f  这是nmon必选参数,并且必须放在第一个,就是输出文件的意思;通常我们指定一个当前场景的简写,方便后期统计;

      -s 表示nmon采样的频率单位为秒;

      -c 表示nmon采样的次数;

      -t 输出top process

  二. 分析阶段 我们通常需要 CPU(%)、MEM(%)、DISKBUSY(%)、NET(MB)几个相关数值

      1. 关于有效行

       由于nmon启动时间未必是应用平稳的时间,同时nmon监控时间段也许比应用施压的要长;所以nmon的结果里常常存在一些明显不合理的数据--比如前几次结果的CPU等占用明显低于中段的平均数据,或者后面几次采样结果很小;对于这样的数据我们在分析的时候要予以过滤;

      2. CPU 占用

       CPU_ALL 表,的CPU%列取平均值即可---注意下图中红框中就是无效数据;

    技术图片      

  2. DISKBUSY  

    DISKBUSY表,对于单磁盘服务器直接对SDA列取平均即可;多服务器的话看情况而定--若果只有一个磁盘有压力那么就选择那个磁盘即可,要是两个磁盘均有则要合起来取个平均;

技术图片

3. MEM% 

  在MEM表里面使用如下公式计算出每行的内存使用率并进行取平均:

    (Memtotal - Memfree - cached - buffers)/Memtotal  * 100即( =(B2-F2-K2-N2)/B2*100)

技术图片

通过分析内存使用率的趋势,可定位是否内存泄露情况。

有人看到内存使用率是99%,就认为内存用满了,并没有区分内存分页是什么类型,这样武断的说内存用满了是不科学的。在AIX上主要关注的是计算内存占整个物理内存的百分比,linux上主要关注的是active内存占整个物理内存的百分比。

 

4. NET(MB) 网络占用是唯一需要转换为MB的而不是%

找到eth0-total eth1-total中不为0的那列,取平均并除以1024。

注意此处的write 相当于 nmon时时监控(直接执行并按n键)中的TRANS(OUT),read相当于RECVS(IN)

技术图片

 

要留心数据的变化规律和有效性,灵活的过滤掉无效的数据,一般用CPU来过滤无效行,并在其他三项中统一用有效行数来计算;

 

Shell脚本查看linux系统性能瓶颈 文中有已写的shell脚本,从脚本中可看出从linux命令中如何获取服务器各项资源的值。可以与nmon结合一块分析。

 

http://nmon.sourceforge.net/pmwiki.php

以上是关于nmon监控及分析(转)的主要内容,如果未能解决你的问题,请参考以下文章

转:运维监控系统-监控项及指标的梳理

转:JMeter监控内存及CPU ——plugin插件监控被测系统资源方法

转 Java GC - 监控回收行为与日志分析

UAVStack JVM监控分析工具:图形化展示采集及分析监控数据

shell系统监控及日志分析

Linux下的IO监控与分析(转)