A Arte do Troubleshooting Linux: Diagnosticando problemas complexos(Metodologia USE – Utilization, Saturation, Errors)

Infográfico sobre Troubleshooting Linux com Método USE e comandos de terminal

Troubleshooting Linux. No mundo de Missão Crítica, onde o tempo de inatividade custa caro, o Método USE (Utilization, Saturation, and Errors), criado por Brendan Gregg, é a “Bússola de Ouro” para qualquer SysAdmin que queira parar de “atirar para todo lado” e começar a diagnosticar com precisão cirúrgica.

Aqui está uma estrutura de conteúdo otimizada, focada em autoridade técnica e clareza.


O Que é o Método USE?

Diferente de metodologias que focam na aplicação, o Método USE foca nos recursos de hardware (CPU, Memória, Disco, Rede). Para cada recurso do sistema, você deve verificar três métricas fundamentais:

  1. Utilization (Utilização): A porcentagem de tempo que o recurso esteve ocupado (ex: CPU a 80%).
  2. Saturation (Saturação): O trabalho extra que o recurso não conseguiu processar e que ficou na fila (ex: Load Average alto ou processos em Wait).
  3. Errors (Erros): A contagem de eventos de erro (ex: pacotes de rede descartados ou erros de I/O em disco).

Aplicando o Método USE na Prática

Para cada componente, aqui estão as ferramentas de linha de comando que você deve utilizar para coletar esses dados rapidamente:

1. CPU

  • Utilização: top, htop, mpstat 1 (olhar a coluna %user e %sys).
  • Saturação: uptime (Load Average), vmstat 1 (olha a coluna r – processos em execução/fila).
  • Erros: Verifique o dmesg | grep -i cpu ou logs em /var/log/mcelog (erros de hardware).

2. Memória (RAM)

  • Utilização: free -m, vmstat -s.
  • Saturação: sar -B (verificar paging e swapping), vmstat 1 (colunas si e so).
  • Erros: dmesg | grep -i "out of memory" (OOM Killer em ação).

3. Disco (I/O)

  • Utilização: iostat -xz 1 (coluna %util).
  • Saturação: iostat -xz 1 (coluna avgqu-sz – tamanho da fila).
  • Erros: smartctl -l error /dev/sda ou dmesg | grep -i "I/O error".

4. Rede

  • Utilização: sar -n DEV 1, nload ou iftop.
  • Saturação: ifconfig ou ip -s link (verificar as colunas overruns, dropped).
  • Erros: netstat -i ou ethtool -S [interface].

Por que essa metodologia resolve problemas “Invisíveis”?

Muitas vezes, um servidor parece “lento”, mas a Utilização está baixa (ex: CPU a 10%). Sem o método USE, o SysAdmin comum ficaria perdido.

Com o método USE, você olha para a Saturação:

“A CPU está baixa, mas o disco está com uma fila enorme (Saturação) devido a um processo de backup mal configurado.”

Ou para os Erros:

“A rede não está saturada, mas a taxa de erros de CRC está alta, indicando um cabo ou porta de switch defeituosa.”


Checklist de Troubleshooting Rápido

Se o servidor parou, siga esta ordem:

  1. Erros: Olhe os logs (dmesg, /var/log/syslog ou journalctl -xe).
  2. Saturação: O sistema está tentando fazer mais do que o hardware permite? (uptime, vmstat).
  3. Utilização: Algum recurso específico bateu no teto de 100%? (top, iostat).

A tabela a seguir é o “mapa da mina” para qualquer diagnóstico rápido. Ela resume o Método USE em comandos práticos que você pode copiar e colar no terminal quando o alerta do monitoramento tocar.

Tabela de Referência Rápida: Método USE

RecursoUtilização (Utilization)Saturação (Saturation)Erros (Errors)
CPUtop, htop, mpstat 1uptime (load avg), vmstat 1 (fila ‘r’)dmesg, cpistat, /proc/interrupts
Memóriafree -m, vmstat -ssar -B (paging), vmstat 1 (si/so)dmesg (OOM Killer), edac-util
Disco (I/O)iostat -xz 1 (%util)iostat -xz 1 (avgqu-sz / await)smartctl, dmesg (I/O errors)
Redesar -n DEV 1, nloadifconfig (dropped), netstat -sethtool -S, ip -s link
Kernelsysctl -asar -v (inode/file table)dmesg, journalctl -p err

Como ler essa tabela no campo de batalha:

  • Utilização: Se estiver acima de 90%, você tem um gargalo óbvio. O recurso está no limite físico.
  • Saturação: É aqui que moram os problemas “estranhos”. Se a utilização está baixa, mas a saturação está alta, o sistema está “engasgado” esperando por algo (ex: CPU esperando o Disco liberar dados).
  • Erros: Devem ser sempre a sua primeira parada. Se houver erros, não adianta otimizar a utilização; você tem uma falha de hardware ou driver.

FAQ

O que é o Método USE no Linux?

O Método USE (Utilization, Saturation, and Errors) é uma metodologia de análise de performance criada por Brendan Gregg. Ela foca em diagnosticar gargalos de hardware verificando a Utilização, Saturação e Erros de cada recurso do sistema.

Quais são as 3 métricas do Método USE?

As métricas são: Utilization (porcentagem de tempo que o recurso esteve ocupado), Saturation (trabalho em fila que o recurso não conseguiu processar) e Errors (eventos de erro reportados pelo hardware ou kernel).

Qual comando usar para medir a saturação da CPU?

O comando mais comum é o uptime para verificar o Load Average. Outras opções incluem o vmstat 1 (coluna ‘r’) e o sar -q

Por que o Método USE é importante para SysAdmins?

Ele permite um diagnóstico rápido e estruturado, evitando que o administrador perca tempo analisando métricas irrelevantes. Ele ajuda a encontrar problemas “invisíveis”, como saturação de disco ou erros de rede, que o uso simples de CPU não mostra.

[Precisa de ajuda com outro problema? 
Nossa equipe está disponível 24 horas por dia, 7 dias por semana .]

Veja Mais:

CPU ociosa com sistema lento: como identificar gargalos reais no servidor

OOM Killer no Linux: Por que o MySQL é morto e como evitar

Processos Zumbis: O que são e como limpar a tabela de processos

Diferença entre VPS, servidor dedicado e cloud: quando usar cada um