有没有办法告诉mongod在另一台服务器上登录到syslog?

时间:2019-05-03 15:36:50

标签: mongodb logging syslog rsyslog

我想将mongo日志写入另一台计算机上的syslog中。阅读mongodb文档,看来使用syslog的唯一方法是写入本地syslog。

systemLog:
  destination: syslog
  syslogFacility: local3

我想出的解决方法是使用本地设备之一,然后使用本地syslog将日志转发到服务器:

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

是否可以在mongo.conf中指定IP地址,这样我就不必这样做了?

1 个答案:

答案 0 :(得分:0)

据我所知,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