Журналы rsyslog не сохраняются в файлах очереди

Журналы rsyslog не сохраняются в файлах очереди

я используюrsyslog 8.40и я пытаюсь настроить пересылку журналов с помощью очередей.

Мне удалось отправить журналы на серверы пересылки, используя следующие конфигурации.

   action(type="omfwd" target="host1" port="10515" protocol="udp" )
   action(type="omfwd" target="host2" port="10514" protocol="udp" )

Теперь я хочу хранить журналы в очередях, чтобы в случае выхода из строя целевого сервера я не терял журналы.

Для этого я делаю что-то вроде этого:

action(type="omfwd" target="host1" port="10515" protocol="udp"
               queue.spoolDirectory="/var/lib/rsyslog"
               queue.type="LinkedList"
               queue.filename="host1.queue"
               action.resumeRetryCount="-1"
               queue.saveOnShutdown="on"
)

action(type="omfwd" target="host2" port="10514" protocol="udp"
           queue.type="LinkedList"
           queue.filename="host2.queue"
           action.resumeRetryCount="-1"
           queue.saveOnShutdown="on"
)

Если я отключу сервер пересылки, журналы не будут созданы в файле очереди, который, как я ожидаю, будет находиться в /var/lib/rsyslog, поскольку у меня есть такая настройка:

global(
    net.enableDNS="off"
    preserveFQDN="on"
    umask="0004"
    workDirectory="/var/lib/rsyslog"
)

JFTR,

  • конфигурация не имеет ошибок конфигурации.
  • Я включил отладку в rsyslogd, но это не выявило никаких ошибок.

решение1

Мне удалось выяснить причину такого поведения:

Цитата изздесь

Фактические файлы спула создаются только в том случае, если удаленный сервер не работает и в очереди в памяти больше нет места. По умолчанию кратковременный сбой удаленного сервера никогда не приведет к созданию файла на диске, поскольку по умолчанию в памяти может храниться пара сотен сообщений.

Связанный контент