Monitore vários arquivos de log do Linux em tempo real

Monitore vários arquivos de log do Linux em tempo real

Estou depurando um aplicativo Linux que permite o envio de trabalhos remotos, registrando a saída de cada trabalho em um novo arquivo. Os caminhos do arquivo de log estão em conformidade com:

/joblogs/job_*/JOB.LOG

onde o curinga representa o número exclusivo do trabalho.

Quero poder acompanhar cada log de trabalho, incluindo novos logs criados depois de emitir o comando tail (ou qualquer outro). Eu pensei que seria capaz de fazer isso usandomulticauda, mas não consigo descobrir o conjunto correto de parâmetros a serem usados. Por exemplo,

multitail -q 1 "/joblogs/job_*/JOB.LOG"

parece criar uma janela para cada novo arquivo de log do jeito que eu quero, mas não mostra nenhuma saída na janela do arquivo.

Alguém sabe como fazer isso, seja com multitail ou outra ferramenta Linux?

Responder1

Como há apenas um trabalho ativo por vez, os logs de trabalho concluídos são movidos para /joblogs/completed_jobs/job_* e os logs são curtos, esta solução alternativa está correta por enquanto:

while [ 1 == 1 ] ; do for joblog in `ls /joblogs/job_*/JOB.LOG`; do cat $joblog; done; sleep 10; done

Responder2

tente remover os parâmetros e as aspas

Responder3

tipo, tailvocê precisa dar um -fsinalizador para dizer para seguir os arquivos?

informação relacionada