1、概述
监控,在检查系统问题或优化系统性能工作上是一个不可缺少的部分。通过操作系统监控工具监视操作系统资源的使用情况,间接地反映了各服务器程序的运行情况。根据运行结果分析可以帮助我们快速定位系统问题范围或者性能瓶颈点。nmon是一种在AIX与各种Linux操作系统上广泛使用的监控与分析工具,相对于其它一些系统资源监控工具来说,nmon所记录的信息是比较全面的,它能在系统运行过程中实时地捕捉系统资源的使用情况,并且能输出结果到文件中,然后通过nmon_analyzer工具产生数据文件与图形化结果。
nmon所记录的数据包含以下一些方面(也是我们在寻找问题过程中所关注的资源点):
i.NMON的基本功能

IBM的性能监控工具NMON工具可以为AIX和LINUX提供监视和分析性能数据的功能,其中可以采集的数据包括:
CPU使用率
内存使用情况
内核统计信息和运行队列信息
磁盘I/O速度、传输和读/写比率
文件系统中的可用空间
磁盘适配器
网络I/O速度、传输和读/写比率
页面空间和页面速度
CPU和AIX规范
消耗资源最多的进程
IBM HTTP Web缓存
用户自定义的磁盘组
计算机详细信息和资源
异步I/O,仅适用于AIX
工作负载管理器 (WLM),仅适用于AIX
IBM TotalStorage® Enterprise Storage Server® (ESS) 磁盘,仅适用于AIX
网络文件系统 (NFS)
动态LPAR (DLPAR) 更改,仅适用于面向AIX或Linux的pSeries p5和OpenPower
ii.NMON ANALYSER的基本功能介绍

快速读取NMON产生的性能监控数据,并生成CPU、内存、网络、IO相关的性能数据报表,并能够针对每一个进程生成进程的资源占用情况图表。
热点分析的加权平均值的计算
用处理器与收集间隔的比值表示的 CPU 使用率的分布情况,该信息有助于识别单线程的进程
IBM TotalStorage® Enterprise Storage Server (ESS) vpaths 的附加部分显示了每日各时段的设备繁忙状态、读取传输大小和写入传输大小
每日各时段的系统总数据速率,并对其进行调整以排除对 EMC hdiskpower 设备的重复计算,该信息有助于识别 I/O 子系统和 SAN(存储局域网络)瓶颈
EMC Corporation (EMC) hdiskpower 和 ESS DS8000(以前的 FAStT)dac 设备独立的工作表
分析内存使用率,以显示计算性和非计算性页面之间的差异
每个网络适配器的每日各时段总数据速率
显示每条命令的平均 CPU 和内存使用率的 TOP 部分汇总数据

2、下载安装

i、下载

http://www.ibm.com/developerworks/wikis/display/WikiPtype/nmon+Manual

《nmon工具使用说明.pdf》

https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/Power+Systems/page/nmon_analyser

分析结果的工具,这个工具是一个excel的文件,名称为:nmon analyser v33A.xls

https://sourceforge.net/projects/nmon/files/nmon16d_x86.tar.gz/download

nmon_analyser下载地址

ii、安装

1、上传到服务器;

2、tar -xzvf nmon16d_x86.tar.gz解压安装包;

tips:最好先建立一个文件夹,将需要解压的文件解压到该文件夹下。

3.初步使用

i、运行界面

1、运行./nmon_x86_64_centos6就可以进入如下运行界面:

2、按c是查看CPU使用情况,得到如下图所示:

3、依次类推,键入“m”查看系统内存使用情况;键入“d”查看系统磁盘I/O情况;键入“h”查看帮助信息等。

ii、后台命令

./nmon/ nmon_x86_rhel5 -f -N -m /nmon/log -s 30 -c 120

nmon -f -s 30 -c 120
30秒一次连续捕获120次性能数据。
-t 输出进程性能指标

参数含义为:

-f输出文件;

-T输出最耗资源的进程;

-s收集的时间间隔,单位为秒;

-c收集次数。

上面的命令会将系统最耗资源的进程近25秒的资源占用情况,每5s的方式收集一次,共5次,输出到当前目录的.nmon文件中。这个命令输入后,收集工作会在后台执行,因此文件会持续增长,在收集工作完成之前,不要将文件拷贝出来分析,可用ps命令看nmon进程。用ssh或其它ftp工具将生成的nmon文件拷贝出来,再用下载的nmon analyser工具打开,即可转换成Excel文件,在打开nmon analyser时会有宏安全提示,设置为允许即可。

然后得到如下图:

生成localhost_120309_1610.nmon类似的文件。
详细手册:
http://www.ibm.com/developerworks/wikis/display/WikiPtype/nmon+Manual
打开nmon analyser v33g.xls读取日志并进行分析,获得图表。
NMON ANALYSER的使用参考:
http://www.ibm.com/developerworks/wikis/display/Wikiptype/nmonanalyser里面的手册。

其他:

范例1:
自动按天采集数据:
在 crontab 中增加一条记录:

  1. 0 0 * * * nmon -s300 -c288 -f -m /home/ > /dev/null 2>&1

