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

4

Estou depurando um aplicativo do Linux que permite que tarefas remotas sejam enviadas, registrando a saída de cada tarefa em um novo arquivo. Os caminhos do arquivo de log estão de acordo com:

/joblogs/job_*/JOB.LOG

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

Eu quero ser capaz de seguir cada log de trabalho, incluindo novos logs que são criados depois que eu emita o comando final (ou qualquer outro). Eu pensei que seria capaz de fazer isso usando multitail , mas não consigo descobrir o conjunto certo 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 do Linux?

    
por gareth_bowles 22.01.2010 / 02:45

3 respostas

1

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

while [ 1 == 1 ] ; do for joblog in 'ls /joblogs/job_*/JOB.LOG'; do cat $joblog; done; sleep 10; done
    
por 26.01.2010 / 02:33
0

tente remover os parâmetros e as cotações

    
por 22.01.2010 / 03:00
0

como tail , você precisa dar a ela -f sinalizador para dizer para seguir os arquivos?

    
por 22.01.2010 / 08:09