sar命令介绍

  sar(System Activity Reporter):Collect, report, or save system activity information

  1、常用选项:

  1)-u:报告CPU使用情况。输出包括%user、%nice、%system、%iowait(Percentage of time that the CPU or CPUs were idle during which the system had an outstanding disk I/O request,即CPU空转且期间有未完成的磁盘I/O请求的时间的占比)、%idle(CPU空转且期间无未完成I/O的时间的占比)等。

  2)-v:报告inode、文件和其他内核表的状态。输出包括dentunusd(目录高速缓存中未用的cache条目数)、file-sz(已用的文件句柄数)、inode-sz、super-sz(内核已分配的超级块句柄数)、%super-sz等。

  3)-n{DEV|EDEV|NFS|NFSD|SOCK|IP|ICMP|TCP|ETCP|UDP|... ...|FULL}:报告网络的统计数据。

  关键词是DEV时,报告的是网络设备(接口)的统计数据。输出包括IFACE、rxpck/s(每秒收包量)、txpck/s(每秒发包量)、rxbyt/s、txbyt/s、rxmcst/s(每秒收到的多播的包量)等。如sar -n DEV 1 10:每秒一次,共10次,报告网络设备的统计数据。

  关键词是SOCK时,报告的是使用中的sockets的统计数据。输出包括:totsck(已用socket数)、tcpsck(当前在用的tcp socket数)、udpsck、rawsck等。

  关键词是TCP时,报告的是关于TCPv4的统计数据。输出包括active/s(每秒TCP连接从CLOSED状态直接变迁到SYN-SENT状态的次数)、passive/s(每秒TCP连接从LISTEN状态直接变迁到SYN-RCVD状态的次数)等。

  关键词是ETCP时,报告的是关于TCPv4错误的统计数据。输出包括atmptf/s(每秒TCP连接从SYN-SENT/SYN-RCVD状态直接变迁到CLOSED状态的次数,加上每秒TCP连接从SYN-RCVD状态直接变迁到LISTEN状态的次数)、retrans/s(每秒重传的TCP段的总数量)等。

  关键词是FULL时,相当于指定以上所有的关键词。

  4)-d:报告每个块设备的使用情况,设备一般使用dev m-n表示,其中m和n分别表示主次设备号,这里-p选项可以指定用设备名称来表示设备。输出包括tps(每秒传输请求的次数,逻辑上的多个I/O请求会被物理地合并为一个)、rd_sec/s(每秒从设备读的扇区数,每个扇区512B)、wr_sec/s、avgrq-sz(下发到设备的请求的平均大小,单位是扇区)、await(每个I/O请求被服务的平均时间,单位是毫秒,包括在队列里的时间和实际上被服务的时间)、%util(I/O请求被下发到设备的时间占全部CPU时间的比值)等。

  5)-b:报告I/O和传输速率的统计情况。输出包括tps(每秒传输请求的次数)、rtps、wtps、bread/s(block大小为512B)、bwrtn/s等。

  6)-W:报告页面交换的统计情况。输出包括pswpin/s(每秒换入的页面总数)、pswpout/s(每秒换出的页面总数)。

  7)-q:报告队列长度和平均负载。输出包含runq-sz(运行队列的长度,即等待运行时间的任务数)、ldavg-1(系统在过去1min的平均负载)、ldavg-5、ldavg-15、blocked(当前阻塞着的、等待I/O完成的任务数)等。

  8)-r:报告内存的使用情况。

  9)-o [ filename ]:将收集到的数据以二进制形式保存到指定文件(默认为/var/log/sa/sa*)。实际上sar通过调用sadc进行数据的收集。

  10)-f [ filename ]:从指定文件(默认为/var/log/sa/sa*)中读取数据。

不断学习中。。。

原文地址:https://www.cnblogs.com/hanerfan/p/3539964.html