Есть ли способ сказать Mongod, чтобы войти в системный журнал на другом сервере? - PullRequest
0 голосов
/ 03 мая 2019

Я хочу записывать логи Монго в системный журнал на другой машине.Читая документы mongodb, похоже, что единственный способ использовать syslog - записать в локальный системный журнал.

systemLog:
  destination: syslog
  syslogFacility: local3

Обходной путь, который я придумал, состоял в том, чтобы использовать одно из локальных средств, а затем использовать мойлокальный системный журнал для пересылки журнала на сервер:

#Forward mongodb logs
local3.*       @MY.SYSLOG.SERVER.IP:PORT

Есть ли способ указать IP-адрес в mongo.conf, чтобы мне не пришлось делать это таким образом?

1 Ответ

0 голосов
/ 09 мая 2019

Насколько я могу судить, в MongoDB нет способа указать удаленный сервер для записи, но вы можете выполнить переадресацию в syslog.

Обновите конфигурацию rsyslog для пересылки сообщений следующим образом:

if($syslogFacility-text == "local3") then{
  if($syslogTag contains "mongod") then{
    action(type="omfwd" target="MY.SYSLOG.SERVER.IP" port="PORT" protocol="udp")
    stop
  }
}

Согласно rsyslog docs синтаксис local3.* @MY.SYSLOG.SERVER.IP:PORT устарел, поэтому вместо него используйте omfwd.

...