linux 牛叉的监控指标图像化渲染工具kSar

目录

11.32  sar 命令

11.32.1 命令详解

11.32.2 命令参数

11.32.3 常用参数

11.33 kSar 命令

11.33.1 命令详解 

11.33.2 kSar使用


11.32  sar 命令

11.32.1 命令详解

sar 命令的输出能够用于识别服务器瓶颈。

11.32.2 命令参数

$ sar --help

Usage: sar [ options ] [ <interval> [ <count> ] ]

Options are:

[ -A ] [ -B ] [ -b ] [ -C ] [ -d ] [ -H ] [ -h ] [ -p ] [ -q ] [ -R ]

[ -r ] [ -S ] [ -t ] [ -u [ ALL ] ] [ -V ] [ -v ] [ -W ] [ -w ] [ -y ]

[ -I { <int> [,...] | SUM | ALL | XALL } ] [ -P { <cpu> [,...] | ALL } ]

[ -m { <keyword> [,...] | ALL } ] [ -n { <keyword> [,...] | ALL } ]

[ -j { ID | LABEL | PATH | UUID | ... } ]

[ -f [ <filename> ] | -o [ <filename> ] | -[0-9]+ ]

[ -i <interval> ] [ -s [ <hh:mm:ss> ] ] [ -e [ <hh:mm:ss> ] ]

 

 

-A:所有报告的总和

-u:输出CPU使用情况的统计信息

-v:输出inode、文件和其他内核表的统计信息

-d:输出每一个块设备的活动信息,类似iostat

-r:输出内存和交换空间的统计信息

-b:显示I/O和传送速率的统计信息

-B:显示内存与“磁盘或SWAP空间”交换情况,监控分页情况

-a:文件读写情况

-c:输出进程统计信息,每秒创建的进程数

-R:输出内存页面的统计信息

-y:终端设备活动情况

-w:输出每秒上下文切换数

-W:输出系统交换活动信息

11.32.3 常用参数

11.32.3.1 查看CPU的使用情况

$ sar -u 1 10

linux 牛叉的监控指标图像化渲染工具kSar

 

1 是每个1秒执行一次

10 一共执行多少次

 

参数解释:

CPU:all 表示统计信息为所有 CPU 的平均值。

%user:显示在用户级别(application)运行使用 CPU 总时间的百分比。

%nice:显示在用户级别,用于nice操作,所占用 CPU 总时间的百分比。

%system:在核心级别(kernel)运行所使用 CPU 总时间的百分比。

%iowait:显示用于等待I/O操作占用 CPU 总时间的百分比。

%steal:管理程序(hypervisor)为另一个虚拟进程提供服务而等待虚拟 CPU 的百分比。

%idle:显示 CPU 空闲时间占用 CPU 总时间的百分比。

 

结果分析

1. 若 %iowait 的值过高,表示硬盘存在I/O瓶颈

2. 若 %idle 的值高但系统响应慢时,有可能是 CPU 等待分配内存,此时应加大内存容量

3. 若 %idle 的值持续低于1,则系统的 CPU 处理能力相对较低,表明系统中最需要解决的资源是 CPU 。

11.32.3.2 查看I/O和传输率统计数据

$ sar -b 1 10

linux 牛叉的监控指标图像化渲染工具kSar

 

tps:每秒钟物理设备的 I/O 传输总量

rtps:每秒钟从物理设备读入的数据总量

wtps:每秒钟向物理设备写入的数据总量

bread/s:每秒钟从物理设备读入的数据量,单位为 块/s

bwrtn/s:每秒钟向物理设备写入的数据量,单位为 块/s

 

11.32.3.3 查看内存分页统计数据

$ sar -B 1 10

linux 牛叉的监控指标图像化渲染工具kSar

pgpgin/s:表示每秒从磁盘或SWAP置换到内存的字节数(KB)

pgpgout/s:表示每秒从内存置换到磁盘或SWAP的字节数(KB)

fault/s:每秒钟系统产生的缺页数,即主缺页与次缺页之和(major + minor)

majflt/s:每秒钟产生的主缺页数.

pgfree/s:每秒被放入空闲队列中的页个数

pgscank/s:每秒被kswapd扫描的页个数

pgscand/s:每秒直接被扫描的页个数

pgsteal/s:每秒钟从cache中被清除来满足内存需要的页个数

