从英文翻译而来-Rsyslog是一个开源软件实用程序,用于UNIX和类Unix计算机系统,用于在IP网络中转发日志消息。它实现了基本的syslog协议,通过基于内容的过滤,丰富的过滤功能,灵活的配置选项扩展了它,并添加了诸如使用TCP进行传输等功能。 官方RSYSLOG网站将该实用程序定义为“用于日志处理的快速火箭系统”。
在CentOS 6和7上,rsyslog守护进程已经预先安装了。要验证rsyslog是否已经安装到你的CentOS系统上,请执行如下命令:
rpm -qa | grep rsyslog
rsyslogd -v
如果出于某种原因,Rsyslog守护进程没有出现在你的系统中,请使用以下命令来安装:
yum install rsyslog
修改Rsyslog守护进程的配置请用如下命令:
vim /etc/rsyslog.conf
修改配置文件后,你需要重启进程以激活修改:
CentOS 7:
systemctl restart rsyslog.service
CentOS 6:
service rsyslog restart
要让rsyslog客户端在每次系统重启后自动启动,请运行以下命令:
CentOS 7:
systemctl enable rsyslog.service
CentOS 6:
chkconfig rsyslog on
Rsyslog可以简单的理解为syslog的超集,在老版本的Linux系统中,Red Hat Enterprise Linux 3/4/5默认是使用的syslog作为系统的日志工具,从RHEL 6 开始系统默认使用了Rsyslog。
Rsyslog 是负责收集 syslog 的程序,可以用来取代 syslogd 或 syslog-ng。 在这些 syslog 处理程序中,个人认为 rsyslog 是功能最为强大的。 其特性包括:
- 支持输出日志到各种数据库,如 MySQL,PostgreSQL,MongoDB,ElasticSearch,等等;
- 通过 RELP TCP 实现数据的可靠传输(基于此结合丰富的过滤条件可以建立一种 可靠的数据传输通道供其他应用来使用);
- 精细的输出格式控制以及对消息的强大 过滤能力;
- 高精度时间戳;队列操作(内存,磁盘以及混合模式等); 支持数据的加密和压缩传输等。