Obtendo informações de carga / CPU por usuário ou por comando para Linux

1

Eu tenho uma pilha LAMP padrão de estoque em execução em uma máquina Centos 7 (Linux 3.10.0). O servidor web Apache passa solicitações para executar arquivos PHP em vários processos php-fpm, que são executados em diferentes contas de usuários mapeadas para vários servidores web virtuais. Todos os processos / programas do php-fpm acessam diferentes bancos de dados manipulados pela instância do MariaDB.

O sistema está começando a experimentar alguma carga e eu gostaria de saber por que e onde. :)

Fazer um 'top' é a minha impressão de que esse gargalo é o processo / threads do MariaDB do mysqld, mas eu gostaria de me aprofundar mais. Eu não estou muito familiarizado com a contabilidade de processos no Linux, então achei que procuraria conselhos aqui.

Eu instalei o RPM 'psacct' que me dá 'lastcomm'. lastcomm é bom por me dar o tempo de CPU gasto por processos terminados, mas eu realmente não posso usá-lo em meu sistema em execução, já que o processo mysqld nunca termina. Então eu não posso usar lastcomm para ter uma idéia de onde TODO o tempo da CPU está indo e descobrir o que é o porco da CPU.

'sar' é bom, mas só me dá - tanto quanto eu sei - estatísticas globais de máquinas. Não há como pedir para dividi-los em números por usuário ou por comando. Se houver, eu gostaria de saber como.

Existe uma maneira de obter estatísticas sobre a CPU usada - até hoje ou dentro de um período de tempo - para todos os processos, finalizados ou não, divididos por usuário / comando?

Além disso, existe alguma maneira de obter outras métricas do que apenas E / S de disco da CPU ou 'load' (executável, mas bloqueado na CPU ou disco de E / S) - dividido por usuário / comando?

Muito obrigado por qualquer conselho ou referências ao 'Linux accounting for dummies'.

    
por Brad 07.11.2016 / 03:35

1 resposta

0

Estes irão ajudá-lo:

O cacti é gráfico e bom: link

iotop: linha de comando para IO ops

htop: muito melhor e melhor topo

    
por 07.11.2016 / 04:25