Rsyslog日志采集

Rsyslog日志采集

hostname IP 操作系统
Rsyslog-Server 10.1.1.2 CentOS 7
Rsyslog-Client 10.1.1.3 CentOS 7

服务端配置

配置文件里有三个配置模块,分别是:

  • MODULES:定义了模块的选修,这个部分主要用来配置模板,模板的作用是指定 你希望在日志文件中保存的日志格式。

  • GLOBAL DIRECTIVES:定义了全局的环境

  • RULES:定义了记录日志的设施以及等级等信息

修改MODULES模块打开注释,监听udp和tcp 514端口

[root@Rsyslog-Server ~]# vi /etc/rsyslog.conf
#### MODULES ####
# Provides UDP syslog reception
$ModLoad imudp
$UDPServerRun 514

# Provides TCP syslog reception
$ModLoad imtcp
$InputTCPServerRun 514

定义接收过来的日志存放路径:

也是MODULES模块,最后添加如下两行配置

[root@Rsyslog-Server ~]# vi /etc/rsyslog.conf
#### MODULES ####
$template RemoteLogs,"/var/log/syslog/%$YEAR%-%$MONTH%/%fromhost-ip%/%fromhost-ip%_%$YEAR%-%$MONTH%-%$DAY%.log"
*.* ?RemoteLogs

需要手动创建日志文件夹并重启:

[root@Rsyslog-Server ~]# mkdir /var/log/syslog
[root@Rsyslog-Server ~]# systemctl restart rsyslog
#重启之后会自动生成归档的日志文件,默认只有127.0.0.1的,你需要配置客户端发送日志过来。

客户端配置

客户端的配置非常简单,只需要在配置文件的RULES模块中添加配置:

*.*                                                     @@10.1.1.2

如果使用udp发送的话是一个@,这里@@是使用tcp发送。

配置完成之后即可查看日志

微信截图_20241230130214

posted @ 2024-12-30 16:30  国杰响当当  阅读(65)  评论(0)    收藏  举报