Differences
This shows you the differences between two versions of the page.
linux_wiki:sar [2014/12/03 22:09] billdozor |
linux_wiki:sar [2019/05/25 23:50] |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== sar (system activity report) ====== | ||
- | sar is used for displaying collected activity counters of various OS stats, including CPU, memory, swap, and disk I/O. | ||
- | sar is a command provided by the sysstat package. | ||
- | |||
- | ===== Installation and Configuration ===== | ||
- | 1) Install sysstat (Red Hat or Debian) | ||
- | <code bash> | ||
- | yum install sysstat | ||
- | or | ||
- | apt-get install sysstat | ||
- | </ | ||
- | |||
- | 2) Enable collection | ||
- | <code bash> | ||
- | vim / | ||
- | </ | ||
- | |||
- | Change (Enabled=" | ||
- | |||
- | 3) Modify Collection Interval (optional) | ||
- | <code bash> | ||
- | vim / | ||
- | </ | ||
- | |||
- | Look for a line like this to edit: | ||
- | # Activity reports every 10 minutes everyday | ||
- | 5-55/10 * * * * root command -v debian-sa1 > /dev/null && debian-sa1 1 1 | ||
- | |||
- | 4) Start the service | ||
- | <code bash> | ||
- | service sysstat start | ||
- | </ | ||
- | |||
- | 5) Enable on boot (Red Hat or Debian) | ||
- | <code bash> | ||
- | chkconfig sysstat on | ||
- | or | ||
- | update-rc.d sysstat defaults | ||
- | </ | ||
- | |||
- | ---- | ||
- | |||
- | ===== Usage ===== | ||
- | After sysstat has collected data for a while, you can start to view the information with sar. | ||
- | |||
- | ==== Log location ==== | ||
- | Sar logs to either: | ||
- | * / | ||
- | * / | ||
- | |||
- | With each log file named after the day of the month it is. | ||
- | |||
- | Best by visual example: | ||
- | <code bash> | ||
- | ls -l / | ||
- | -rw-r--r-- 1 root root 116880 Dec 1 22:35 sa01 | ||
- | -rw-r--r-- 1 root root 105984 Dec 2 22:05 sa02 | ||
- | -rw-r--r-- 1 root root 66032 Dec 3 20:15 sa03 | ||
- | </ | ||
- | These files can be read by sar using the "-f < | ||
- | |||
- | ---- | ||
- | |||
- | === CPU Utilization === | ||
- | < | ||
- | sar -u (displays for current day until that point) | ||
- | sar -u 1 5 (display real time CPU every 1 second, 5 times) | ||
- | sar -u -f / | ||
- | </ | ||
- | |||
- | <code bash> | ||
- | Linux 3.13.0-39-generic (dt-bill) 12/03/2014 _x86_64_ (4 CPU) | ||
- | |||
- | 05:22:31 PM LINUX RESTART | ||
- | 05:25:01 PM | ||
- | 05:35:01 PM | ||
- | 05:45:01 PM | ||
- | </ | ||
- | |||
- | Columns: | ||
- | * CPU => Which CPU the rest of the columns are about. (Default is all) | ||
- | * %user => % spent running user level (applications) processes. | ||
- | * %nice => % spent running user level (applications) with nice priority. | ||
- | * %system => % spent running at system level. (kernel) | ||
- | * %iowait => % that CPU(s) were idle while the system was waiting on disk I/O request(s). | ||
- | * %steal => % spent involutarily waiting by virtual CPU(s) while the hypervisor was servicing another virtual processor. | ||
- | * %idle => % that CPU(s) were idle and system was not waiting on disk I/O request(s). | ||
- | |||
- | ---- | ||
- | |||
- | === Memory (RAM) Stats === | ||
- | < | ||
- | sar -r (display todays memory stats) | ||
- | sar -r 2 10 (display real time memory stats every 2 seconds, 10 times) | ||
- | </ | ||
- | |||
- | <code bash> | ||
- | sar -r | ||
- | Linux 3.13.0-39-generic (dt-bill) 12/03/2014 _x86_64_ (4 CPU) | ||
- | |||
- | 05:25:01 PM kbmemfree kbmemused | ||
- | 05:35:01 PM | ||
- | </ | ||
- | |||
- | Columns (probably the only ones you care about): | ||
- | * kbmemfree => memory free in kilobytes | ||
- | * kbmemused => memory used in kilobytes | ||
- | * %memused => % memory used | ||
- | |||
- | ---- | ||
- | |||
- | === Swap Stats === | ||
- | < | ||
- | sar -S (todays swap usage) | ||
- | </ | ||
- | |||
- | <code bash> | ||
- | sar -S | ||
- | Linux 3.13.0-39-generic (dt-bill) 12/03/2014 _x86_64_ (4 CPU) | ||
- | |||
- | 05:25:01 PM kbswpfree kbswpused | ||
- | 05:35:01 PM | ||
- | </ | ||
- | |||
- | Columns: | ||
- | * kbswpfree => Free swap space in kilobytes | ||
- | * kbswpused => Used swap space in kilobytes | ||
- | * %swpused => % used swap space | ||
- | * kbswpcad => Cached swap in kilobytes. This is memory that once was swapped out, is swapped back in but still also is in the swap area (if memory is needed it doesn' | ||
- | * **Explanation**: | ||
- | |||
- | ---- | ||
- | |||
- | === Disk I/O === | ||
- | < | ||
- | sar -b (todays disk I/O and transfer rates) | ||
- | </ | ||
- | |||
- | <code bash> | ||
- | sar -b | ||
- | Linux 3.13.0-39-generic (dt-bill) 12/03/2014 _x86_64_ (4 CPU) | ||
- | |||
- | 05:25:01 PM | ||
- | 05:35:01 PM | ||
- | </ | ||
- | |||
- | Columns: | ||
- | * tps => transfers per second (both disk reads and writes) | ||
- | * rtps => read requests per second | ||
- | * wtps => write requests per second | ||
- | * bread/s => blocks read per second (block = sector = 512 bytes) | ||
- | * bwrtn/s => blocks written per second (block = sector = 512 bytes) | ||
- | |||
- | ---- | ||
- | |||
- | === Network Stats === | ||
- | < | ||
- | sar -n TYPE (todays network statistics) | ||
- | </ | ||
- | |||
- | TYPE can be: | ||
- | * DEV => devices vital stats (eth0, eth1, etc) | ||
- | * EDEV => device failure stats | ||
- | * NFS => NFS client activity | ||
- | * NFSD => NFS server activity | ||
- | * IP => IPv4 network traffic | ||
- | * TCP => TCPv4 network traffic | ||
- | * UDP => UDPv4 network traffic | ||
- | * ALL => All of the above (and more). Warning: this will be very long. | ||
- | |||
- | Example (device stats for just eth1 from 5pm to 6pm today) | ||
- | <code bash> | ||
- | sar -n DEV -s 17:00:00 -e 18:00:00 | grep eth1 | ||
- | 05:25:01 PM | ||
- | 05:35:01 PM eth1 | ||
- | 05:45:01 PM eth1 | ||
- | 05:55:01 PM eth1 | ||
- | Average: | ||
- | </ | ||
- | |||
- | ---- | ||
- | |||
- | === Start and End === | ||
- | Report only specfic time periods | ||
- | |||
- | CPU stats for today, from 6pm to 6:30pm | ||
- | <code bash> | ||
- | sar -u -s 18:00:00 -e 18: | ||
- | </ | ||
- | |||
- | Memory stats 1pm to 3pm, from the 1st day of the month | ||
- | <code bash> | ||
- | sar -r -s 13:00:00 -e 15:00:00 -f / | ||
- | </ |