De acordo com as Leis 12.965/2014 e 13.709/2018, que regulam o uso da Internet e o tratamento de dados pessoais no Brasil, ao me inscrever na newsletter do portal DICAS-L, autorizo o envio de notificações por e-mail ou outros meios e declaro estar ciente e concordar com seus Termos de Uso e Política de Privacidade.
Colaboração: Angelo Roberto Bonfieti Junior
Data de Publicação: 25 de Julho de 2006
SAR é a abreviação de *System Activity Reporter*, cuja tradução seria algo como Relator de Atividades do Sistema, ou seja, o "dedo-duro" da utilização de recursos da máquina. É uma ferramenta que monitora os principais dispositivos de performance de um sistema, tais como utlização de CPU, memória e paginação.
Em ambientes Solaris, ele é instalado como parte de um pacote opcional (SUNWaccu).
O SAR provê informações preciosas sobre a performance de um Sistema, entretanto também pode gerar uma pequena carga na performance do sistema sendo monitorado, dependendo da frequência com a qual estiver configurado para ser executado.
Os dados provenientes do SAR ajudam a rastrear problemas no sistema e identificar gargalos, e são utilizados pela própria Sun em muitas ocasiões quando o assunto é análise de performance. Existem alguns scripts que transformam o SAR am gráfico, que será abordado em outra oportunidade. Por enquanto, falemos do SAR somente.
O SAR pode ser executado para mostrar recentes (mas já passadas) ou atuais estatísticas de performance. Se você quer saber como seu sistema neste momento, o SAR coleta informações do Kernel para reportar os numerosos aspectos de performance de um sistema.
Segue abaixo algumas flags que podem ser usadas e o que elas coletam. Maiores informações sobre essas flags estão no man do sar.
Para visualizar como está a perfomance agora, basta digitar o comando sar com o(s) parâmetro(s) desejado(s), mencionar o intervalo (em segundos) no qual você deseja obter os dados e a quantidade desejada.
Assim, digitando
# sar 5 5
o output seria similar ao abaixo:
root@chaos >> sar 5 5 SunOS chaos 5.9 Generic_118558-13 sun4u 01/07/2006 11:30:41 %usr %sys %wio %idle 11:30:46 23 46 0 31 11:30:51 20 47 0 32 11:30:56 19 48 0 33 11:31:01 16 51 0 33 11:31:06 17 48 0 35 Average 19 48 0 33
Geralmente a primeira linha é ignorada, por conter uma estatística (as vezes um pouco bizarra) desde o último reboot.
Rodando-o na forma retroativa, o SAR pode mostrar como estava a performance do sistema ontem ou na semana passada. Nesse modo, o SAR coleta dados durante as horas em que o servidor está em pleno processamento e também nos períodos mais calmos. Normalmente procura-se obter dados das horas em que o servidor está mais ocupado e guardá-las para posterior análise.
Se você digitar somente SAR sem nenhum parâmetro, a ferramenta vai procurar pelo arquivo SAR do dia (geralmente em /var/adm/sa) indicando atividade de CPU até a mais recente hora completa.
chaos$ sar SunOS chaos 5.9 Generic_118558-13 sun4u 01/07/2006 00:00:00 %usr %sys %wio %idle 01:00:00 5 3 3 89 02:00:00 5 3 49 43 03:00:00 5 3 4 89 04:00:00 6 2 15 77 05:00:00 5 3 46 46 06:00:00 6 6 42 45
Quando estiver configurado para coletar dados automaticamente de um sistema, o SAR o faz através de diversos binários e scripts. O comando SADC põe um marcador no arquivo de dados indicando o começo da captação de dados. Geralmente é executado quando o sistema sobe ou quando a captação de dados é iniciada através do script /etc/rc2.d/S21perf
O script /usr/lib/sa/sa1 roda a cada 20 minutos durante o que são normalmente horários de pico (Segunda a Sexta, das 8 as 18hs) e a cada hora fora desse horário.
O script /usr/lib/sa/sa2 prepara relatórios em formato ASCII mostrando médias e números em intervalos de horas.
Em termos de performance o SAR praticamente não agride o sistema. Isso a menos que você queira coletar dados num intervalo de tempo razoávelmente pequeno (digamos 5 ou 10 segundos). Isso certamente daria uma visão mais pontual da utilização de recursos ao longo do dia, mas pode ter alguns dedobramentos indesejáveis como contribuir com um pouco de lentidão no sistema e geração de arquivos muito grandes (na casa de GB).
O considerado padrão, seria:
0 * * * 0-6 /usr/lib/sa/sa1 20,40 8-17 * * 1-5 /usr/lib/sa/sa1 5 18 * * 1-5 /usr/lib/sa/sa2 -s 8:00 -e 18:01 -i 1200 -A
Para tornar a coleta de dados através do SAR ativa, é necessário seguir alguns procedimentos:
# if [ -z "$_INIT_RUN_LEVEL" ]; then # set -- `/usr/bin/who -r` # _INIT_RUN_LEVEL="$7" # _INIT_RUN_NPREV="$8" # _INIT_PREV_LEVEL="$9" # fi # # if [ $_INIT_RUN_LEVEL -ge 2 -a $_INIT_RUN_LEVEL -le 4 -a \ # $_INIT_RUN_NPREV -eq 0 -a \( $_INIT_PREV_LEVEL = 1 -o \ # $_INIT_PREV_LEVEL = S \) ]; then # # /usr/bin/su sys -c "/usr/lib/sa/sadc /var/adm/sa/sa`date +%d`" # fi
# 0 * * * 0-6 /usr/lib/sa/sa1 # 20,40 8-17 * * 1-5 /usr/lib/sa/sa1 # 5 18 * * 1-5 /usr/lib/sa/sa2 -s 8:00 -e 18:01 -i 1200 -A
root@chaos >> ls -l /var/adm/sa ls -l /var/adm/sa total 1205120 -rw-r--r-- 1 sys sys 53033472 Jan 1 23:55 sa01 -rw-r--r-- 1 sys sys 53033472 Jan 2 23:55 sa02 -rw-r--r-- 1 sys sys 53033472 Jan 3 23:55 sa03 -rw-r--r-- 1 sys sys 53033472 Jan 4 23:55 sa04 -rw-r--r-- 1 sys sys 53033472 Jan 5 23:55 sa05 -rw-r--r-- 1 sys sys 53033472 Jan 6 23:55 sa06 -rw-r--r-- 1 sys sys 36828800 Jan 7 16:35 sa07 -rw-r--r-- 1 sys sys 14627513 Jan 2 23:06 sar02 -rw-r--r-- 1 sys sys 14627693 Jan 3 23:05 sar03 -rw-r--r-- 1 sys sys 14627733 Jan 4 23:05 sar04 -rw-r--r-- 1 sys sys 14627701 Jan 5 23:05 sar05 -rw-r--r-- 1 sys sys 14627519 Jan 6 23:05 sar06E pronto, está sendo gerado um relatório de analíse de consumo de recursos do seu servidor. Uma dica importante é monitorar o primeiro dia e, se possível, a primeira semana, certificando-se de que a política de limpeza desses arquivos está sendo feita adequadamente, de forma que o /var não fique cheio e possa comprometer seu sistema.
This policy contains information about your privacy. By posting, you are declaring that you understand this policy:
This policy is subject to change at any time and without notice.
These terms and conditions contain rules about posting comments. By submitting a comment, you are declaring that you agree with these rules:
Failure to comply with these rules may result in being banned from submitting further comments.
These terms and conditions are subject to change at any time and without notice.
Comentários