将系统的所有日志发送到一个特定的系统日志本地设施(local1-7)

我想将系统日志本地设施分配给特定的操作系统,所以我可以对日志服务器上的传入日志进行sorting(例如,用于Windows日志的local1,用于RedHat日志的local2等)。 它在Windows上完美运行,但我卡在我的RedHat系统。

我可以在rsyslog的RHEL中指定日志应该发送到哪个本地(1-7)设施? (例如,将特定系统的所有日志发送到.local2)

你通常不能用“正常的”syslogd来做这件事,因为它违背了syslog设施的devise。 Windows日志转发器以这种方式工作,因为Windows日志事件没有类Unix的function,并且为整个服务器分配一个是最简单的解决scheme。

在Unix上,每条日志消息都有自己的facility属性来区分同一主机上的不同服务。 之后,即使是中央日志服务器也可以通过主机和设施组合上的filter来识别守护进程。

您计划将需要一个syslog转发器来重写该设施。 这当然是可能的,例如syslog-ng有重写规则,像logstash这样的更大的工具也应该支持它,但是我会build议不要这样做。 你最终会有自己的网站本地devise,反对一些常见的做法,使日志系统的每一个变化都变得更加困难。