Используйте nxlog для разбора текстового файла sophos и отправки на сервер syslog

У меня есть Windows Server 2012 R2 машина с Sophos. Каждый день происходит сканирование от sophos, и информация добавляется в журнал "sav.txt".

Пример вывода (некоторая информация изменена):

    20150710 205446 Using detection data version 5.16 (detection engine 3.58.3). This version can detect 9405871 items.
20150710 205446 User (NT AUTHORITY\LOCAL SERVICE) has started on-access scanning for this machine.
20150711 020000 Scan 'Sophos Management Server' started.
20150711 023317 Scan 'Sophos Management Server' completed.
20150711 023317 Summary of results for scan 'Sophos Management Server':
  Items scanned: 166433
  Errors: 0
  Items quarantined: 0
  Items dealt with: 0

Используя nxlog, я хочу иметь возможность проанализировать файл sav.txt для информации, которую я показываю в примере вывода только за текущий день, и отправить эту информацию на сервер системного журнала.

Единственная проблема заключается в том, что файл sav.txt будет становиться все больше и больше с течением времени, мы хотим, чтобы nxlog только отправлял информацию из текстового файла за этот день.

Только 1 июля, только первое июля сообщения будут отправлены на наш сервер системного журнала, 2 июля... то же самое, и т. Д.

Я не знаю, имеет ли это значение, но мы используем системный журнал Kiwi для сервера. У Kiwi есть бесплатная утилита для Windows, но она не анализирует текстовые файлы и отправляет только ту информацию, которая нам нужна. Киви, кажется, только извлекает из журнала событий, но может получить что угодно.

1 ответ

Решение

Возможно, есть разные способы, но следующие будут делать это:

Exec if not (($raw_event =~ /^(\d{4})(\d{2})(\d{2}) /) and \
             (substr(string(now()), 0, 10) == $1 + '-' + $2 + '-' + $3)) drop();
  • Обратите внимание, что NXLog отправляет только самые последние данные и, как правило, не отправляет файл целиком, если источник журнала не создает новый и не копирует содержимое.
  • Возможно, вы захотите использовать xm_multiline для событий, охватывающих более одной строки.
  • Не лучше ли настроить ротацию логов на sav.txt, чтобы старые записи были смещены?
Другие вопросы по тегам