Syslog-ng 日志格式

Syslog-ng 日志格式

我正在使用集中式 syslog-ng 日志主机来收集某些客户端上的日志和 syslog-ng。

在 Devil Linux 上运行 syslog-ng 的特定客户端上,系统日志条目以以下格式发送(使用 tcpdump 确认)

DATE local@hostname MESSAGE

其中 local 是配置文件中的源名称

source local { file("/proc/kmsg" program_override("kernel: ")); unix-stream("/dev/log" max-connections(1000)); internal(); };

log { source(local); destination(console); };

其他 syslog-ng 主机都不这样做,尽管大多数是运行 syslog-ng 2.1.4 的 Centos 5.4,而这是 syslog-ng 版本 3.05

有谁知道为什么会发生这种情况以及如何阻止它。

编辑:完整配置文件


@version: 3.0

#####################################################################
# define options for syslog
#####################################################################
options { long_hostnames(on); flush_lines(0); time_reopen(60); use_dns (no); };

#####################################################################
# define the source pipe for all local messages
#####################################################################
source local { file("/proc/kmsg" program_override("kernel: ")); unix-stream("/dev/log" max-connections(1000)); internal(); };

#####################################################################
# print all messages on tty10
#####################################################################
destination console { file("/dev/tty10"); };
log { source(local); destination(console); };

#####################################################################
# send all messages to the loghost
#####################################################################

destination loghost { 
 udp("192.168.45.15" port (514)) ;
 };
log { source(local); destination(loghost); };

#####################################################################
# send all messages to /var/log/messages
#####################################################################
#destination logfile { file("/var/log/messages"); };
#log { source(src); destination(logfile); };

#####################################################################
# END
#####################################################################

答案1

通常,“local@localhost”字符串是以下任一配置选项的结果:

chain_hostnames(yes);
long_hostnames(yes);

我不记得是否还涉及这个选项:

keep_hostname(yes);

请使用完整的配置文件更新您的问题。

编辑:似乎long_hostnames(on)是错的。当然,一些 syslog-ng 选项不仅名称错误,而且记录也很差。我试图重新设计这个烂摊子,我把结果放在了这里从 syslogd 迁移到 syslog-ng 期间的 FQDN

相关内容