Pular para o conteúdo

Para Jornalistas

Entenda, filtre e ame seus logs
22 de maio de 2026 por
Mário Santiago

Journald CheatSheet

Porque arquivos de texto são tão 2010. Journald traz metadados, estrutura e um toque de glamour futurista para seus logs de sistema.

– Uma brisa muito suave de humor sopra através deste documento


Primeiros passos com journalctl

ComandoO que faz (com personalidade)
journalctlTudo. Realmente, tudo. Desde o início do sistema. Divirta-se rolando.
journalctl -eSalta para o final – para aqueles que só se importam com o último drama.
journalctl -rOrdem reversa: o mais novo primeiro, como no Instagram.
journalctl -fSegue o log em tempo real – melhor do que qualquer livestream.
journalctl --no-pagerSem pager (sem less). Despeja diretamente no terminal.

💡 Dicas de Pager(quando less te irrita):

/ buscar para frente, ? buscar para trás, n / Shift+N próximo/anterior, q sair.

Filtre como um profissional

Por inicialização

journalctl --list-boots              # Mostra todos os IDs de inicialização com índice
journalctl -b 0                      # Inicialização atual
journalctl -b -1                     # Inicialização anterior (basicamente anteontem)

Por tempo

journalctl --since "2026-05-10 23:00" --until "2026-05-11 01:00"
journalctl --since "20 min atrás"
journalctl --since "ontem" --until "hoje"

Por unidade systemd (serviço)

journalctl -u NetworkManager         # Apenas NetworkManager
journalctl -u sshd -u bluetooth      # Múltiplas unidades ao mesmo tempo

Por prioridade (nível de log)

journalctl -p err                    # Erro e pior (0-3)
journalctl -p 3                      # Mesmo significado
journalctl -p notice..warning        # Intervalo: notice até warning
NívelNomeDescrição (versão dramática)
0emergO sistema está pegando fogo
1alertAja agora! Imediatamente!
2critCrítico, mas não entre em pânico
3errErro – dói, mas continuamos
4warningCuidado, algo está se formando
5noticeMensagem normal, mas importante
6infoInformativo, como uma receita
7debugModo Chatty Cathy

Por palavra-chave (mais rápido que grep!)

journalctl -g "Senha falhada"
journalctl --grep '192\.168\.[0-9]{1,3}\.[0-9]{1,3}'   # Regex estilo Perl

Por executável

journalctl /usr/bin/sshd
# Ou explicitamente:
journalctl _EXE=/usr/sbin/sshd

Por campos de metadados arbitrários

journalctl _UID=1000                 # Apenas o usuário 1000
journalctl _TRANSPORT=kernel         # Apenas logs do kernel (também: -k)
journalctl _SYSTEMD_UNIT=sshd.service

Metadados – as estrelas ocultas

Todos os campos que começam com _ (sublinhado) sãocampos confiáveis– definidos pelo sistema, não podem ser manipulados pelo programa.

Perfeito para investigações forenses ou para pegar malware em uma mentira.

journalctl -o verbose                # Mostrar TODOS os metadados de uma entrada
journalctl -o json                   # Formato JSON para scripts
journalctl -o json-pretty            # JSON formatado

Exemplo de saída (encurtado):

    _TRANSPORT=syslog
    PRIORITY=6
    _PID=1973
    _EXE=/usr/sbin/smartd
    MESSAGE=Dispositivo: /dev/sda [...]

Campos úteis:

  • _SYSTEMD_INVOCATION_ID – Todos os logs de uma única execução de serviço
  • __CURSOR – ID único para retomar exatamente naquele ponto depois
  • _SELINUX_CONTEXT – Quando você quer se sentir seguro

Use --output-fields para buscar apenas o que você precisa:

journalctl -o json --output-fields="MESSAGE,_EXE" _EXE=/usr/bin/sshd

Configurando o Journald (ajustes permitidos)

Onde a configuração reside

  • /etc/systemd/journald.conf – Arquivo principal (padrões comentados)
  • /etc/systemd/journald.conf.d/my.conf – Seus próprios trechos

Opções importantes (para sonhar e ajustar)

OpçãoSignificadoPadrão
SystemMaxUse=Máximo de espaço em disco para o journal10% da partição, máximo 4 GB
SystemKeepFree=Quanto espaço deve permanecer livre15%
MaxRetentionSec=Idade máxima dos logs (por exemplo, 30 dias)desativado
Comprimir=Comprimir logs?sim

Após as alterações:

systemctl reload systemd-journald   # Recarregar sem reiniciar
systemctl status systemd-journald   # Verificar erros

Limpando ("vácuo")

journalctl --disk-usage              # Quanto espaço os logs estão usando?
journalctl --vacuum-size=500M        # Excluir logs mais antigos até que restem 500 MB
journalctl --vacuum-time=7d          # Excluir tudo que é mais antigo que 7 dias

O Journald limpa automaticamente quando os limites são alcançados. Sem mais tarefas cron para escrever.

Palavras finais de sabedoria

  • journalctl -k – Logs do kernel apenas (anteriormente dmesg em um terno)
  • journalctl -x – Explicações para entradas (--catalog)
  • journalctl -n 50 – Apenas as últimas 50 linhas
  • Combine tudo:
    journalctl -u sshd -b 0 -p 3 -n 20
    → Serviço SSH, inicialização atual, erro ou pior, no máximo 20 linhas.

E quando você quiser impressionar um sysadmin da velha escola:

"O Journald não é um arquivo de texto – é um banco de dados indexado, de registro binário, auto-rotativo, rico em metadados com campos confiáveis."

Então tome um gole de café e aproveite a admiração.

Copie-me – pronto para o seu blog

Basta selecionar todo o bloco acima, copiá-lo e colá-lo como .md no seu editor de blog.

No fear of the humor – it's very gentle. Promise. 😊

Fonte: Este resumo baseia-se no guia c't „Linux-Protokolldienst Journald verstehen und sinnvoll nutzen“ – https://www.heise.de/ratgeber/Linux-Protokolldienst-Journald-verstehen-und-sinnvoll-nutzen-11290995.html?seite=all