Histórico de carga do servidor: 24 horas, 7 ou 30 dias (recolha a cada 5 minutos)
| Processo | CPU % | RAM % |
|---|---|---|
| falco | 7.4 | 5.6 |
| mysqld | 4.4 | 7.3 |
| crowdsec | 2.6 | 15.6 |
| apache2 | 1.4 | 4.5 |
| fail2ban-server | 0.7 | 17.1 |
| Processo | CPU % | RAM % |
|---|---|---|
| apache2 | 18.0 | 9.3 |
| mysqld | 12.8 | 14.0 |
| clamd | 8.9 | 14.3 |
| falco | 6.2 | 11.0 |
| suricata | 2.8 | 18.4 |
O top responde a uma pergunta sobre o segundo actual, ao passo que a pergunta que realmente se faz é sobre a noite passada: porque é que às três da manhã tudo parou e voltou sozinho. A essa altura já não há nada para ver, porque nada ficou registado. Instalar Prometheus e Grafana para um único VPS levanta um problema próprio: a pilha que observa pesa mais do que o servidor observado.
Um colector acrescenta uma linha à base de dados de cinco em cinco minutos, e esta página desenha a partir daí as últimas 24 horas. Load average, utilização do CPU com o I/O wait à parte, RAM e swap, tráfego de rede recebido e enviado, leituras e escritas de disco, ligações TCP estabelecidas, processos, ocupação da partição, inodes e descritores de ficheiro em percentagem do limite, ligações do MySQL. Tudo numa página e no mesmo eixo temporal, de modo que as coincidências se vêem a olho.
Estes gráficos lêem-se aos pares. Um I/O wait elevado com o CPU tranquilo significa que o servidor está à espera do disco, e acrescentar núcleos não ajudará. Uma swap que subiu uma vez e nunca regressou a zero diz que o pico de memória já aconteceu, por muito calmo que pareça agora. Descritores de ficheiro perto dos cem por cento são um too many open files com algumas horas de antecedência. E na maioria dos servidores os inodes esgotam-se bastante antes do espaço livre.