Как читать журналы Unix, создаваемые в каталоге в режиме реального времени? - PullRequest
0 голосов
/ 31 августа 2018

У меня есть несколько сценариев (sh), которые я вызываю с помощью основного (run_all.sh, содержимое ниже) сценария. Поэтому, когда запускается подстрочный индекс, он создает журнал в журналах dir.

sh run_one.sh
if [ $? -gt 0 ] ; then
exit 1
fi
sh run_two.sh
if [ $? -gt 0 ] ; then
exit 1
fi
sh run_three.sh
if [ $? -gt 0 ] ; then
exit 1
fi

Например, если я запускаю run_all.sh, первый скрипт run_one.sh начинает выполняться и создает файл журнала (log_run_one.log) в журнале dir. Поэтому для мониторинга логов я использую:

tail -f run_one.log

Можно ли создать скрипт (sh), который будет запускаться в директории logs, чтобы проверить, создан ли новый файл и выполняет ли tail -f file_name.log действие над созданным новым логом / файлом. Он должен иметь возможность отслеживать каталог журналов на наличие новых файлов / журналов и выполнять действие tail для всех них одно за другим по мере их создания. С чего мне начать? Любая помощь будет оценена.

Похоже, что на любом другом языке программирования будет проще, если создать сервер, использующий некоторые свойства rsync для мониторинга каталога.

1 Ответ

0 голосов
/ 03 сентября 2018

Вы можете создать задание cron для запуска поиска, чтобы проверить, создаются ли какие-либо новые файлы в папке журнала (см. Ниже статью о том, как использовать find с xargs для поиска и вывода списка новых файлов в течение последних нескольких дней / времени) а затем просто запустите список -f файлов журналов, предоставленных вышеуказанной командой

Команда Linux для проверки новых файлов в файловой системе

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...