Bootchart é um software para análise de desempenho e visualização do processo de inicialização do GNU / Linux. A utilização de recursos e processar informações são coletadas durante o processo de inicialização e mais tarde podem ser exibidos em um gráfico PNG, SVG ou EPS-codificado.
O processo de inicialização é modificado para iniciar o logger boot (/ sbin / bootchartd) em vez de / sbin / init. O registrador de inicialização será executado em segundo plano e coleta de informações do sistema de arquivos proc (/ proc / [PID] / stat, / proc / stat e / proc / diskstats).
As estatísticas são registrados em um sistema de arquivo de memória virtual (tmpfs). Uma vez que o processo de inicialização terminar (indicado pela existência de processos específicos), os arquivos de log são embalados para /var/log/bootchart.tgz.
O pacote de log mais tarde pode ser processado usando um aplicativo Java que cria a árvore de processo e torna um gráfico de desempenho. O gráfico pode então ser analisados para examinar a dependência de processos e utilização geral de recursos. Uma forma renderizador web também está disponível no web site do projeto.
O gráfico pode então ser analisados para examinar a dependência de processos e utilização geral de recursos.
Runing:
1. Instale bootchartd eo renderizador bootchart. Veja INSTALAR para mais detalhes.
2. Modifique o seu carregador de boot (GRUB / LILO), se necessário. Alternativamente, altere a linha de comando do kernel de forma interativa durante a reinicialização.
Reinicialização.
3. Verifique se /var/log/bootchart.tgz foi criado e contém os arquivos de log.
4. rendem o gráfico em execução:
$ Java -jar bootchart.jar
Alternativamente (se não o Java Development Kit é instalado para criar o pacote JAR), o representante da web pode ser usado.
Para usar o renderizador web a partir de um script, execute:
onda formato --form = svg --form log=@/var/log/bootchart.tgz
http://bootchart.klika.si:8080/bootchart/render> bootchart.svgz
(Opcionalmente substituindo o par svg / bootchart.svgz com png / bootchart.png ou eps / bootchart.eps.gz)
5. Veja a imagem gerada e analisar o gráfico.
As imagens SVG pode ser visto usando qualquer um dos seguintes programas:
- Rsvg-view (librsvg; GNOME)
- Svgdisplay (KSVG; KDE)
- Gimp (usando o plugin gimp-SVG)
- Inkscape
- Squiggle (Batik; http://xml.apache.org/batik/)
Para obter ajuda para opções adicionais, execute:
$ Java -jar bootchart -h
Como funciona:
Logger Startup
O registrador de boot (/ sbin / bootchartd) é executado pelo kernel em vez de / sbin / init. Isto pode ser conseguido através da modificação do GRUB ou LILO linha de comando do kernel, por exemplo:
/boot/grub/menu.lst
[...]
título Fedora Core (2.6.10) - bootchart
root (hd0,1)
Kernel /vmlinuz-2.6.10 raiz ro = / dev / hda1 o init = / sbin / bootchartd
initrd /initrd-2.6.10.img
O script de instalação e um pacote RPM tentará adicionar a entrada do carregador de inicialização automaticamente.
O registrador de inicialização será iniciado-se no fundo e imediatamente executar o processo de inicialização padrão, / sbin / init. O processo de inicialização irá continuar como de costume.
Coleção De Dados
Uma vez que a partição raiz é montado somente leitura durante a inicialização, o madeireiro precisa armazenar dados na memória, usando um sistema de arquivo de memória virtual (tmpfs).
Assim que o sistema de arquivos / proc é montado - geralmente no início do script de sysinit - o logger vai começar a recolher saída de vários arquivos:
Tempo ocioso do usuário, sistema, e IO: / proc / estatísticas de CPU em todo o sistema de estatísticas
/ Proc / diskstats estatísticas de disco de todo o sistema: utilização de disco e taxa de transferência
(Disponível apenas em kernels 2.6)
/ Proc / [PID] / informação estatística sobre os processos em execução: hora de início, PID pai, estado de processo, uso de CPU, etc.
O conteúdo desses arquivos são periodicamente anexado a arquivos de log correspondentes, a cada 0,2 segundo por padrão.
O logger tentará detectar o fim do processo de inicialização, procurando por processos específicos. Por exemplo, quando no nível de execução 5 (modo gráfico multi-usuário), ele vai olhar para gdmgreeter, kdm_greet, etc. Assim que um desses processos é encontrado em execução, o registrador irá parar a recolha de dados, os arquivos de log pacote e armazená-los para /var/log/bootchart.tgz.
Opcional Contabilidade Processo
Na maioria dos casos, a produção de / proc / [PID] / ficheiros de stat suficiente para recriar a árvore do processo. É possível, no entanto, que um processo de curta duração não são apanhados pelo logger. Se esse processo também bifurca novos processos, o madeireiro não terão informações de dependência para estes processos "órfãos" - o que significa que eles podem ficar incorretamente agrupados pelo processador gráfico.
Quando é necessária a informação verdadeiramente precisa de dependência, pode ser utilizado o processo de contabilidade. Se configurado, o kernel irá manter um arquivo de log com informações detalhadas sobre processos. BSD v3 contabilidade processo inclui informações sobre o processo de 'PID e PID pai (PPID) - permitindo efetivamente uma reconstrução precisa da árvore de processos.
Para ativar o processo de contabilidade, o kernel precisa ser configurado para incluir CONFIG_BSD_PROCESS_ACCT_V3, nos termos:
[] Configuração geral
[] Processo BSD Contabilidade
[] Processo BSD versão Contabilidade formato 3 arquivo
Os utilitários de contabilidade GNU (psacct pacote ou acct) também precisam ser instalados. O registrador de inicialização usará o comando accton para permitir o processo de contabilidade; ele irá incluir o registo de contabilidade no tarball.
Visualização
A tarball log mais tarde é passada para o aplicativo Java para analisar e processar os dados. As estatísticas da CPU e de disco são usados para renderizar área e gráficos de linhas empilhadas. As informações do processo é usado para criar um gráfico de Gantt mostrando dependência processo, estados e uso da CPU.
A seqüência de inicialização típico consiste de várias centenas de processos. Uma vez que é difícil visualizar tal quantidade de dados de uma forma compreensível, é utilizada a poda de árvores. Ocioso processos em segundo plano e processos de vida curta são removidos. Processos similares que funcionam em paralelo também são mesclados.
Finalmente, o desempenho e de dependência gráficos são renderizador como uma única imagem em qualquer PNG, SVG ou formato EPS.
Detalhes de Software:
Versão: 0.9
Data de upload: 3 Jun 15
Licença: Livre
Popularidade: 508
Comentários não encontrado