Безопасное открытие файлов системного журнала

У меня есть сервер системного журнала, на котором работает syslog-ng (скоро будет запущен rsyslog) на RHEL 6, и на него записывается почти 1000 хостов. Я хочу написать скрипт, чтобы открывать каждый файл (только для чтения и 1 одновременно), извлекать из них некоторые данные и закрывать их (возможно, в Ruby). Это испортит системный журнал или вызовет какие-либо другие проблемы? О каких еще подводных камнях мне следует знать?

Меня больше всего беспокоит то, что системный журнал пытается записать данные в открытый файл, даже если он открыт только в течение очень короткого промежутка времени (возможно, менее секунды).

возможный код sudo:

foreach file
  open $file
  grep "search sting" $file
  close $file

person Mike    schedule 07.10.2015    source источник


Ответы (1)


Если демон только добавляется к файлу, я думаю, что нет никакого риска. Я бы беспокоился об удалении/попробовании. Я думаю, это зависит от конфигурации вашего демона (не столько от того, какой демон используется), но я предполагаю, что большинство конфигураций фактически не удаляют данные.

Удаление обычно выполняется с помощью logrotate и других инструментов. Я бы посмотрел на конфигурации этих инструментов (например, заставил их запускаться в другое время, чем скрипт, о котором вы говорите).

person Radu Gheorghe    schedule 09.10.2015