У нас есть демон аутентификации в системе Debian 6.0, генерирующий журналы со скоростью около 4-6 строк \ записей каждую секунду. По юридическим причинам этот файл журнала должен быть сначала записан на диск локально, прежде чем мы сможем его создать резервную копию или передать куда-либо. Эти журналы меняются самим демоном каждые 2 часа.
Я хотел бы реализовать систему, в которой журналы вводятся в базу данных и просматриваются в syslog-ng (регистрация службы в syslog-ng, а затем syslog-ng, записывающая запись в базу данных и диск), но это было отклонено, как если бы процесс syslog-ng по какой-либо причине не удался, мы потеряем записи журнала.
Я играл с использованием rsync и cron, настроенными на синхронизацию каждые 5 минут или около того, но принимающей стороне, очевидно, требуется полная копия журнала для rsync для `` сравнения '', и на самом деле все, что мне нужно, это разница между предыдущей проверкой .
Есть ли достойный способ получить изменения в файле журнала (желательно с удаленного компьютера) с момента последней проверки, а затем передать только эти строки в сценарий или непосредственно в базу данных?
Я должен быть искренним и признать, что я один из их крупнейших клиентов, но в таких случаях я бы посоветовал вам хотя бы рассмотреть Splunk - если по какой-либо другой причине это может быть бесплатно, и это то, что мы используем почти для того, что делаете вы.
Любая проблема с использованием tail -F <logfile> | db-import-script
? Честно говоря, цитируемые вами «юридические причины» кажутся бессмысленными даже для юристов, и поэтому я был бы склонен запросить разъяснения относительно цели правил, а затем работать над этим, а не пытаться проверять детали реализации с людьми, которые предположительно не имеют возможности оценить пригодность реализации. Если они делать имеете технические возможности, затем скажите им, чтобы они дали вам дизайн, и вы воплотите его в соответствии со спецификацией.