No AIX, é possível ativar o subsistema de contabilidade e usar uma combinação de acctprc1 e comandos prtacct para mostrar o uso da CPU pelo usuário .
Eu preciso acompanhar a quantidade de processos que um único usuário invocou e quanto tempo da CPU (ou%) esses processos consumiram por um determinado período de tempo.
O truque é que cada um desses processos normalmente é executado por uma fração de segundo e consome quase nenhuma CPU, mas eles são invocados por muito tempo por segundo. Portanto, "usuário ps -eo, pid, pcpu, time, args" não são confiáveis.
No final, eu queria um relatório dizendo algo como: "usuário foobar consumiu xxx CPU-TIME / CPU% durante os últimos xx segundos"
Alguém tem uma luz de como posso alcançá-lo? O SO é um AIX7.1, mas a questão se aplica também ao Linux RHEL7.
Obrigado antecipadamente.
No AIX, é possível ativar o subsistema de contabilidade e usar uma combinação de acctprc1 e comandos prtacct para mostrar o uso da CPU pelo usuário .
Você pode usar (Linux) cgroups na teoria. Você criará o cgroup personalizado, onde todos os processos do usuário estarão em execução. Então apenas observe o olho na contagem de carrapatos da CPU do cgroup (soma o sistema e o tempo do usuário) e você será capaz de calcular o% total de uso da CPU para um período de tempo selecionado a partir desses valores.
Doc: link