300*288=86400 秒,正好是一天的数据。

范例2:
A、执行命令:#crontab -e
B、在最后一行添加如下命令:

  1. 0 8 * * 1,2,3,4,5 /nmon/scriptn/mon_x86_rhel52 -f -N -m /nmon/log -s 30 -c 1200

表示:
  周一到周五,从早上08点开始,监控10个小时(到18:00整为止),输出到/nmon/log

nmon性能统计工具使用-初认识的更多相关文章

  1. nmon性能分析工具(生成图表)

    1. nmon性能结果生成报告工具下载地址: https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/Power% ...

  2. SQLSERVER执行性能统计工具SQLQueryStress

    SQLSERVER执行时间统计工具SQLQueryStress 有时候需要检测一下SQL语句的执行时间,相信大家都会用SET STATISTICS TIME ON开关打开SQLSERVER内置的时间统 ...

  3. Linux性能统计工具

    Linux下的一些I/O统计工具 http://blog.csdn.net/longxibendi/article/details/36004155

  4. Java虚拟机性能监测工具Visual VM与OQL对象查询语言

    1.Visual VM多合一工具 Visual VM是一个功能强大的多合一故障诊断和性能监控的可视化工具,它集成了多种性能统计工具的功能,使用 Visual VM 可以代替jstat.jmap.jha ...

  5. TCP协议的性能评测工具 — Tcpdive开源啦

    Github地址:https://github.com/fastos/tcpdive 为什么要开发Tcpdive 在过去的几年里,随着移动互联网的飞速发展,整个基础网络已经发生了翻天覆地的变化. 用户 ...

  6. Linux 性能分析工具汇总合集

    出于对Linux操作系统的兴趣,以及对底层知识的强烈欲望,因此整理了这篇文章.本文也可以作为检验基础知识的指标,另外文章涵盖了一个系统的方方面面.如果没有完善的计算机系统知识,网络知识和操作系统知识, ...

  7. [转]Linux性能分析工具汇总合集

    出于对Linux操作系统的兴趣,以及对底层知识的强烈欲望,因此整理了这篇文章.本文也可以作为检验基础知识的指标,另外文章涵盖了一个系统的方方面面.如果没有完善的计算机系统知识,网络知识和操作系统知识, ...

  8. 超全整理!Linux性能分析工具汇总合集

    转自:http://rdc.hundsun.com/portal/article/731.html?ref=myread 出于对Linux操作系统的兴趣,以及对底层知识的强烈欲望,因此整理了这篇文章. ...

  9. (转)超全整理!Linux性能分析工具汇总合集

    超全整理!Linux性能分析工具汇总合集 原文:http://rdc.hundsun.com/portal/article/731.html 出于对Linux操作系统的兴趣,以及对底层知识的强烈欲望, ...

随机推荐

  1. css-ie6下实现最小,最大宽度

    _width: expression((document.documentElement.clientWidth||document.body.clientWidth)<1040?"1 ...

  2. java 缩放函数drawImage理解(个人总结)

    drawImagepublic abstract boolean drawImage(Image img,                                  int dx1,      ...

  3. 关于Java集合

    之前关于java集合认识,虽然理解,但是总是忘记关键点,今明两天写一篇关于集合的随笔

  4. JavaScript Date对象更进一步

    总结分享这个近期开发解决的一个Bug. Javascript的Date对象具有容错性,会自动根据当年的日期根据设置的属性值转换,也就是说Date对象的setDate会影响setMonth,month会 ...

  5. EF Codefirst 初步学习(二)—— 程序管理命令 更新数据库

    前提:搭建成功codefirst相关代码,参见EF Codefirst  初步学习(一)--设置codefirst开发模式 具体需要注意点如下: 1.确保实体类库程序生成成功 2.确保实体表类库不缺少 ...

  6. 前端好的工具集推荐 lodash

    原来用 backbone 的时候, 感觉 underscore 是一个好的工具集,顿时感觉不错,不用自己一直去封装一些组件. 直到我遇到了 lodash,一只发现 web 项目中有依赖这个库的,但是一 ...

  7. Node.js入门 NPM

    参考一 Node入门  七天学会NodeJS  Node.js v4.2.4 手册 & 文档  Node.js 教程 node.js摸石头系列 从零开始学习node.js   What is ...

  8. msyql sql语句

    参考: http://www.cnblogs.com/aspnethot/articles/1397130.html 修改表字段ALTER TABLE table_name CHANGE old_fi ...

  9. Javaweb 第5天 mysql 数据库课程

    MySQL数据库课程 两日大纲 ● 数据库的概念.MySQL快速入门.SQL语言简介 ● 数据库操作.表操作.数据记录操作.数据类型和约束 ● 查询 ● 多表关系.多表连接查询 ● 视图 ● 数据备份 ...

  10. CSU 1639 队长,我想进集训队!

    水题 #include<cstdio> int main() { int x1, x2, x3, u, h; int n; while (~scanf("%d", &a ...