pred8or
@pred8or

Как описать несколько правил rsyslog?

Создаю файл конфигурации /etc/rsyslog.d/99-remote-log.conf примерно такого содержания:

$template RemoteLogs,"/media/logs/rsyslog/%FROMHOST-IP%/%PROGRAMNAME%.log"

*.* ?RemoteLogs
& stop


Всё хорошо, на каждый хост создаётся свой каталог. Теперь хочу логи, скажем, от бесперебойников положить немного по-другому. Модифицирую конфиг:

$template RemoteLogs,"/media/logs/rsyslog/%FROMHOST-IP%/%PROGRAMNAME%.log"
$template ups,"/media/logs/rsyslog/ups/%FROMHOST-IP%.log"

:fromhost-ip, isequal, "172.10.0.70" -?ups
:fromhost-ip, isequal, "172.10.0.71" -?ups

*.* ?RemoteLogs
& stop


Результат? Лог всё равно ложится в
/media/logs/rsyslog/%FROMHOST-IP%/%PROGRAMNAME%.log


Пробовал примерно такое правило:

if $fromhost-ip == '172.10.0.70' then {
        action(type="omfile" file="/media/logs/rsyslog/ups/%fromhost-ip%.log")
        stop
        }


Эффект тот же. ЧЯДНТ?
  • Вопрос задан
  • 205 просмотров
Пригласить эксперта
Ответы на вопрос 3
@Zerg89
Для применения конфигурации
/usr/bin/systemctl kill -s HUP rsyslog.service
Ответ написан
@vitaly_il1
DevOps Consulting
Может

template ups

поставить первой строчкой?
Ответ написан
Комментировать
pred8or
@pred8or Автор вопроса
Я клинический дебил. Всё работает. Я в IP-адресе ошибся. Дважды. И не заметил.

Но с исходным правилом с шаблоном ups возникла другая проблема. Запись попадала и в /media/logs/rsyslog/%FROMHOST-IP%/%PROGRAMNAME%.log и в /media/logs/rsyslog/ups/%FROMHOST-IP%.log

В результате правило модифицировал так:

$template RemoteLogs,"/media/logs/rsyslog/%FROMHOST-IP%/%PROGRAMNAME%.log"
$template ups,"/media/logs/rsyslog/ups/%FROMHOST-IP%.log"

:fromhost-ip, isequal, "172.18.0.70" -?ups
& stop
:fromhost-ip, isequal, "172.18.0.71" -?ups
& stop

*.* ?RemoteLogs
& stop


Запись добавляется в один лог, но теперь непонятно не теряется ли чего
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы