linux日志工具Rsyslog
linux日志工具Rsyslog
- linux日志工具Rsyslog
- rsyslog介绍
- 特点
- 配置文件
- MODULES
- GLOBAL DRICTIVES
- RULES
- 命令
- rsyslog配置
- rsyslog外发配置(客户端)
- rsyslog接受配置(服务端)
- 参考文献
linux日志工具Rsyslog
rsyslog介绍
特点
Rsyslog的全称是 rocket-fast system for log,它提供了高性能,高安全功能和模块化设计。rsyslog能够接受从各种各样的来源,将其输入,输出的结果到不同的目的地。rsyslog可以提供超过每秒一百万条消息给目标文件。rsyslog 可以理解为多线程增强版的syslog, 在syslog的基础上扩展了很多其他功能,如数据库支持(MySQL、PostgreSQL、Oracle等)、日志内容筛选、定义日志格式模板等。目前大多数Linux发行版默认也是使用rsyslog进行日志记录,也是ELK(ElasticSearch+Logstash+Kibana)中不可缺少的一部分。
- 多线程
- 自定义输出格式
- 直接将日志写入到数据库
- 支持加密协议:ssl,tls,relp
- 强大的过滤器,实现过滤日志信息中任何部分的内容
- 可以通过许多协议进行传输UDP,TCP,RELP
- UDP 传输协议基于传统UDP协议进行远程日志传输,也是传统syslog使用的传输协议;可靠性比较低,但性能损耗最少,在网络情况比较差,或者接收服务器压力比较高情况下,可能存在丢日志情况。在对日志完整性要求不是很高,在可靠的局域网环境下可以使用。
- TCP 传输协议,基于传统TCP协议明文传输,需要回传进行确认,可靠性比较高;但在接收服务器宕机或者两者之间网络出问题的情况下,会出现丢日志情况。这种协议相比于UDP在可靠性方面已经好很多,并且rsyslog原生支持,配置简单,同时针对可能丢日志情况,可以进行额外配置提高可靠性,因此使用比较广。
- RELP 传输协议,RELP(Reliable Event Logging Protocol)是基于TCP封装的可靠日志消息传输协议;是为了解决TCP与UDP协议的缺点而在应用层实现的传输协议,也是三者之中最可靠的。但需要多安装一个包rsyslog-relp以支持该协议。
配置文件
/etc/rsyslog.conf:主配置文件
/etc/rsyslog.d:自定义配置文件,建议将所有rules配置在该目录下
主配置文件中包含以下字段
- MODULES:模块
- GLOBAL DRICTIVES:全局配置
- RULES:规则