свежие строчки. Строчки появляются каждые N секунд, где N > 5.
А файлик трекается в git ?
Можно смотреть контрольную сумму (или просто время изменения) и запоминать номер последней обработанной строки. Не знаю, бест практис это или нет)
Ну тогда просто diff родной может помочь
а какая задержка допустима между тем когда новые строки появились и началом обработки
Анотифай
каждые 5 секунд. задержка в 1 секунду - ок
Вдруг у него винда?
Фоновый запуск tail -f и вычитывание из пайпа новой инфы 😂
сейчас так и делаем, запоминаем номер последней обработанной строки
А чем плох такой вариант? Простое и надёжное решение. А изменения можно отслеживать по дате изменения файла. Хоть каждые 200 мс её запрашивай
есть версия, что это не комильфо и надо watchdog
дата изменения может не меняться если например используется noatime (зачем это правда делать в 2023 не понятно)
сказали что могут быть проблемы, более не сказали ничего. я решил уточнить.
Хеш можно считать
Проблемы могут быть при транкейте файла. Они имеют в виду, что вотчить надо директорию, в которой лежит файл
нет, имеют ввиду именно вотчить файл про вотчить директорию это уже я им рассказал
Ещё раз: вотч файла обламывается на транкейте, поэтому не рекомендуют так делать. Если тебе нужно вотчить файл, то вотч директорию и фильтруй
это действительно лучше, чем открывать и читать файл раз в 5 секунд?
На файле в 1-2Гб уже будут проблемы
Собития файловой системы
запоминаем смещение и проблем не будет
Обсуждают сегодня