%vmeff:每秒清除的页(pgsteal)占总扫描页(pgscank+pgscand)的百分比

11.32.3.4 查看块设备统计数据

$ sar -d 1 10

linux 牛叉的监控指标图像化渲染工具kSar

参数-p可以打印出sda,hdc等磁盘设备名称,如果不用参数-p,设备节点则有可能是dev8-0,dev22-0

tps:每秒从物理磁盘I/O的次数.多个逻辑请求会被合并为一个I/O磁盘请求,一次传输的大小是不确定的.

rd_sec/s:每秒读扇区的次数.

wr_sec/s:每秒写扇区的次数.

avgrq-sz:平均每次设备I/O操作的数据大小(扇区).

avgqu-sz:磁盘请求队列的平均长度.

await:从请求磁盘操作到系统完成处理,每次请求的平均消耗时间,包括请求队列等待时间,单位是毫秒(1秒=1000毫秒).

svctm:系统处理每次请求的平均时间,不包括在请求队列中消耗的时间.

%util:I/O请求占CPU的百分比,比率越大,说明越饱和.

 

分析结果如下:

1、 avgqu-sz 的值较低时,设备的利用率较高。

2、当%util的值接近 100% 时,表示设备带宽已经占满。

11.32.3.5 查看网络设备的制定的统计数据

# sar -n DEV 1 10

# sar -n EDEV 1 10

11.32.3.6 查看 CPU 特定的统计数据

# sar -P ALL

# Only 1st CPU stats

# sar -P 1 1 10

 

11.32.3.7 查看队列长度和平均负载的统计数据

# sar -q 1 10

linux 牛叉的监控指标图像化渲染工具kSar

 

输出项说明:

runq-sz:运行队列的长度(等待运行的进程数)

plist-sz:进程列表中进程(processes)和线程(threads)的数量

ldavg-1:最后1分钟的系统平均负载(System load average)

ldavg-5:过去5分钟的系统平均负载

ldavg-15:过去15分钟的系统平均负载

11.32.3.8 查看内存和交换空间的使用统计数据

# sar -r 1 10

# sar -R 1 10

11.32.3.9 查看 inode、文件、和其它内核表统计数据状态

# sar -v 1 10

linux 牛叉的监控指标图像化渲染工具kSar

 

输出项说明:

dentunusd:目录高速缓存中未被使用的条目数量

file-nr:文件句柄(file handle)的使用数量

inode-nr:索引节点句柄(inode handle)的使用数量

pty-nr:使用的pty数量

11.32.3.10 查看系统切换活动统计数据

# sar -w 1 10

linux 牛叉的监控指标图像化渲染工具kSar

 

pswpin/s:每秒系统换入的交换页面(swap page)数量

pswpout/s:每秒系统换出的交换页面(swap page)数量

11.33 kSar 命令

11.33.1 命令详解 

sar 命令的输出能够用于识别服务器瓶颈。但是,分析 sar 命令提供的信息可能比较困难,所以要使用 kSar 工具。kSar 工具可以将 sar 命令的输出绘制成基于时间周期的、易于理解的图表。

 

官网介绍:

https://github.com/vlsi/ksar

11.33.2 kSar使用

11.33.2.1 下载文件

 

首先要确保你的机器上 JAVA jdk 已安装并能够正常工作,建议把服务器上文件下载下来,在win上运行ksar,点击Data加载数据文件即可,运行如下:

$ java -jar ksar-5.2.4-SNAPSHOT-all.jar

 

linux 牛叉的监控指标图像化渲染工具kSar

 

 

 

11.32.2.2 生成服务器的数据

# sar -A 1 10 >> xiaoxu.txt

 -A : 是生成cpu,磁盘,网络的数据

1 : 一秒执行一次

10 : 执行多少次

11.32.2.3 查看效果

点击data加载数据即可显示以下效果

linux 牛叉的监控指标图像化渲染工具kSar

 

11.32.2.4 把数据导成PDF文件

 

linux 牛叉的监控指标图像化渲染工具kSar

linux 牛叉的监控指标图像化渲染工具kSar

linux 牛叉的监控指标图像化渲染工具kSar

linux 牛叉的监控指标图像化渲染工具kSar

linux 牛叉的监控指标图像化渲染工具kSar

这个软件简直太强大了,还有目录结构方便查看,以后又有时间约会了