关于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生成图表的工具,下载地址

使用方式:

  1. 打开 **nmon_analyser_v34a.xls;
  2. 点击analyse nmon data按钮,选择nmon数据文件;
  3. 指定生成结果文件路径。

最终生成的文件效果如下:



更多的介绍可以参考这里

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 - 性能监控利器介绍的更多相关文章

  1. Performance — 前端性能监控利器

    Performance是一个做前端性能监控离不开的API,最好在页面完全加载完成之后再使用,因为很多值必须在页面完全加载之后才能得到.最简单的办法是在window.onload事件中读取各种数据. 大 ...

  2. MySQL 的实时性能监控利器【转】

    操作系统及MySQL数据库的实时性能状态数据尤为重要,特别是在有性能抖动的时候,这些实时的性能数据可以快速帮助你定位系统或MySQL数据库的性能瓶颈,就像你在Linux系统上使用「top,sar,io ...

  3. nmon 性能监控网页结果显示——EasyNmon

    首先,看看最终展示的结果显示样式: 报告界面: 1.安装包下载地址:https://github.com/mzky/easyNmon 2.下载后有2个压缩文件: 其中,nmon16g_x86中含有不同 ...

  4. MySQL 的实时性能监控利器

    操作系统及MySQL数据库的实时性能状态数据尤为重要,特别是在有性能抖动的时候,这些实时的性能数据可以快速帮助你定位系统或MySQL数据库的性能瓶颈,就像你在Linux系统上使用「top,sar,io ...

  5. [转] Performance — 前端性能监控利器

    timing (PerformanceTiming) 从输入url到用户可以使用页面的全过程时间统计,会返回一个PerformanceTiming对象,单位均为毫秒 按触发顺序排列所有属性:(更详细标 ...

  6. [转] Performance_js中计算网站性能监控利器

    1.Performance方法 Performance提供的方法可以灵活使用,获取到页面加载等标记的耗时情况. performance.now() //返回当前到页面打开时刻的耗时,精确到千分之一毫秒 ...

  7. nmon性能监控

    1.nmon下载地址 2../nmon_x86_rhel52 3.根据上面提示的快捷键进行输入即可显示相应的资源耗用情况,如输入:c.m.d(显示cpu.内存.磁盘使用情况) 4.输入数据到文件 ./ ...

  8. Linux性能监控分析命令(五)—free命令介绍

    性能监控分析的命令包括如下:1.vmstat2.sar3.iostat4.top5.free6.uptime7.netstat8.ps9.strace10.lsof 命令介绍:free命令是监控Lin ...

  9. Linux性能监控分析命令(三)—iostat命令介绍

    性能监控分析的命令包括如下: 1.vmstat 2.sar 3.iostat 4.top 5.free 6.uptime 7.netstat 8.ps 9.strace 10.lsof 命令介绍: i ...

随机推荐

  1. loj536 「LibreOJ Round #6」花札

    一眼二分图博弈,于是我们可以拿到69分的好成绩. 二分图暴力加边的数目是O(n^2)的,于是我们考虑网络流优化建图,将alice的每个牌向其的颜色和编号节点连边,bob的每个牌由其颜色和编号节点向其连 ...

  2. bzoj5251 [2018多省省队联测]劈配

    直接网络流模拟即可AC. 可持久化+暴力=90分, 可持久化+二分=30分, 暴力加边+二分=100分. 我也很无奈啊. Ivan便涨红了脸,额上的青筋条条绽出,争辩道,“memcpy也是可持久化…… ...

  3. [HNOI2015]菜肴制作 拓扑序

    逆序最大字典序拓扑序 反向建边,逆序字典序最大.. #include<cstdio> #include<cstring> #include<iostream> #i ...

  4. BZOJ3629(JLOI2014)聪明的燕姿

    (⊙﹏⊙)我交了好久,有坑啊...(如果没有匹配的话,即输出0种情况要记得换行...) 就是搜索,加上一点数论,并不太难... #include<cstdio> #include<c ...

  5. Https协议与HttpClient的实现

    一.背景 HTTP是一个传输内容有可读性的公开协议,客户端与服务器端的数据完全通过明文传输.在这个背景之下,整个依赖于Http协议的互联网数据都是透明的,这带来了很大的数据安全隐患.想要解决这个问题有 ...

  6. #Java学习之路——基础阶段二(第九篇)

    我的学习阶段是跟着CZBK黑马的双源课程,学习目标以及博客是为了审查自己的学习情况,毕竟看一遍,敲一遍,和自己归纳总结一遍有着很大的区别,在此期间我会参杂Java疯狂讲义(第四版)里面的内容. 前言: ...

  7. C#ComboBox控件“设置 DataSource 属性后无法修改项集合”的解决方法

    在使用ComboBox控件时,遇到了重新绑定赋值出问题的情况.正常情况下,对于数据重新赋值的或者绑定数据源的时候,为了防止数据出现问题,都会先清空原来数据,所以就这样写了,但是没有相当恰恰这样写就出现 ...

  8. Python爬虫入门教程 57-100 python爬虫高级技术之验证码篇3-滑动验证码识别技术

    滑动验证码介绍 本篇博客涉及到的验证码为滑动验证码,不同于极验证,本验证码难度略低,需要的将滑块拖动到矩形区域右侧即可完成. 这类验证码不常见了,官方介绍地址为:https://promotion.a ...

  9. 微服务架构之「 API网关 」

    在微服务架构的系列文章中,前面已经通过文章<架构设计之「服务注册 」>介绍过了服务注册的原理和应用,今天这篇文章我们来聊一聊「 API网关 」. 「 API网关 」是任何微服务架构的重要组 ...

  10. 如何理解Axis?

    前言 只有光头才能变强. 回顾前面: 从零开始学TensorFlow[01-搭建环境.HelloWorld篇] 什么是TensorFlow? TensorFlow读写数据 不知道大家最开始接触到axi ...