nmon - 性能监控利器介绍
关于nmon
nmon 是一款小巧的系统监控程序(只有5000行代码),可以用来对CPU、磁盘、内存等资源指标来做实时监控。
之前在做系统性能优化工作时用得较多,觉得非常不错,于是在这里给大家介绍下用法。
如何使用
下载nmon
nmon的代码托管在sourceForge,下载地址
执行程序
chmod +x nmon
./nmon
接下来,按"c"、"m"、"d"可以看到具体的监控数据,比如下图:
整个工具使用还是非常简单的..
生成图表
数据文件
nmon支持将监控过程中的数据输出为xxx.nmon文件。
执行以下命令可以令nmon 将结果输出到数据文件
nmon -s 3 -c 100 -F result.nmon
参数说明
-s 间隔秒数;
-c 监控点数;
-F 输出到数据文件;
也可以定时输出到目录,如下:
crontab -e
0 0 * * * nmon -s 300 -c 288 -f -m /data/nmon > /dev/null 2>&1
参数说明
-f 表示将数据生成到带时间戳的文件(<hostname>_YYYYMMDD_HHMM.nmon)
-m 数据文件生成的目录
更多的选项可以通过nmon -h获得
接下来,生成图表需要依赖于另外的工具,目前比较常用的是以下两个:
nmon analyzer
nmon analyzer是IBM工程师(Stephen Atkins)开发的一款基于Excel生成图表的工具,下载地址
使用方式:
- 打开 **nmon_analyser_v34a.xls;
- 点击analyse nmon data按钮,选择nmon数据文件;
- 指定生成结果文件路径。
最终生成的文件效果如下:
更多的介绍可以参考这里
nmonchart
这也是官方推荐的一款工具,nmonchart是一个shell脚本,通过对nmon数据文件进行解析后,会输出一个带各种图表的html页面。
下载地址
执行以下命令,将nmon数据文件转换为html文件:
chmod +x nmonchart
./nmonchart result.nmon result.html
PS: 部分linux os可能不支持 ksh,可以通过编辑nmonchart脚本,将/usr/bin/ksh 改为/usr/bin/sh
使用浏览器打开 result.html文件,会看到如下图表:
值得一提的是,nmonchart的图表是基于强大的google chart制作的。
需要浏览器支持HTML5,同时还需要联网使用(需使用获得 google的在线JS)
相关参考
nmon-screenshot
nmonchart-wiki
nmon - 性能监控利器介绍的更多相关文章
- Performance — 前端性能监控利器
Performance是一个做前端性能监控离不开的API,最好在页面完全加载完成之后再使用,因为很多值必须在页面完全加载之后才能得到.最简单的办法是在window.onload事件中读取各种数据. 大 ...
- MySQL 的实时性能监控利器【转】
操作系统及MySQL数据库的实时性能状态数据尤为重要,特别是在有性能抖动的时候,这些实时的性能数据可以快速帮助你定位系统或MySQL数据库的性能瓶颈,就像你在Linux系统上使用「top,sar,io ...
- nmon 性能监控网页结果显示——EasyNmon
首先,看看最终展示的结果显示样式: 报告界面: 1.安装包下载地址:https://github.com/mzky/easyNmon 2.下载后有2个压缩文件: 其中,nmon16g_x86中含有不同 ...
- MySQL 的实时性能监控利器
操作系统及MySQL数据库的实时性能状态数据尤为重要,特别是在有性能抖动的时候,这些实时的性能数据可以快速帮助你定位系统或MySQL数据库的性能瓶颈,就像你在Linux系统上使用「top,sar,io ...
- [转] Performance — 前端性能监控利器
timing (PerformanceTiming) 从输入url到用户可以使用页面的全过程时间统计,会返回一个PerformanceTiming对象,单位均为毫秒 按触发顺序排列所有属性:(更详细标 ...
- [转] Performance_js中计算网站性能监控利器
1.Performance方法 Performance提供的方法可以灵活使用,获取到页面加载等标记的耗时情况. performance.now() //返回当前到页面打开时刻的耗时,精确到千分之一毫秒 ...
- nmon性能监控
1.nmon下载地址 2../nmon_x86_rhel52 3.根据上面提示的快捷键进行输入即可显示相应的资源耗用情况,如输入:c.m.d(显示cpu.内存.磁盘使用情况) 4.输入数据到文件 ./ ...
- Linux性能监控分析命令(五)—free命令介绍
性能监控分析的命令包括如下:1.vmstat2.sar3.iostat4.top5.free6.uptime7.netstat8.ps9.strace10.lsof 命令介绍:free命令是监控Lin ...
- Linux性能监控分析命令(三)—iostat命令介绍
性能监控分析的命令包括如下: 1.vmstat 2.sar 3.iostat 4.top 5.free 6.uptime 7.netstat 8.ps 9.strace 10.lsof 命令介绍: i ...
随机推荐
- koa+mysql+vue+socket.io全栈开发之前端篇
React 与 Vue 之间的对比,是前端的一大热门话题. vue 简易上手的脚手架,以及官方提供必备的基础组件,比如 vuex,vue-router,对新手真的比较友好:react 则把这些都交给社 ...
- Azure Devops/Tfs 编译的时候自动修改版本号
看到阿迪王那边出品了一个基于Azure Devops自增版本号 链接 http://edi.wang/post/2019/3/1/incremental-build-number-for-net-c ...
- Java GC性能优化实战
GC优化是必要的吗? 或者更准确地说,GC优化对Java基础服务来说是必要的吗?答案是否定的,事实上GC优化对Java基础服务来说在有些场合是可以省去的,但前提是这些正在运行的Java系统,必须包含以 ...
- Git常用命令拾遗
git三个区 下图是git的提交流程,是入门或者说是理解git的重要图谱. 我们可以看到这里有三个区:工作区.暂存区.提交区.截止到commit阶段,其实都只是在本地离线操作,真正同步到中心服务器,需 ...
- Linq中 AsQueryable(), AsEnumerable()和ToList()的区别和用法
Linq中 AsQueryable(), AsEnumerable()和ToList()的区别和用法:在写LINQ语句的时候,往往会看到AsEnumerable() ,AsQueryable() 和T ...
- 学JAVA第二十天,接触异常处理,自定义异常
1.java.lang.NullPointerException(经常报)(运行时异常) 属于运行时异常,是编译器无法预知的异常,比如你定义了一个引用变量String a,但是你确没有用new关键字去 ...
- Java虚拟机三:OutOfMemoryError异常分析
根据Java虚拟机规范,虚拟机内存中除过程序计数器之外的运行时数据区域都会发生OutOfMemoryError(OOM),本文将通过实际例子验证分析各个数据区域OOM的情况.为了更贴近生产,本次所有例 ...
- osi参考模型(开放系统互连参考模型)
自互联网诞生以来,随着网络飞速发展,用户迫切要求能在不同体系结构的网络空间交换信息,使得不同的网络能够互联起来. 国际化标准组织(International Organization for Stan ...
- Android studio简单布局之view基本属性
本人属于自学上路,目前是在入门阶段,所以有些内容实质性比较少,请各位大佬多多包涵. 视图view的基本属性: layout_margin:定义视图与周围视图之间的空白距离 layout_padding ...
- pytest框架之命令行参数1
前言 pytest是一款强大的python自动化测试工具,可以胜任各种类型或者级别的软件测试工作.pytest提供了丰富的功能,包括assert重写,第三方插件,以及其他测试工具无法比拟的fixtur ...