Как решить проблему multiline при отправке логов со Squid в Graylog?
Если решите как-то реализовать написанное, то все действия вы производите на свой страх и риск!
Иногда бывает, что при отправки логов со Squid прилетает множество строчек пачкой, хотя должно было прилетать и обрабатываться по одной строчке. Такое возникает когда пытаются настроить отправку по UDP. Если же настроить отправку по TCP, то проблема множеством строк пропадает.
Вариант настройки может быть такой:
1. Раскомментируем или создаем, например, вот такой формат логов:
logformat squid %{%Y.%m.%d/%H:%M:%S}tl %ts.%03tu %6tr %>a:%>p %Ss/%03>Hs %<st %rm %ru %[un %Sh/%<a:%<p %mt %<Hs
2. Указываем как и куда отправлять логи:
access_log tcp://192.168.0.1:19302 squid
Здесь мы указываем, что надо отправлять логи в формате squid по TCP на сервер 192.168.0.1 на порт 19302.
3. Проверяем конфиг Squid
clear;squid -k parse
4. Если всё нормально, что перечитываем конфиг
systemctl reload squid.service
5. На сервере с Graylog проверяем при помощи tcpdump/wireshark, что пакеты с логами доходят.
6. Настраиваем альтернативный вариант Input для 19302 с указанием, что это Raw/Plaintext TCP. Проверяем, что логи обрабатываются Graylog’ом
Категории: Мониторинг