Eu notei recentemente que algumas vezes tail -f <logfile>
deixará de atualizar para a tela.
Fazer um Ctrl>- Ce reiniciar o tail
trabalho bem, no entanto. E verifiquei para garantir que o arquivo de log não estivesse sendo girado no meio do caminho (o que pode fazer com que se tail
perca).
O que causaria isso? Estou executando o RHEL 5.2 x64.
Respostas:
Tente agrupar seu comando tail,
strace
se tiver:Então, apenas para chutes recursivos malucos, você pode ajustar a saída do strace (não importa se isso quebra porque está saindo para um arquivo):
O meu se parece com:
-T ativa o tempo e -T ativa o tempo gasto nas chamadas.
Pressione retorno 4 ou 5 vezes para criar um pouco de espaço vertical e aguarde até que ele pare de seguir. Espero que haja algumas pistas na saída.
fonte
Tente usar:
tail --follow=name <logfile>
E veja se isso funciona melhor. Você não precisa se preocupar com isso ser rotacionado de baixo de você.
Algum padrão para ele parar? Certo período de tempo? Certa hora do dia?
fonte
tail
- é apenas periodicamente (em algum momento entre 2 e 20 horas) parando para seguir mais .. desejo que houvesse mais de um padrão: - \screen
sessão de depuração estendida, e isso é preocupanteDado que ambos os arquivos de log problemáticos são gravados por diferentes componentes do mesmo aplicativo, será que não é parte do código de log desse aplicativo que está causando o problema? Proponho dois testes para ter uma idéia melhor do que está acontecendo:
Observe o inode do arquivo de log (
ls -i logfile
) antes de iniciar a cauda e, uma vez que a cauda falhe, verifique novamente. Se o inode foi alterado, o criador de logs está reescrevendo todo o arquivo de log, o que interromperia a conexão da cauda.Observe a última linha antes que a cauda pare de funcionar e, em seguida, visite o arquivo e encontre a primeira entrada de log após essa linha. Faça isso 3-5 vezes, se possível. Se houver algum problema com o programa que faz o log, a parte do programa que escreveu a entrada do log imediatamente após a quebra da cauda é provavelmente a responsável. Se essa entrada de log for sempre a mesma ou se vier do mesmo componente do programa, você poderá ter dados suficientes para enviar um relatório de problemas ao fornecedor do aplicativo.
Boa sorte.
fonte
Estou tendo o mesmo problema aqui.
O problema era que o arquivo que eu estava assistindo foi montado em uma máquina diferente. A notificação de alteração não foi propagada através da montagem.
A solução foi usar a cauda na máquina original.
fonte