搭建日志服务器Rsyslog

Rsyslog介绍

Rsyslog的全称是 rocket-fast system for log,它提供了高性能,高安全功能和模块化设计。rsyslog能够接受从各种各样的来源,将其输入,输出的结果到不同的目的地。rsyslog可以提供超过每秒一百万条消息给目标文件。

特点

  • 多线程
  • 可以通过许多协议进行传输UDP,TCP,SSL,TLS,RELP;
  • 直接将日志写入到数据库;
  • 支持加密协议:ssl,tls,relp
  • 强大的过滤器,实现过滤日志信息中任何部分的内容
  • 自定义输出格式;

Rsyslog搭建

java 复制代码
rsyslog-server   10.10.10.61   收集服务器:服务端
rsyslog-client   10.10.10.67   发送服务器:客户端

rsyslog-server搭建-在服务端操作

java 复制代码
# 安装rsyslog
[root@rsyslog-server ~]# yum -y install  rsyslog

# 备份配置文件
[root@rsyslog-server ~]# cp /etc/rsyslog.conf{,.bak}

# 修改配置文件
[root@rsyslog-server ~]# vim /etc/rsyslog.conf
# 打开注释
$ModLoad imudp         # 使用udp协议,也可以使用tcp协议
$UDPServerRun 514      # 开启514端口

#### GLOBAL DIRECTIVES ####
# Use default timestamp format  # 使用自定义的格式
$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat
$template myFormat,"%timestamp% %fromhost-ip% %syslogtag% %msg%\n"
$ActionFileDefaultTemplate myFormat

# 根据客户端的IP单独存放主机日志在不同目录,rsyslog需要手动创建
$template RemoteLogs,"/var/log/rsyslog/%fromhost-ip%/%syslogtag%_%$YEAR%-%$MONTH%-%$DAY%-%$hour%:%$minute%.log"
# 排除本地主机IP日志记录,只记录远程主机日志
:fromhost-ip, !isequal, "127.0.0.1" ?RemoteLogs
# 忽略之前所有的日志,远程主机日志记录完之后不再继续往下记录
& ~

# 重启rsyslog服务
[root@rsyslog-server ~]# systemctl restart rsyslog

rsyslog-client-在客户端操作

java 复制代码
[root@rsyslog-client ~]# yum install -y rsyslog  httpd 
# 良好的习惯,从备份配置文件开始
[root@rsyslog-client ~]# cp /etc/rsyslog.conf{,.bak}   
# 修改配置文件
[root@rsyslog-client ~]# vim /etc/rsyslog.conf
# 打开注释
# Provides UDP syslog reception
$ModLoad imudp
$UDPServerRun 514

#设置日志服务器地址
*.* @10.10.10.61:514

开始测试

服务端操作

java 复制代码
# 服务端检查日志输出
[root@rsyslog-server ~]# tail /var/log/messages
Apr 27 15:10:25 server systemd: Started Session 5 of user root.
Apr 27 15:10:30 web systemd: Stopping The Apache HTTP Server...
Apr 27 15:10:30 web kernel: xfs filesystem being remounted at /tmp supports timestamps until 2038 (0x7fffffff)
Apr 27 15:10:30 web kernel: xfs filesystem being remounted at /var/tmp supports timestamps until 2038 (0x7fffffff)
Apr 27 15:10:31 web systemd: Stopped The Apache HTTP Server.
Apr 27 15:10:31 web systemd: Starting The Apache HTTP Server...
Apr 27 15:10:31 web kernel: xfs filesystem being remounted at /tmp supports timestamps until 2038 (0x7fffffff)
Apr 27 15:10:31 web kernel: xfs filesystem being remounted at /var/tmp supports timestamps until 2038 (0x7fffffff)
Apr 27 15:10:31 web httpd: AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using 10.0.0.14. Set the 'ServerName' directive globally to suppress this message
Apr 27 15:10:31 web systemd: Started The Apache HTTP Server.

客户端操作

java 复制代码
# 客户端重启httpd
[root@rsyslog-client ~]# systemctl restart httpd

# 生成示例日志
logger -p "mail.info" "this is test log"

在服务端查看日志目录,发现有67的日志文件

相关推荐
萨格拉斯救世主17 分钟前
戴尔R930服务器增加 Intel X710-DA2双万兆光口含模块
运维·服务器
无所谓จุ๊บ18 分钟前
树莓派开发相关知识十 -小试服务器
服务器·网络·树莓派
Jtti19 分钟前
Windows系统服务器怎么设置远程连接?详细步骤
运维·服务器·windows
yeyuningzi33 分钟前
Debian 12环境里部署nginx步骤记录
linux·运维·服务器
EasyCVR1 小时前
萤石设备视频接入平台EasyCVR多品牌摄像机视频平台海康ehome平台(ISUP)接入EasyCVR不在线如何排查?
运维·服务器·网络·人工智能·ffmpeg·音视频
wowocpp2 小时前
ubuntu 22.04 硬件配置 查看 显卡
linux·运维·ubuntu
萨格拉斯救世主3 小时前
jenkins使用slave节点进行node打包报错问题处理
运维·jenkins
川石课堂软件测试3 小时前
性能测试|docker容器下搭建JMeter+Grafana+Influxdb监控可视化平台
运维·javascript·深度学习·jmeter·docker·容器·grafana
龙哥说跨境3 小时前
如何利用指纹浏览器爬虫绕过Cloudflare的防护?
服务器·网络·python·网络爬虫
pk_xz1234564 小时前
Shell 脚本中变量和字符串的入门介绍
linux·运维·服务器