我有多台配置了 rsyslog 的服务器,用于将日志写入远程 syslog-ng 服务器,配置如下:
# Log anything of level info or higher.
# Don't log private authentication messages!
*.info;authpriv.none @<IP-SERVER>
# The authpriv file has restricted access.
authpriv.* @<IP-SERVER>
并且 syslog-ng 服务器配置如下:
destination d_remote {
file ("/var/LOG/$HOST-$YEAR$MONTH$DAY");
};
但是通过这种配置,客户端会将两个日志写入同一个文件。
是否可以配置客户端(我无法修改 syslog-ng 服务器)将日志分成不同的文件?
答案1
为此,您必须修改 syslog-ng 服务器的配置(基本上,您需要一个将不同类型的日志分离到单独文件中的过滤器)。
客户端的一个丑陋的黑客可能是将此信息编码到日志消息的 HOST 字段中(以便服务器将它们视为来自不同的主机),但我不知道在 rsyslog 中是否可以实现。