前期准备
两台CentOS虚拟机
网络正常两台机器可以ping通
最后还缺一个屏幕前的你(搭建日志服务器)
需求
进行日志服务器的配置,使客户端把 任意类型的 高于和等于info级别的日志通过TCP的方式 发送到日志服务器中,并配置默认的日志采集格式为 日志时间 主机IP 日志记录目标 日志内容
搭建日志服务器
配置客户端(10.10.10.131)
[root@localhost ~]# vim /etc/rsyslog.conf #配置日志采集文件,之后保存
退出vim
[root@localhost ~]# systemctl restart rsyslog.service # 重启日志服务配置文件
在对面打开tail实时监听命令之后 客户端这边向其发送日志
[root@localhost ~]# logger=====================123331===============
配置日志服务器(10.10.10.142)
[root@localhost ~]# vim /etc/rsyslog.conf
[root@localhost ~]# systemctl restart rsyslog.service
[root@localhost ~]# netstat -ntlp | grep rsyslog # 查看514端口是否异常
[root@localhost ~]# firewall-cmd --add-port=514/tcp --permanent # 放行514端口
[root@localhost ~]# firewall-cmd --reload # 重载防火墙配置
[root@localhost ~]# tail -f /var/log/messages # 进行日志实时监听,我们看到已经接受到客户端发送的数据
# 开始在日志服务器端配置日志采集格式
[root@localhost ~]# vim /etc/rsyslog.conf
# ggbond是自定义的规则
[root@localhost ~]# systemctl restart rsyslog.service #重启配置服务
最后在客户端重新发送数据 ;服务器端打开监听日志
下图我们可以看到格式已改变
附录
自定义日志采集格式
$template 自定义格式名,"%timegenerated% %FROMHOST-IP% %syslogtag% %msg%\n"
"%timegenerated% #显示日志时间
%FROMHOST-IP% #显示主机IP
%syslogtag% #日志记录目标
%msg% #日志内容
\n #换行
在调用规则时也可以在message文件后面加冒号;+规则名字