linux下怎么发送syslog到相应的服务器

说白了,设置配置文件/etc/syslog.conf来指向远程服务器其实很简单。
你只需要按照特定的格式来配置这个文件,就可以让日志信息发送到指定的远程服务器了。

先说最重要的,格式是“@address”,这里的“@”是关键,它告诉syslog服务这个日志是用于远程记录的。
比如,如果你的远程日志服务器地址是1 9 2 .1 6 8 .1 .1 00,你就在配置文件中这样写:“@1 9 2 .1 6 8 .1 .1 00”。
如果你使用的是域名,比如logserver.example.com,那么就写成:“@logserver.example.com”。

另外一点,记得远程日志服务器的端口是UDP5 1 4 这个端口是syslog服务默认使用的端口,所以你不需要特别指定端口。

还有个细节挺关键的,比如你去年我们跑的那个项目,我们遇到了一个坑,就是有时候网络不稳定,导致日志发送失败。
我一开始也以为是因为配置文件写错了,后来发现不对,是网络延迟导致的。
等等,还有个事,如果你的远程服务器IP地址经常变动,使用域名会更方便,因为域名会自动解析到当前的IP地址。

最后,我的建议是,在配置文件中先测试一下日志是否能够成功发送到远程服务器,可以用一些简单的日志记录命令来测试。
比如,你可以写一条日志信息:“logger test log”,然后查看远程服务器是否收到了这条日志。
这样,你就能确保配置正确无误了。

如何配置Linux系统使用syslog记录并发送日志信息到远程服务器?

syslog是Linux系统日志核心。
默认配置在/etc/syslog.conf。

程序或内核都往这写日志。
用UDP协议传数据。

远程设备发日志,syslogd在5 1 4 端口等着。
根据配置处理日志。

日志能同步到多台服务器。
方便离线分析问题。

syslog命令用法多。
基本语法是showsyslog加参数。

statistics参数看内核日志统计。
error参数看异常日志。

memory参数看内存日志。
很重要。

要加测试日志到/var/log/messages:
[root@linuxcool~] logger thisisatestlogline
看内核日志统计:
[root@linuxcool~] showsyslog statistics
看异常日志:
[root@linuxcool~] showsystemlog error
看日志配置:
[root@linuxcool~] showlog-config
看内存日志:
[root@linuxcool~] showlog memory
这些命令帮管理员管好系统。
你自己看。