Rsyslog服务简介
可以理解为syslog的超集,Linux老版本3、4、5默认使用syslog作为系统的日志工具,RHEL6开始系统默认使用Rsyslog。
Rsyslog是一个快速处理收集系统日志的程序,支持C/S架构,可通过TCP/UDP协议提供日志集中管理服务。
Rsyslog的特性
- 多线程的服务,并发性能好
- 可以使用udp、tcp、ssl、tls、relp等协议完成信息收集
- 将日志可存储在MySQL、pgsql、oracle等数据库管理系统
- 强大的自定义过滤器
- 自定义输出
使用rsyslog进行日志集中管理
C/S架构:客户端将其日志上传到服务器端,通过对服务器端日志的查询,来实现对其他客户端的日志进行集中管理。
TCP 传输协议
基于传统TCP协议明文传输,需要回传进行确认,可靠性比较高;
但在接收服务器宕机或者两者之间网络出问题的情况下,会出现丢日志情况。
RELP 传输协议
RELP(Reliable Event Logging Protocol)是基于TCP封装的可靠日志消息传输协议;
是为了解决TCP 与 UDP 协议的缺点而在应用层实现的传输协议,也是三者之中最可靠的。
对于线上服务器,为了日志安全起见,建议使用还是使用 RELP 协议进行传输。
UDP 传输协议
基于传统UDP协议进行远程日志传输,也是传统syslog使用的传输协议;
可靠性比较低,但性能损耗最少;
在网络情况比较差,或者接收服务器压力比较高情况下,可能存在丢日志情况。
服务器端配置
查看是否系统已经安装rsyslog
如果没有,采用 yum install rsyslog -y 进行安装