Pesquisa de site

4 maneiras de assistir ou monitorar arquivos de log em tempo real


Como posso ver o conteúdo de um arquivo de log em tempo real no Linux? Bem, existem muitos utilitários por aí que podem ajudar um usuário a gerar o conteúdo de um arquivo enquanto o arquivo está sendo alterado ou atualizado continuamente. Um dos utilitários mais conhecidos e muito usados para exibir o conteúdo de um arquivo em tempo real no Linux é o comando tail (gerenciar arquivos de forma eficaz).

Leia também: 4 boas ferramentas de gerenciamento e monitoramento de log de código aberto para Linux

1. Comando tail – Monitorar logs em tempo real

Como dito, o comando tail é a solução mais comum para exibir um arquivo de log em tempo real. Porém, o comando para exibir o arquivo possui duas versões, conforme ilustrado nos exemplos abaixo.

No primeiro exemplo o comando tail precisa do argumento -f para seguir o conteúdo de um arquivo.

sudo tail -f /var/log/apache2/access.log

A segunda versão do comando é na verdade um comando: tailf. Você não precisará usar a opção -f porque o comando vem integrado com o argumento -f.

sudo tailf /var/log/apache2/access.log

Normalmente, os arquivos de log são alternados frequentemente em um servidor Linux pelo utilitário logrotate. Para observar os arquivos de log que são alternados diariamente, você pode usar o sinalizador -F para o comando tail.

Leia também: Como gerenciar logs do sistema (configurar, alternar e importar para banco de dados) no Linux

O tail -F acompanhará se um novo arquivo de log estiver sendo criado e começará a seguir o novo arquivo em vez do arquivo antigo.

sudo tail -F /var/log/apache2/access.log

No entanto, por padrão, o comando tail exibirá as últimas 10 linhas de um arquivo. Por exemplo, se você quiser observar em tempo real apenas as duas últimas linhas do arquivo de log, use o arquivo -n combinado com o sinalizador -f, conforme mostrado em o exemplo abaixo.

sudo tail -n2 -f /var/log/apache2/access.log

2. Comando Multitail – Monitore vários arquivos de log em tempo real

Outro comando interessante para exibir arquivos de log em tempo real é o comando multitail. O nome do comando implica que o utilitário multitail pode monitorar e rastrear vários arquivos em tempo real. O Multitail também permite navegar para frente e para trás no arquivo monitorado.

Para instalar o utilitário multitail em sistemas baseados em Debian e RedHat, emita o comando abaixo.

sudo apt install multitail   [On Debian & Ubuntu]
sudo yum install multitail   [On RedHat & CentOS]
sudo dnf install multitail   [On Fedora 22+ version]

Para exibir a saída de dois arquivos de log simultâneos, execute o comando conforme mostrado no exemplo abaixo.

sudo multitail /var/log/apache2/access.log /var/log/apache2/error.log

3. Comando lnav – Monitore vários arquivos de log em tempo real

Outro comando interessante, semelhante ao comando multitail é o comando lnav. O utilitário Lnav também pode assistir e acompanhar vários arquivos e exibir seu conteúdo em tempo real.

Para instalar o utilitário lnav em distribuições Linux baseadas em Debian e RedHat, emitindo o comando abaixo.

sudo apt install lnav   [On Debian & Ubuntu]
sudo yum install lnav   [On RedHat & CentOS]
sudo dnf install lnav   [On Fedora 22+ version]

Observe o conteúdo de dois arquivos de log simultaneamente emitindo o comando conforme mostrado no exemplo abaixo.

sudo lnav /var/log/apache2/access.log /var/log/apache2/error.log

4. Comando less – Exibir saída em tempo real de arquivos de log

Finalmente, você pode exibir a saída ao vivo de um arquivo com o comando less se digitar Shift+F.

Assim como acontece com o utilitário tail, pressionar Shift+F em um arquivo aberto em menos começará após o final do arquivo. Alternativamente, você também pode começar less com o sinalizador less +F para entrar na visualização ao vivo do arquivo.

sudo less +F  /var/log/apache2/access.log

É isso! Você pode ler estes artigos a seguir sobre monitoramento e gerenciamento de logs.

  1. Gerencie arquivos de maneira eficaz usando os comandos head, tail e cat no Linux
  2. Como configurar e gerenciar a rotação de log usando Logrotate no Linux
  3. Petiti – Uma ferramenta de análise de log de código aberto para SysAdmins Linux
  4. Como consultar logs de auditoria usando a ferramenta ‘ausearch’ no CentOS/RHEL
  5. Gerenciar mensagens de log no Systemd usando Journalctl [Guia abrangente]

Neste artigo, mostramos como observar os dados sendo anexados em arquivos de log em tempo real no terminal do Linux. Você pode fazer qualquer pergunta ou compartilhar suas idéias sobre este guia por meio do formulário de comentários abaixo.