여러 Linux 로그 파일을 실시간으로 모니터링

여러 Linux 로그 파일을 실시간으로 모니터링

저는 원격 작업 제출을 허용하는 Linux 애플리케이션을 디버깅하고 있으며 각 작업의 출력을 새 파일에 기록하고 있습니다. 로그 파일 경로는 다음을 준수합니다.

/joblogs/job_*/JOB.LOG

여기서 와일드카드는 고유 작업 번호를 나타냅니다.

tail(또는 기타) 명령을 실행한 후 생성된 새 로그를 포함하여 각 작업 로그를 추적할 수 있기를 원합니다. 나는 이것을 사용하여 이것을 할 수 있다고 생각했습니다.멀티테일, 그러나 사용할 올바른 매개변수 세트를 파악할 수 없습니다. 예를 들어,

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

내가 원하는 방식으로 각 새 로그 파일에 대한 창을 만드는 것 같지만 파일 창에 출력이 표시되지 않습니다.

멀티테일이나 다른 Linux 도구를 사용하여 이 작업을 수행하는 방법을 아는 사람이 있습니까?

답변1

한 번에 하나의 작업만 활성화되므로 완료된 작업 로그는 /joblogs/completed_jobs/job_*로 이동되고 로그는 짧습니다. 현재로서는 다음과 같은 임시 해결 방법이 괜찮습니다.

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

답변2

매개변수와 따옴표를 제거해 보세요.

답변3

예를 들어 파일을 따르도록 플래그를 tail지정해야 합니까 ?-f

관련 정보