User Tools

Site Tools


wiki:linux:comandos:comando_journalctl

Exemplos do comando journalctl

Nível Básico

  • Exibir todos os logs do sistema:
    1. journalctl
    2. Exibe todos os logs do sistema desde o início do `journal`.
  • Exibir logs mais recentes (similar ao `tail`):
    1. journalctl -e
    2. Exibe os logs mais recentes, direto para o final do arquivo de logs.
  • Exibir logs de boot anterior:
    1. journalctl -b -1
    2. Exibe os logs do boot anterior.
  • Exibir logs de um serviço específico:
    1. journalctl -u nome_servico
    2. Exibe os logs do serviço `nome_servico`.
  • Monitorar logs em tempo real (similar ao `tail -f`):
    1. journalctl -f
    2. Exibe os logs em tempo real à medida que são gerados.
  • Exibir logs do sistema desde o último boot:
    1. journalctl -b
    2. Mostra todos os logs do sistema desde o último boot.

Nível Intermediário

  • Filtrar logs por nível de prioridade (por exemplo, erros):
    1. journalctl -p err
    2. Exibe apenas logs de erros (nível `err` ou superior).
  • Exibir logs de uma data específica:
    1. journalctl --since "2024-10-10 12:00:00"
    2. Exibe os logs desde `10 de outubro de 2024, às 12:00`.
  • Exibir logs dentro de um intervalo de tempo:
    1. journalctl --since "2024-10-10" --until "2024-10-12"
    2. Exibe os logs entre as datas `10 de outubro de 2024` e `12 de outubro de 2024`.
  • Exibir logs do kernel (dmesg logs):
    1. journalctl -k
    2. Exibe apenas os logs do kernel.
  • Exibir logs de todos os boots do sistema:
    1. journalctl --list-boots
    2. Exibe uma lista com todos os boots do sistema, com identificadores para cada boot.
  • Exibir logs de um serviço específico desde o último boot:
    1. journalctl -u nome_servico -b
    2. Exibe os logs do serviço `nome_servico` desde o último boot.
  • Exibir logs de uma unidade de tempo específica (por exemplo, última hora):
    1. journalctl --since "1 hour ago"
    2. Mostra os logs gerados na última hora.

Nível Avançado

  • Limitar o número de linhas exibidas:
    1. journalctl -n 50
    2. Exibe apenas as últimas `50` linhas de logs.
  • Exibir logs com prioridade superior ou igual a “warning”:
    1. journalctl -p warning
    2. Exibe logs de aviso (`warning`) ou superior.
  • Filtrar logs por unidade de sistema (systemd):
    1. journalctl -u sshd.service
    2. Exibe apenas os logs do serviço `sshd.service`.
  • Filtrar logs com base no PID (Process ID):
    1. journalctl _PID=1234
    2. Exibe os logs gerados pelo processo com PID `1234`.
  • Exibir logs de um usuário específico:
    1. journalctl _UID=1000
    2. Exibe logs gerados por processos executados pelo usuário com UID `1000` (normalmente o primeiro usuário não-root do sistema).
  • Excluir mensagens repetitivas dos logs:
    1. journalctl --dmesg --no-pager
    2. Exibe os logs do kernel sem repetições de mensagens, útil para logs contínuos de hardware.
  • Exibir logs de falhas recentes de serviços:
    1. journalctl --failed
    2. Exibe os logs dos serviços que falharam recentemente.
  • Exibir logs de eventos de reboot do sistema:
    1. journalctl -u reboot
    2. Exibe logs relacionados a eventos de reinicialização do sistema.

Nível Especializado

  • Limpar os logs armazenados no journal:
    1. sudo journalctl --vacuum-time=2weeks
    2. Remove todos os logs mais antigos que duas semanas para liberar espaço em disco.
  • Compactar o tamanho dos logs para um limite específico:
    1. sudo journalctl --vacuum-size=500M
    2. Mantém os logs armazenados no `journal` até um limite de `500 MB`, removendo os mais antigos.
  • Recarregar os logs do journal manualmente após alterações:
    1. sudo systemctl restart systemd-journald
    2. Reinicia o serviço `systemd-journald` para recarregar as configurações de log.
  • Exibir logs de um cgroup específico:
    1. journalctl -M máquina_virtual -u nome_servico
    2. Exibe logs do serviço `nome_servico` dentro de uma máquina virtual ou container com `cgroup`.
  • Buscar logs por mensagem específica:
    1. journalctl | grep "mensagem_erro"
    2. Busca por uma string ou padrão específico, como “mensagem_erro”, nos logs do sistema.
  • Exportar logs para um arquivo externo:
    1. journalctl -u nome_servico > logs_servico.txt
    2. Exporta os logs do serviço `nome_servico` para um arquivo `logs_servico.txt`.
  • Verificar logs de kernel persistentes após reinicializações:
    1. journalctl -k -b -1
    2. Exibe logs do kernel da inicialização anterior ao boot atual.
  • Filtrar logs por chave de valor específica (ex.: mensagem do sistema):
    1. journalctl MESSAGE_ID=key_value
    2. Exibe logs com base em uma `MESSAGE_ID` específica.
  • Ativar logs persistentes no journal:
    1. Editar o arquivo de configuração do journal:<br>
sudo nano /etc/systemd/journald.conf

<br>

  1. Mudar a linha `#Storage=auto` para `Storage=persistent`<br>
  2. Reiniciar o serviço do journal:<br>
sudo systemctl restart systemd-journald
  1. Habilita logs persistentes, permitindo que eles sejam salvos após reinicializações.
wiki/linux/comandos/comando_journalctl.txt · Last modified: by Wiki Administrator