1 使用split命令
如何减小.nmon文件的大小呢?其实操作系统已经提供了很有用的文件分割命令,即split。
split是Linux/Unix自带的系统命令,一般的使用语法如下:
split [-<行数>][-b <字节>][-C <字节>][-l <行数>][分割的文件名][输出的文件名]
参数:
-<行数>或-l <行数> 指定每多少行要切成一个小文件。
-b <字节> 指定每多少字节要切成一个小文件。支持单位m,k。
-C <字节> 与-b参数类似,但切割时尽量维持每行的完整性。
下面以一个大小为18M左右的8hours.nmon文件为例,详细介绍如何使用split命令把它分割成Nmon_analyser工具可以解析的文件,并且最终合并成为一个完整的Excel报告。
首先登录Linux系统,在8hours.nmon文件所在目录下,执行“split -l 100000 8hours.nmon 8hours.nmon”命令,生成的文件如下:
可以看到,18M大小的结果文件,分割成每个文件10W行,总计生成5个子文件。分割的子文件个数不宜太多,子文件太多的话,合并时工作量比较大;子文件太少的话,单个子文件过大,Nmon_analyser还是无法处理。
把生成的子文件拷贝到Windows系统下,将子文件导入Nmon_analyser工具进行解析,第一个文件8hours.nmonaa没有问题,可以成功生成报告,但从第二个开始报错,解析失败。使用UltraEdit或其他文本工具打开8hours.nmonaa和8hours.nmonab两个文件,比较它们的内容,发现第一个文件里面有完整的头文件:
第二个文件里面只有数据文件,没有头文件:
按照第3.1节的介绍,没有头文件的.nmon是无法被解析的,处理的方法也很简单,把头文件拷贝到除了第一个文件外的所有文件即可。需要注意的头文件的内容有哪些,我们看一下第一个文件的内容:
从上图可以看到,从第1002行开始,已经是具体的监控数据信息了,所以从第1行到1001行就是头文件的内容,将该内容拷贝到其他几个.nmon文件中,然后使用解析工具Nmon_anaylzer生成子报告。
打开生成的Excel报告文件,发现监控的各个时间点都变成无法识别的数字,如下图:
再次检查各个子文件的区别,发现由于之前把一个监控数据文件分割成了多个,所以每个数据文件都不是完整的,虽然添加了头文件,但是除了第一个文件外,其他文件的起始时间可能是在上一个子文件里的,所以就造成了子文件无法获取监控时间起点的问题。比如第一个结果文件最后的数据如下:
第二个结果文件最开始的数据如下图:
注意上图的第一行,只有监控数据,没有监控时间,这样在Nmon_analyser解析该文件时,由于没有监控的起始时间,导致后面的监控时间出现混乱,所以除了第一个子文件外,后面每个子文件都需要添加监控的起始时间。方法是将前一个数据文件最后一次出现的时间数据直接拷贝到当前文件第一行(不包括头文件)即可。
所有的子文件都生成结果报告后,下面的工作就是合并各个报告,生成一个完整的监控结果报告。根据目前实验室性能测试报告的数据要求,仅进行CPU和内存数据的合并。
CPU数据的合并涉及SYS_SUMM和CPU_ALL两个sheet,首先按照数据产生的先后顺序,把所有子文件CPU_ALL的数据拷贝到第一个子文件的CPU_ALL,记录拷贝之后的数据总行数,本例中是3061行,同时计算各列的平均值和最大值(实际按照报告要求,只计算CPU%一列即可),如下图:
SYS_SUMM中的CPU的AVG和MAX值即来自上图中的数据。下面介绍如何生成SYS_SUMM中的CPU坐标图,在拷贝所有CPU_ALL的数据到第一个子文件之后,查看SYS_SUMM中的CPU坐标图:
可以看到,横轴的时间没有变化,还是第一个子文件的时段,需要根据CPU_ALL的数据进行调整,直接点击CPU曲线,可以看到sheet表格上方出现了CPU曲线的生成公式:
显然曲线的生成公式没有包含合并的CPU数据,所以需要修改公式,修改最大行数为合并后的行数,即3061行,修改后的公式如下:
=SERIES(CPU_ALL!$F$1,CPU_ALL!$A$2:$A$3061,CPU_ALL!$F$2:$F$3061,1)
生成的CPU曲线图如下:
可以看到,曲线图已经包含了所有的CPU监控数据,再修改Avg和Max的值为实际值,即完成了CPU监控数据的整合。
内存监控数据的合并比较简单,将所有的数据拷贝到第一个子文件中名为MEM的sheet中,然后计算Max、Min和Average的值即可。
相关推荐
nmon用来配合打开.nmon文件用的linux文件,要配置nmon入门使用手册的说明一起使用的,按照那个说明就知道怎么使用了
在"nmon监控分析--用于生成nmon文件的分析图表"的主题中,我们将深入探讨nmon的使用方法、数据分析以及图表生成。 1. **nmon的基本使用** - **安装nmon**: 在大多数Linux发行版中,可以通过包管理器如`apt`或`yum`...
这是我们项目中nmon实际分析后,并且制作图表的一个好的例子
nmonvisualizer, 用于分析NMON系统文件的Java GUI工具 NMON可视化工具NMON可视化工具是一个用于分析来自AIX和Linux的NMON系统文件的Java GUI工具。 它还解析IOStat文件。IBM详细GC日志。Perfmon CSV数据和JSON数据。...
nmon分析文件指标详解,详细的描述NMON的所有指标!
【nmon + nmon analyser 文件压缩包】是一款专为 CentOS 7.3.1611 操作系统设计的性能监控工具集,包含了nmon(Nigel's Performance Monitor)和nmon analyser两个组件。nmon是Linux系统中一个强大的性能监控工具,...
【nmon监控文件及解析文件】是一套针对Linux系统性能监控和分析的工具,它能够提供详尽的系统资源使用情况,包括CPU、内存、磁盘I/O、网络等关键性能指标。Nmon(Nigel's Performance Monitor)由Nigel Griffiths...
本文件用来分析nmon在监控系统cup运行情况产生的文件,并生成excel监控报告
1、针对nmon监控结果进行分析,比传统nmon analyser v61使用宏进行数据解析展示更便捷,10个监控结果文件约10秒分析完成并生成对应的excel与html结果 2、使用pyecharts进行数据可视化展示,展示所有nmon监控指标的...
nmon,帮助在一个屏幕上显示所有重要的性能优化信息,并动态地对其进行更新。
用于服务器资源监控
UOS系统nmon监控工具安装文件。运行nmon时,报错: nmon安装出现错误error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory 解决方法: sudo apt ...
而nmon_analyser_34a则是针对nmon生成的数据文件进行深度分析的工具。它能帮助我们更有效地理解和解读nmon收集到的信息。通过nmon_analyser,我们可以生成详细的性能报告,包括趋势图、统计摘要和峰值时段等,这些...
例如,`nmon -f -t -C -s 5 -c 100`将每5秒收集一次数据,持续100次(即500秒),并将结果保存到当前目录的nmon_data文件中。 **3. 数据分析** Nmon生成的CSV文件包含丰富的性能数据,包括CPU利用率、内存使用、...
**Nmon监控文件分析工具详解** Nmon,全称Nigel's Performance Monitor,是由IBM的Nigel Griffiths开发的一款强大的性能监控工具,主要用于Linux和AIX系统。它能够实时显示和记录系统的CPU、内存、磁盘I/O、网络...
Nmon与nmon_analyser工具下载,附上使用说明: nmon使用(linux举例) 1、 在linuxhome 目录下创建nmon文件夹:# mkdir nmon 2、 上传 nmon16e_mpginc....2、点击 analyze nmon data,选择图上nmon产生的nmon文件即可
nmon分析文件指标详解