Есть ли лучший способ контролировать файлы журналов? (Linux / python) - PullRequest
5 голосов
/ 22 ноября 2011

Я пытаюсь отслеживать файлы журналов, в которых запущен какой-то процесс в linux (чтобы создать объединенный файл журнала, в котором записи журнала группируются по времени, когда они происходят). В настоящее время я думаю об открытии регистрируемых файлов, опросе с помощью inotify (или обертки), а затем проверке, могу ли я прочитать больше файла.

Есть ли лучший способ сделать это? Возможно, какая-нибудь библиотека, которая абстрагирует чтение / изменения в просматриваемых файлах?

Ответы [ 3 ]

3 голосов
/ 23 ноября 2011

Почему не хватит "tail -f"? Вы можете использовать popen и pipe для обработки этого из Python.

1 голос
/ 23 ноября 2011

ricks Уловки генератора для системных программистов показывает, как использовать генераторы Python для решения этого типа проблемы; в частности, мониторинг (большие) файлы журнала. Я рекомендую прочитать его.

0 голосов
/ 22 ноября 2011

Если вы делаете это самостоятельно, вы можете сделать что-то вроде этого: Если вы обнаружите изменение файла, получите размер файла.Если он больше, чем в прошлый раз, вы можете перейти к предыдущей «последней» позиции (т.е. к предыдущему размеру) и прочитать оттуда.

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