20 comandos úteis de utilitários 'Sysstat' (mpstat, pidstat, iostat e sar) para monitoramento de desempenho Linux
Em nosso último artigo, aprendemos como instalar e atualizar o pacote sysstat e entender brevemente os utilitários que acompanham o pacote.
- Sysstat – Ferramenta de monitoramento de atividades de uso e desempenho para Linux
Hoje vamos trabalhar com alguns exemplos práticos interessantes dos utilitários mpstat, pidstat, iostat e sar, o que pode nos ajudar a identificar os problemas. Temos diferentes opções de utilização desses utilitários, ou seja, você pode disparar os comandos manualmente com diferentes opções para diferentes tipos de trabalho ou pode criar seus scripts customizados de acordo com suas necessidades. Você sabe que os administradores de sistemas são sempre um pouco preguiçosos e sempre tentam descobrir a maneira mais fácil de fazer as coisas com o mínimo de esforço.
mpstat – Estatísticas de processadores
1. Usar o comando mpstat sem qualquer opção exibirá a média global de atividades por todas as CPUs.
tecmint@tecmint ~ $ mpstat
Linux 3.11.0-23-generic (linux-console.net) Thursday 04 September 2014 _i686_ (2 CPU)
12:23:57 IST CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle
12:23:57 IST all 37.35 0.01 4.72 2.96 0.00 0.07 0.00 0.00 0.00 54.88
2. Usar mpstat com a opção '-P' (Indicar número do processador) e 'ALL' exibirá estatísticas sobre todas as CPUs, uma por uma, começando em 0. 0 será o primeiro.
tecmint@tecmint ~ $ mpstat -P ALL
Linux 3.11.0-23-generic (linux-console.net) Thursday 04 September 2014 _i686_ (2 CPU)
12:29:26 IST CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle
12:29:26 IST all 37.33 0.01 4.57 2.58 0.00 0.07 0.00 0.00 0.00 55.44
12:29:26 IST 0 37.90 0.01 4.96 2.62 0.00 0.03 0.00 0.00 0.00 54.48
12:29:26 IST 1 36.75 0.01 4.19 2.54 0.00 0.11 0.00 0.00 0.00 56.40
3. Para exibir as estatísticas para N número de iterações após intervalo de n segundos com a média de cada CPU, use o seguinte comando.
tecmint@tecmint ~ $ mpstat -P ALL 2 5
Linux 3.11.0-23-generic (linux-console.net) Thursday 04 September 2014 _i686_ (2 CPU)
12:36:21 IST CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle
12:36:23 IST all 53.38 0.00 2.26 0.00 0.00 0.00 0.00 0.00 0.00 44.36
12:36:23 IST 0 46.23 0.00 1.51 0.00 0.00 0.00 0.00 0.00 0.00 52.26
12:36:23 IST 1 60.80 0.00 3.02 0.00 0.00 0.00 0.00 0.00 0.00 36.18
12:36:23 IST CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle
12:36:25 IST all 34.18 0.00 2.30 0.00 0.00 0.00 0.00 0.00 0.00 63.52
12:36:25 IST 0 31.63 0.00 1.53 0.00 0.00 0.00 0.00 0.00 0.00 66.84
12:36:25 IST 1 36.73 0.00 2.55 0.00 0.00 0.00 0.00 0.00 0.00 60.71
12:36:25 IST CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle
12:36:27 IST all 33.42 0.00 5.06 0.25 0.00 0.25 0.00 0.00 0.00 61.01
12:36:27 IST 0 34.34 0.00 4.04 0.00 0.00 0.00 0.00 0.00 0.00 61.62
12:36:27 IST 1 32.82 0.00 6.15 0.51 0.00 0.00 0.00 0.00 0.00 60.51
4. A opção ‘I’ imprimirá o número total de estatísticas de interrupção por processador.
tecmint@tecmint ~ $ mpstat -I
Linux 3.11.0-23-generic (linux-console.net) Thursday 04 September 2014 _i686_ (2 CPU)
12:39:56 IST CPU intr/s
12:39:56 IST all 651.04
12:39:56 IST CPU 0/s 1/s 6/s 8/s 9/s 12/s 16/s 17/s 20/s 21/s 22/s 23/s 45/s 46/s 47/s NMI/s LOC/s SPU/s PMI/s IWI/s RTR/s RES/s CAL/s TLB/s TRM/s THR/s MCE/s MCP/s ERR/s MIS/s
12:39:56 IST 0 76.27 1.73 0.00 0.00 0.42 0.33 0.00 0.06 11.46 0.00 0.00 0.01 7.62 1.87 0.05 0.33 182.26 0.00 0.33 3.03 0.00 22.66 0.16 5.14 0.00 0.00 0.00 0.00 0.00 0.00
12:39:56 IST 1 70.88 1.44 0.00 0.00 0.41 0.33 0.00 27.91 10.33 0.00 0.00 0.01 7.27 1.79 0.05 0.32 184.11 0.00 0.32 5.17 0.00 22.09 0.13 4.73 0.00 0.00 0.00 0.00 0.00 0.00
12:39:56 IST CPU HI/s TIMER/s NET_TX/s NET_RX/s BLOCK/s BLOCK_IOPOLL/s TASKLET/s SCHED/s HRTIMER/s RCU/s
12:39:56 IST 0 0.00 116.49 0.05 0.27 7.33 0.00 1.22 10.44 0.13 37.47
12:39:56 IST 1 0.00 111.65 0.05 0.41 7.07 0.00 56.36 9.97 0.13 41.38
5. Obtenha todas as informações acima em um comando, ou seja, equivalente a “-u -I ALL -p ALL“.
tecmint@tecmint ~ $ mpstat -A
Linux 3.11.0-23-generic (linux-console.net) Thursday 04 September 2014 _i686_ (2 CPU)
12:41:39 IST CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle
12:41:39 IST all 38.70 0.01 4.47 2.01 0.00 0.06 0.00 0.00 0.00 54.76
12:41:39 IST 0 39.15 0.01 4.82 2.05 0.00 0.02 0.00 0.00 0.00 53.95
12:41:39 IST 1 38.24 0.01 4.12 1.98 0.00 0.09 0.00 0.00 0.00 55.57
12:41:39 IST CPU intr/s
12:41:39 IST all 651.73
12:41:39 IST 0 173.16
12:41:39 IST 1 225.89
12:41:39 IST CPU 0/s 1/s 6/s 8/s 9/s 12/s 16/s 17/s 20/s 21/s 22/s 23/s 45/s 46/s 47/s NMI/s LOC/s SPU/s PMI/s IWI/s RTR/s RES/s CAL/s TLB/s TRM/s THR/s MCE/s MCP/s ERR/s MIS/s
12:41:39 IST 0 76.04 1.77 0.00 0.00 0.41 0.36 0.00 0.06 11.60 0.00 0.00 0.01 7.42 1.83 0.05 0.34 182.89 0.00 0.34 2.97 0.00 22.69 0.16 5.22 0.00 0.00 0.00 0.00 0.00 0.00
12:41:39 IST 1 70.70 1.48 0.00 0.00 0.40 0.36 0.00 27.47 10.46 0.00 0.00 0.01 7.08 1.75 0.05 0.32 184.83 0.00 0.32 5.10 0.00 22.19 0.13 4.91 0.00 0.00 0.00 0.00 0.00 0.00
12:41:39 IST CPU HI/s TIMER/s NET_TX/s NET_RX/s BLOCK/s BLOCK_IOPOLL/s TASKLET/s SCHED/s HRTIMER/s RCU/s
12:41:39 IST 0 0.00 116.96 0.05 0.26 7.12 0.00 1.24 10.42 0.12 36.99
12:41:39 IST 1 0.00 112.25 0.05 0.40 6.88 0.00 55.05 9.93 0.13 41.20
pidstat – Estatísticas de processos e threads do kernel
Isso é usado para monitoramento de processos e threads atuais, que estão sendo gerenciados pelo kernel. O pidstat também pode verificar o status dos processos e threads filhos.
Sintaxe
pidstat <OPTIONS> [INTERVAL] [COUNT]
6. Usar o comando pidstat sem qualquer argumento exibirá todas as tarefas ativas.
tecmint@tecmint ~ $ pidstat
Linux 3.11.0-23-generic (linux-console.net) Thursday 04 September 2014 _i686_ (2 CPU)
12:47:24 IST UID PID %usr %system %guest %CPU CPU Command
12:47:24 IST 0 1 0.01 0.12 0.00 0.13 1 init
12:47:24 IST 0 3 0.00 0.01 0.00 0.01 0 ksoftirqd/0
12:47:24 IST 0 9 0.00 0.04 0.00 0.04 0 rcu_sched
12:47:24 IST 0 10 0.00 0.00 0.00 0.00 0 watchdog/0
12:47:24 IST 0 11 0.00 0.00 0.00 0.00 1 watchdog/1
12:47:24 IST 0 12 0.00 0.00 0.00 0.00 1 migration/1
12:47:24 IST 0 13 0.00 0.01 0.00 0.01 1 ksoftirqd/1
12:47:24 IST 0 23 0.00 0.00 0.00 0.00 0 kworker/u9:0
12:47:24 IST 0 29 0.00 0.61 0.00 0.61 0 kworker/0:1
12:47:24 IST 0 30 0.00 0.06 0.00 0.06 1 kworker/1:1
12:47:24 IST 0 224 0.00 0.01 0.00 0.01 1 jbd2/sda1-8
12:47:24 IST 0 360 0.00 0.00 0.00 0.00 1 upstart-udev-br
12:47:24 IST 0 365 0.01 0.00 0.00 0.01 0 systemd-udevd
12:47:24 IST 0 476 0.00 0.00 0.00 0.00 0 kworker/u9:1
7. Para imprimir todas as tarefas ativas e não ativas utilize a opção ‘-p‘ (processos).
tecmint@tecmint ~ $ pidstat -p ALL
Linux 3.11.0-23-generic (linux-console.net) Thursday 04 September 2014 _i686_ (2 CPU)
12:51:55 IST UID PID %usr %system %guest %CPU CPU Command
12:51:55 IST 0 1 0.01 0.11 0.00 0.12 1 init
12:51:55 IST 0 2 0.00 0.00 0.00 0.00 0 kthreadd
12:51:55 IST 0 3 0.00 0.01 0.00 0.01 0 ksoftirqd/0
12:51:55 IST 0 5 0.00 0.00 0.00 0.00 0 kworker/0:0H
12:51:55 IST 0 7 0.00 0.00 0.00 0.00 0 migration/0
12:51:55 IST 0 8 0.00 0.00 0.00 0.00 0 rcu_bh
12:51:55 IST 0 9 0.00 0.04 0.00 0.04 1 rcu_sched
12:51:55 IST 0 10 0.00 0.00 0.00 0.00 0 watchdog/0
12:51:55 IST 0 11 0.00 0.00 0.00 0.00 1 watchdog/1
12:51:55 IST 0 12 0.00 0.00 0.00 0.00 1 migration/1
12:51:55 IST 0 13 0.00 0.01 0.00 0.01 1 ksoftirqd/1
12:51:55 IST 0 15 0.00 0.00 0.00 0.00 1 kworker/1:0H
12:51:55 IST 0 16 0.00 0.00 0.00 0.00 1 khelper
12:51:55 IST 0 17 0.00 0.00 0.00 0.00 0 kdevtmpfs
12:51:55 IST 0 18 0.00 0.00 0.00 0.00 0 netns
12:51:55 IST 0 19 0.00 0.00 0.00 0.00 0 writeback
12:51:55 IST 0 20 0.00 0.00 0.00 0.00 1 kintegrityd
8. Usando o comando pidstat com a opção '-d 2', podemos obter estatísticas de E/S e 2 é o intervalo em segundos para ser atualizado Estatisticas. Esta opção pode ser útil em situações em que seu sistema está passando por E/S pesadas e você deseja obter dicas sobre os processos que consomem muitos recursos.
tecmint@tecmint ~ $ pidstat -d 2
Linux 3.11.0-23-generic (linux-console.net) Thursday 04 September 2014 _i686_ (2 CPU)
03:26:53 EDT PID kB_rd/s kB_wr/s kB_ccwr/s Command
03:26:55 EDT PID kB_rd/s kB_wr/s kB_ccwr/s Command
03:26:57 EDT 574 0.00 148.00 2.00 miniserv.pl
03:27:01 EDT PID kB_rd/s kB_wr/s kB_ccwr/s Command
03:27:03 EDT 1 0.00 8.00 2.00 init
03:27:03 EDT 450 0.00 2.00 0.00 rsyslogd
03:27:03 EDT 534 138.00 10.00 4.00 crond
03:27:03 EDT 25100 0.00 6.00 0.00 sendmail
03:27:03 EDT 30829 0.00 6.00 0.00 java
9. Conhecer as estatísticas da CPU junto com todos os threads sobre o ID do processo 4164 em intervalo de 2 segundos por 3 > vezes use o seguinte comando com a opção '-t' (exibir estatísticas do processo selecionado).
tecmint@tecmint ~ $ pidstat -t -p 4164 2 3
Linux 3.11.0-23-generic (linux-console.net) Thursday 04 September 2014 _i686_ (2 CPU)
01:09:06 IST UID TGID TID %usr %system %guest %CPU CPU Command
01:09:08 IST 1000 4164 - 22.00 1.00 0.00 23.00 1 firefox
01:09:08 IST 1000 - 4164 20.00 0.50 0.00 20.50 1 |__firefox
01:09:08 IST 1000 - 4171 0.00 0.00 0.00 0.00 0 |__Gecko_IOThread
01:09:08 IST 1000 - 4172 0.00 0.00 0.00 0.00 0 |__Socket
01:09:08 IST 1000 - 4173 0.00 0.00 0.00 0.00 0 |__JS
01:09:08 IST 1000 - 4174 0.00 0.00 0.00 0.00 0 |__JS
01:09:08 IST 1000 - 4175 0.00 0.00 0.00 0.00 0 |__Hang
01:09:08 IST 1000 - 4176 0.00 0.00 0.00 0.00 1 |__gdbus
01:09:08 IST 1000 - 4177 0.00 0.00 0.00 0.00 1 |__gmain
10. Use a opção ‘-rh’ para saber sobre a utilização de memória de processos que frequentemente variam sua utilização em intervalos de 2 segundos.
tecmint@tecmint ~ $ pidstat -rh 2 3
Linux 3.11.0-23-generic (linux-console.net) Thursday 04 September 2014 _i686_ (2 CPU)
Time UID PID minflt/s majflt/s VSZ RSS %MEM Command
1409816695 1000 3958 3378.22 0.00 707420 215972 5.32 cinnamon
1409816695 1000 4164 406.93 0.00 1252024 461404 11.36 firefox
1409816695 1000 6676 168.81 0.00 4436 984 0.02 pidstat
Time UID PID minflt/s majflt/s VSZ RSS %MEM Command
1409816697 0 1601 644.00 0.00 506728 316788 7.80 Xorg
1409816697 1000 3958 3412.00 0.00 707420 215972 5.32 cinnamon
1409816697 1000 4164 2667.00 0.00 1259576 471724 11.62 firefox
1409816697 1000 6676 172.50 0.00 4436 1020 0.03 pidstat
Time UID PID minflt/s majflt/s VSZ RSS %MEM Command
1409816699 0 1601 644.00 0.00 506728 316788 7.80 Xorg
1409816699 1000 3958 4094.00 0.00 710148 218700 5.39 cinnamon
1409816699 1000 4164 599.00 0.00 1261944 476664 11.74 firefox
1409816699 1000 6676 168.00 0.00 4436 1020 0.03 pidstat
11. Para imprimir todo o processo de conter a string “VB“, use a opção ‘-t’ para ver os threads também.
tecmint@tecmint ~ $ pidstat -G VB
Linux 3.11.0-23-generic (linux-console.net) Thursday 04 September 2014 _i686_ (2 CPU)
01:09:06 IST UID PID %usr %system %guest %CPU CPU Command
01:09:08 IST 1000 1492 22.00 1.00 0.00 23.00 1 VBoxService
01:09:08 IST 1000 1902 4164 20.00 0.50 0.00 20.50 VBoxClient
01:09:08 IST 1000 1922 4171 0.00 0.00 0.00 0.00 VBoxClient
tecmint@tecmint ~ $ pidstat -t -G VB
Linux 2.6.32-431.el6.i686 (tecmint) 09/04/2014 _i686_ (2 CPU)
03:19:52 PM UID TGID TID %usr %system %guest %CPU CPU Command
03:19:52 PM 0 1479 - 0.01 0.12 0.00 0.13 1 VBoxService
03:19:52 PM 0 - 1482 0.00 0.00 0.00 0.00 0 |__timesync
03:19:52 PM 0 - 1483 0.01 0.06 0.00 0.06 0 |__vminfo
03:19:52 PM 0 - 1485 0.00 0.01 0.00 0.01 1 |__memballoon
03:19:52 PM 0 - 1486 0.00 0.01 0.00 0.01 1 |__vmstats
03:19:52 PM 0 - 1487 0.00 0.05 0.00 0.05 0 |__automount
03:19:52 PM 0 1913 - 0.00 0.00 0.00 0.00 0 VBoxClient
03:19:52 PM 0 - 1913 0.00 0.00 0.00 0.00 0 |__VBoxClient
03:19:52 PM 0 - 1942 0.00 0.00 0.00 0.00 0 |__SHCLIP
03:19:52 PM 0 1933 - 0.04 0.89 0.00 0.93 0 VBoxClient
03:19:52 PM 0 - 1936 0.04 0.89 0.00 0.93 1 |__X11-NOTIFY
12. Para obter prioridade em tempo real e informações de agendamento, use a opção ‘-R‘ .
tecmint@tecmint ~ $ pidstat -R
Linux 3.11.0-23-generic (linux-console.net) Thursday 04 September 2014 _i686_ (2 CPU)
01:09:06 IST UID PID prio policy Command
01:09:08 IST 1000 3 99 FIFO migration/0
01:09:08 IST 1000 5 99 FIFO migration/0
01:09:08 IST 1000 6 99 FIFO watchdog/0
Aqui, não vou falar sobre o utilitário Iostat, pois já abordamos isso. Por favor, dê uma olhada em “Monitoramento de desempenho do Linux com Vmstat e Iostat” para obter todos os detalhes sobre o iostat.
sar – Relatório de atividades do sistema
Usando o comando “sar”, podemos obter relatórios sobre o desempenho de todo o sistema. Isso pode nos ajudar a localizar o gargalo do sistema e fornecer ajuda para descobrir as soluções para esses problemas irritantes de desempenho.
O Kernel do Linux mantém algum contador internamente, que monitora todas as solicitações, seu tempo de conclusão e contagens de blocos de E/S, etc. A partir de todas essas informações, sar calcula as taxas e a proporção dessas solicitações para descobrir áreas de gargalo.
A principal coisa sobre o sar é que ele relata todas as atividades durante um período de tempo. Portanto, certifique-se de que o sar colete dados no horário apropriado (não na hora do almoço ou no fim de semana. :)
13. A seguir está um comando básico para invocar sar. Ele criará um arquivo chamado “sarfile” em seu diretório atual. As opções ‘-u’ são para detalhes da CPU e coletarão 5 relatórios em um intervalo de 2 segundos.
tecmint@tecmint ~ $ sar -u -o sarfile 2 5
Linux 3.11.0-23-generic (linux-console.net) Thursday 04 September 2014 _i686_ (2 CPU)
01:42:28 IST CPU %user %nice %system %iowait %steal %idle
01:42:30 IST all 36.52 0.00 3.02 0.00 0.00 60.45
01:42:32 IST all 43.32 0.00 5.04 0.00 0.00 51.64
01:42:34 IST all 56.46 0.00 4.05 0.00 0.00 39.49
01:42:36 IST all 44.44 0.00 3.79 0.00 0.00 51.77
01:42:38 IST all 50.75 0.00 3.75 0.00 0.00 45.50
Average: all 46.30 0.00 3.93 0.00 0.00 49.77
14. No exemplo acima, invocamos sar interativamente. Também temos a opção de invocá-lo de forma não interativa via cron usando os scripts /usr/local/lib/sa1 e /usr/local/lib/sa2 (se você tiver usado /usr/local como prefixo durante o tempo de instalação).
- /usr/local/lib/sa1 é um script shell que podemos usar para agendar o cron que criará um arquivo de log binário diário.
- /usr/local/lib/sa2 é um script de shell que altera o arquivo de log binário para um formato legível por humanos.
Use as seguintes entradas Cron para tornar isso não interativo:
Run sa1 shell script every 10 minutes for collecting data
*/2 * * * * /usr/local/lib/sa/sa1 2 10
Generate a daily report in human readable format at 23:53
53 23 * * * /usr/local/lib/sa/sa2 -A
No back-end, o script sa1 chamará o utilitário sadc (System Activity Data Collector) para buscar os dados em um intervalo específico. sa2 chamará sar para alterar o arquivo de log binário para um formato legível por humanos.
15. Verifique o comprimento da fila de execução, o número total de processos e a média de carga usando a opção ‘-q’.
tecmint@tecmint ~ $ sar -q 2 5
Linux 3.11.0-23-generic (linux-console.net) Thursday 04 September 2014 _i686_ (2 CPU)
02:00:44 IST runq-sz plist-sz ldavg-1 ldavg-5 ldavg-15 blocked
02:00:46 IST 1 431 1.67 1.22 0.97 0
02:00:48 IST 4 431 1.70 1.23 0.97 0
02:00:50 IST 2 431 1.70 1.23 0.97 0
02:00:52 IST 2 431 1.70 1.23 0.97 0
02:00:54 IST 0 431 1.64 1.23 0.97 0
Average: 2 431 1.68 1.23 0.97 0
16. Verifique as estatísticas sobre os sistemas de arquivos montados usando ‘-F‘.
tecmint@tecmint ~ $ sar -F 2 4
Linux 3.11.0-23-generic (linux-console.net) Thursday 04 September 2014 _i686_ (2 CPU)
02:02:31 IST MBfsfree MBfsused %fsused %ufsused Ifree Iused %Iused FILESYSTEM
02:02:33 IST 1001 449 30.95 1213790475088.85 18919505 364463 1.89 /dev/sda1
02:02:33 IST MBfsfree MBfsused %fsused %ufsused Ifree Iused %Iused FILESYSTEM
02:02:35 IST 1001 449 30.95 1213790475088.85 18919505 364463 1.89 /dev/sda1
02:02:35 IST MBfsfree MBfsused %fsused %ufsused Ifree Iused %Iused FILESYSTEM
02:02:37 IST 1001 449 30.95 1213790475088.85 18919505 364463 1.89 /dev/sda1
02:02:37 IST MBfsfree MBfsused %fsused %ufsused Ifree Iused %Iused FILESYSTEM
02:02:39 IST 1001 449 30.95 1213790475088.86 18919505 364463 1.89 /dev/sda1
Summary MBfsfree MBfsused %fsused %ufsused Ifree Iused %Iused FILESYSTEM
Summary 1001 449 30.95 1213790475088.86 18919505 364463 1.89 /dev/sda1
17. Visualize as estatísticas da rede usando ‘-n DEV‘.
tecmint@tecmint ~ $ sar -n DEV 1 3 | egrep -v lo
Linux 3.11.0-23-generic (linux-console.net) Thursday 04 September 2014 _i686_ (2 CPU)
02:11:59 IST IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s
02:12:00 IST wlan0 8.00 10.00 1.23 0.92 0.00 0.00 0.00
02:12:00 IST vmnet8 0.00 0.00 0.00 0.00 0.00 0.00 0.00
02:12:00 IST eth0 0.00 0.00 0.00 0.00 0.00 0.00 0.00
02:12:00 IST vmnet1 0.00 0.00 0.00 0.00 0.00 0.00 0.00
18. Visualize estatísticas de dispositivos de bloco como iostat usando ‘-d‘.
tecmint@tecmint ~ $ sar -d 1 3
Linux 3.11.0-23-generic (linux-console.net) Thursday 04 September 2014 _i686_ (2 CPU)
02:13:17 IST DEV tps rd_sec/s wr_sec/s avgrq-sz avgqu-sz await svctm %util
02:13:18 IST dev8-0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
02:13:18 IST DEV tps rd_sec/s wr_sec/s avgrq-sz avgqu-sz await svctm %util
02:13:19 IST dev8-0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
02:13:19 IST DEV tps rd_sec/s wr_sec/s avgrq-sz avgqu-sz await svctm %util
02:13:20 IST dev8-0 7.00 32.00 80.00 16.00 0.11 15.43 15.43 10.80
19. Para imprimir estatísticas de memória use a opção ‘-r’.
tecmint@tecmint ~ $ sar -r 1 3
Linux 3.11.0-23-generic (linux-console.net) Thursday 04 September 2014 _i686_ (2 CPU)
02:14:29 IST kbmemfree kbmemused %memused kbbuffers kbcached kbcommit %commit kbactive kbinact kbdirty
02:14:30 IST 1465660 2594840 63.90 133052 1549644 3710800 45.35 1133148 1359792 392
02:14:31 IST 1472724 2587776 63.73 133060 1549792 3715504 45.40 1125816 1360000 836
02:14:32 IST 1469112 2591388 63.82 133060 1550036 3705288 45.28 1130252 1360168 804
Average: 1469165 2591335 63.82 133057 1549824 3710531 45.34 1129739 1359987 677
20. Usando ‘safd -d‘, podemos extrair dados em formato que pode ser processado usando bancos de dados.
tecmint@tecmint ~ $ safd -d /var/log/sa/sa20140903 -- -n DEV | grep -v lo
# hostname;interval;timestamp;IFACE;rxpck/s;txpck/s;rxkB/s;txkB/s;rxcmp/s;txcmp/s;rxmcst/s;%ifutil
tecmint;2;2014-09-03 07:53:29 UTC;eth0;1.50;0.00;0.13;0.00;0.00;0.00;0.00;0.00
tecmint;2;2014-09-03 07:53:31 UTC;eth0;2.00;0.00;0.18;0.00;0.00;0.00;0.00;0.00
tecmint;2;2014-09-03 07:53:33 UTC;eth0;1.00;0.00;0.09;0.00;0.00;0.00;0.00;0.00
tecmint;2;2014-09-03 07:53:35 UTC;eth0;2.00;0.00;0.18;0.00;0.00;0.00;0.00;0.00
tecmint;14778;2014-09-03 11:59:54 UTC;eth0;1.78;1.17;1.10;0.18;0.00;0.00;0.00;0.00
tecmint;2;2014-09-03 11:59:56 UTC;eth0;3.50;3.00;0.60;0.77;0.00;0.00;0.00;0.00
tecmint;2;2014-09-03 11:59:58 UTC;eth0;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00
tecmint;2;2014-09-03 12:00:00 UTC;eth0;0.00;0.00;0.00;0.00;0.00;0.00;0.00;0.00
tecmint;2;2014-09-03 12:00:02 UTC;eth0;0.50;0.50;0.48;0.03;0.00;0.00;0.00;0.00
tecmint;2;2014-09-03 12:00:04 UTC;eth0;2.50;3.50;0.21;2.05;0.00;0.00;0.00;0.00
tecmint;2;2014-09-03 12:00:06 UTC;eth0;1.49;1.00;0.62;0.06;0.00;0.00;0.00;0.00
tecmint;2;2014-09-03 12:00:08 UTC;eth0;0.50;0.00;0.03;0.00;0.00;0.00;0.00;0.00
tecmint;2;2014-09-03 12:00:10 UTC;eth0;0.50;0.50;0.03;0.04;0.00;0.00;0.00;0.00
tecmint;2;2014-09-03 12:00:12 UTC;eth0;1.00;0.50;0.12;0.04;0.00;0.00;0.00;0.00
Você também pode salvar isso em um csv e, em seguida, desenhar um gráfico para apresentação, como abaixo.
Por enquanto é isso, você pode consultar as páginas de manual para obter mais informações sobre cada opção e não se esqueça de contar sobre o artigo com seus comentários valiosos.