Есть ли среди вас эксперты по rsyslog?

Здравствуйте! Прохожу курс “от 0 до Linux админа” на платформе Yodo и столкнулся с такой проблемой: не получается корректно собирать и упорядочивать логи с моих Windows серверов на syslog сервере, который работает на openSUSE Leap 16 с rsyslog. Сами Windows серверы пересылают события через SolarWinds Event Log Forwarder for Windows.

Я хочу организовать структуру папок, где для каждого сервера будет своя папка, а внутри нее — файлы логов для событий безопасности, событий Windows, событий Active Directory и так далее. Но на данный момент все события с каждого сервера фильтруются в один файл, из которого очень сложно и долго извлекать полезную информацию.

Пытался настроить динамическую структуру имен файлов и правила фильтрации, но это не сработало, и я не могу понять, что именно пошло не так. Вот что у меня сейчас настроено:

template(name="SolarWindsDynamicPath" type="list") {
    constant(value="/var/log/syslog/servers/")
    property(name="hostname")
    constant(value="/")
    property(name="$now")
    constant(value="-")
    property(name="msg" regex.expression="MSWinEventLog#[0-9]+#([A-Za-z0-9 ]+)" regex.submatch="1" regex.nomatchmode="FIELD" caseconversion="lower")
    constant(value=".log")
}

template(name="CleanLogLine" type="list") {
    property(name="timestamp" dateFormat="rfc3339")
    constant(value=" ")
    property(name="hostname")
    constant(value=" ")
    property(name="rawmsg" controlcharacters="drop")
    constant(value="\n")
}

if ($msg contains "MSWinEventLog") then {
    action(type="omfile" dynaFile="SolarWindsDynamicPath" template="CleanLogLine")
    stop
}

Конфигурация проходит проверку синтаксиса rsyslogd, но не работает, и логи серверов попадают в общий ‘warn’ лог-файл, указанный в rsyslog.conf. Буду признателен за любую помощь или совет!

Привет!

Слушай, я тут попробовал разобраться с rsyslog’ом, но, честно говоря, дело пошло не так, как я планировал. Я там ковырялся с настройками, пытался что-то настраивать, но не мог понять, как правильно прописывать конфиги. Постоянно вылезали какие-то ошибки и предупреждения, и я, похоже, просто запутался в этом всем.

Сначала думал, что смогу разобраться сам, но как только дело дошло до фильтров, тут вообще стало темно, как в подземелье! Не понимал, как направлять логи в разные файлы или удаленные сервера — всё как-то мимо меня прошло. Вот сидел и ломал голову, думал, может, мне просто не хватает опыта, чтобы это всё правильно натянуть.

Тогда я начал искать помощь на просторах Интернета. В итоге наткнулся на курсы на сайте yodo.im, которые вроде как помогают разобраться с rsyslog’ом в деталях. Думаю, что там будет побольше информации и примеров. Если кто-то тоже в такой же ситуации, как я — загляните на этот сайт, может, и вам поможет!

Вот так, короче. Буду надеяться, что в следующих попытках мне повезет больше. Удачи всем с rsyslog!