Rsyslog: как разделить входящие журналы с IP-адресами

Я пытаюсь настроить Rsyslog со следующей конфигурацией:
Слушаю порт 514 для приема данных с разных хостов: 172.16.111.222, 172.16.111.111 и 172.16.222.111. И я хочу хранить журналы thoses в разных папках для каждого хоста.
Поэтому я сделал этот conf:

$ModLoad imudp


$Ruleset RemoteConnections
$RulesetCreateMainQueue on
$ActionQueueType LinkedList
$ActionQueueFileName dbremotecons
$ActionResumeRetryCount -1
*.* ~


$InputUDPServerBindRuleset RemoteConnections
$UDPServerRun 514

if $fromhost-ip=='172.16.111.222' then /var/log/prod1/%FROMHOST-IP%/%syslogfacility-text%.log
& ~
if $fromhost-ip=='172.16.111.111' then /var/log/prod1/%FROMHOST-IP%/%syslogfacility-text%.log
& ~

if $fromhost-ip=='172.16.222.111' then /var/log/product2/%FROMHOST-IP%/%syslogfacility-text%.log
& ~

к сожалению, не работает, rsyslog ничего не записывает.
Я не уверен, что означает"&~", я нашел это в интернете.

любые идеи, чтобы заставить его работать ?

15
задан ctaf
08.04.2023 2:00 Количество просмотров материала 3618
Распечатать страницу

2 ответа

вы не можете использовать заполнители непосредственно в правилах. Вместо этого используйте шаблоны. Должно работать следующее:

$template DynaFile,"/var/log/%FROMHOST-IP%/%syslogfacility-text%.log"
*.* -?DynaFile

или, чтобы быть ближе к Ваш код:

$template prod1,"/var/log/prod1/%FROMHOST-IP%/%syslogfacility-text%.log"
$template prod2,"/var/log/prod2/%FROMHOST-IP%/%syslogfacility-text%.log"
if $fromhost-ip=='172.16.111.111' then ?prod1
if $fromhost-ip=='172.16.111.222' then ?prod1
if $fromhost-ip=='172.16.222.111' then ?prod2
1
отвечен MOzSalles 2023-04-09 09:48

" ~ "означает отбросить или остановить, что является rsyslog"action".

Так:

if $fromhost-ip=='172.16.111.222' then /var/log/prod1/%FROMHOST-IP%/%syslogfacility-text%.log
& ~

означает, что если "если ... затем. .."оператор работает, т. е. выполняется условие и сообщение заносится в файл, затем стоп - не продолжать дальше.

0
отвечен Wei Wang 2023-04-09 12:05

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх