当前位置: 首页 > news >正文

rsyslog简单应用

rsyslog简介

  • Rsyslog的全称是 rocket-fast system for log ,可用于接受来自各种来源的输入,转换 它们,并将结果输出到目的地。

  • 它提供了高性能、强大的安全功能和模块化设计。虽然rsyslog最初是一个常规的系 统日志,但它已经发展成为一种瑞士军刀式的日志记录,当应用有限处理时, RSYSLOG每秒可以向本地目的地发送超过一百万条消息。即使使用远程目的地和更 精细的处理,性能通常被认为是“惊人的”。

  • rsyslog是一个开源工具,被广泛用于Linux系统以通过TCP/UDP协议转发或接收日 志消息。rsyslog守护进程可以被配置成两种环境,一种是配置成日志收集服务器, rsyslog进程可以从网络中收集其它主机上的日志数据,这些主机会将日志配置为发 送到另外的远程服务器。rsyslog的另外一个用法,就是可以配置为客户端,用来过 滤和发送内部日志消息到本地文件夹(如/var/log)或一台可以路由到的远程rsyslog 服务器上。

  • 官网地址:https://www.rsyslog.com/

安装

dnf install rsyslog-8.2102.0-105.el9.x86_64

查看状态

systemctl status rsyslog.service

默认日志路径

内核日志		/dev/console
通用信息日志		/var/log/messages
认证日志		/var/log/secure
邮件日志		-/var/log/maillog
任务计划日志		/var/log/cron
紧急消息日志		:omusrmsg:*
新闻系统日志		/var/log/spooler
启动日志		/var/log/boot.log

日志类型

auth 		#用户认证,比如用户登录系统
authpriv 	#服务认证,比如ssh远程登录
cron 		#时间任务
kern 		#内核类型
mail 		#邮件
news		#系统更新信息
user 		#用户

日志级别

none 		#不采集
debug 		#程序排错信息
info		#程序常规运行信息
notice 		#重要信息的普通日志
waring 		#程序警告
err 		#程序报错
crit 		#严重级别会导致系统软件不能正常工作
alert 		#系统中立即要更改的信息
emerg 		#系统的严重问题日志#从高到底依次为:
emerg(紧急) > alert(警告) > crit(严重) > err(错误) > warning(警告) > notice(通知) > info(信息) > debug(调试)

主配置文件/etc/rsyslog.conf

全局指令 (Global Directives)

#### GLOBAL DIRECTIVES ##### 工作目录,用于存储状态文件和队列文件
global(workDirectory="/var/lib/rsyslog")# 定义日志格式为传统时间戳格式
module(load="builtin:omfile" Template="RSYSLOG_TraditionalFileFormat")# 导入/etc/rsyslog.d/目录下的所有配置文件
include(file="/etc/rsyslog.d/*.conf" mode="optional")

模块加载 (Modules)

#### MODULES ##### 加载 imuxsock 模块,用于接收本地系统日志(例如通过 logger 命令生成的日志)
# SysSock.Use="off" 关闭本地日志套接字,改用 imjournal 模块从 systemd 获取日志
module(load="imuxsock"  SysSock.Use="off") # 加载 imjournal 模块,用于从 systemd journal 获取日志
# StateFile 记录读取 journal 的位置,重启后可继续从断点读取
module(load="imjournal" StateFile="imjournal.state") #读取内核日志(现代系统中已通过 journald 读取,无需单独加载)
module(load="imklog")#提供 --MARK-- 消息功能(定期发送标记消息)
module(load="immark") #提供udp系统日志接收
module(load="imudp") # needs to be done just once
input(type="imudp" port="514")#提供tcp系统日志接收
module(load="imtcp") # needs to be done just once
input(type="imtcp" port="514")

日志规则 (Rules)

#### RULES #####内核日志
#将所有内核消息输出到控制台(通常用于调试,生产环境一般注释掉)
#kern.*                                                 /dev/console#通用信息日志
# 记录除 mail、authpriv、cron 外的所有 info 级别及以上的日志到 /var/log/messages
# 排除 mail:避免邮件日志充斥 messages
# 排除 authpriv:认证相关日志单独存放
# 排除 cron:计划任务日志单独存放
*.info;mail.none;authpriv.none;cron.none                /var/log/messages#认证日志
# 将所有 authpriv 设施的日志(如 sshd、sudo)记录到 /var/log/secure
# 该文件通常权限为 600,仅限 root 访问
authpriv.*                                              /var/log/secure#邮件日志
# 将所有 mail 设施的日志记录到 /var/log/maillog
# 前缀 "-" 表示异步写入,提高性能(日志可能会延迟写入,但对邮件系统影响较小)
mail.*                                                  -/var/log/maillog#任务计划日志
#将 cron 设施的日志(计划任务执行情况)记录到 /var/log/cron
cron.*                                                  /var/log/cron#紧急消息日志
# 当发生紧急情况(如系统崩溃)时,向所有登录用户发送消息
*.emerg                                                 :omusrmsg:*#新闻系统日志
# 将 uucp 和 news 设施的 crit 级别及以上的日志记录到 /var/log/spooler
# 这些日志通常与系统间通信和新闻服务器相关
uucp,news.crit                                          /var/log/spooler#启动日志
# 将 local7 设施的日志(通常是 bootloader 和系统启动过程)记录到 /var/log/boot.log
local7.*                                                /var/log/boot.log

转发规则示例(sample forwarding rule)

# ### sample forwarding rule ###
action(type="omfwd"  # 配置磁盘队列:当远程服务器不可用时,将日志暂存到磁盘queue.filename="fwdRule1"       # 队列文件前缀queue.maxdiskspace="1g"         # 最大磁盘空间 1GBqueue.saveonshutdown="on"       # 关机时保存队列queue.type="LinkedList"         # 使用链表队列,异步处理action.resumeRetryCount="-1"    # 无限重试,直到远程服务器恢复# 远程服务器配置(TCP 协议保证可靠传输)Target="remote_host" Port="XXX" Protocol="tcp")

test

实验环境

主机1 rhel9,网卡nat,ip 192.168.60.10主机2 rhel9,网卡nat,ip 192.168.60.10

定义日志采集格式修改

1.编辑日志采集格式模板

$template CUSTOM_LOGFORMAT,"%FROMHOST-IP% %timegenerated% %syslogtag% %msg%\n"
#ip 时间戳 日志标签 日志内容主体

日志信息常用属性

%timestamp%日志生成时间(默认格式:Jul 14 10:00:00Jul 14 10:00:00
%hostname%产生日志的主机名 / IPserver01192.168.1.100
%programname%产生日志的程序名sshdnginx
%syslogtag%日志标签(通常包含程序名和进程 ID)sshd[12345]:
%msg%日志内容主体Accepted password for user
%syslogseverity-text%日志级别(文本形式)infoerr
%syslogfacility-text%日志设施(文本形式)authprivkern

2.使用模板

#1、将模板写道规则后
*.*  /var/log/dl;CUSTOM_LOGFORMAT
#2、修改默认日志格式
module(load="builtin:omfile" Template="CUSTOM_LOGFORMAT")

3.重启rsyslog服务,使配置生效

systemctl restart rsyslog.service

4.效果

在这里插入图片描述

自定义日志路径

1.进入主配置文件

vim /etc/rsyslog.conf

2.写入

*.*;authpriv.none               /var/log/dl
#除了认证之外的所有日志信息都记录在/var/log/dl中

3.重启rsyslog服务,使配置生效

systemctl restart rsyslog.service

4.查看

在这里插入图片描述

日志同步

1.主机a接收方(192.168.60.10)配置

#进入主配置文件
vim /etc/rsyslog.conf#修改(udp)
module(load="imudp") # needs to be done just once			#加载日志接收模块
input(type="imudp" port="514")								#指定模块端口
#(tcp)
#module(load="imtcp") # needs to be done just once
#input(type="imtcp" port="514")#重启
systemctl restart rsyslog.service
#测试
netstat -antlupe | grep rsyslog
#关闭防火墙
systemctl stop firewalld.service

2.主机b发送方(192.168.60.20) 配置

 #进入主配置文件vim /etc/rsyslog.conf#修改(udp)*.*             @192.168.60.10#(tcp)*.*     		@@192.168.60.10#重启systemctl restart rsyslog.service

3.测试

主机b

logger test massages

主机a

tail /var/log/massages

在这里插入图片描述

http://www.dtcms.com/a/279931.html

相关文章:

  • STM32F769I-DISCO 串口调试
  • Linux上基于C/C++头文件查找对应的依赖开发库
  • SAP B1认证资料-题目
  • 分布式系统中实现临时节点授权的高可用性与一致性
  • 哈希扩展 --- 海量数据处理
  • CISSP知识点汇总- 通信与网络安全
  • 15.Python 列表元素的偏移
  • Java学习————————ThreadLocal
  • python Gui界面小白入门学习二
  • python高阶调试技巧,替代print
  • 14.推荐使用 dict.get(key) 而不是 dict[key]
  • redis配置(Xshell连接centos7的基础上)
  • Modbus 开发工具实战:ModScan32 与 Wireshark 抓包分析(一
  • Python `WeakValueDictionary` 用法详解
  • 调用 System.runFinalizersOnExit() 的风险与解决方法
  • C语言基础5——控制语句2(循环)
  • TypeScript枚举类型应用:前后端状态码映射的最简方案
  • 深入学习前端 Proxy 和 Reflect:现代 JavaScript 元编程核心
  • Java并发编程之线程池详解
  • openGL学习(Shader)
  • 【面板数据】全国地级市逐日空气质量指数AQI数据集(2013-2024年)
  • 代码随想录算法训练营第四十九天|单调栈part2
  • Java强化:IO流
  • 正则表达式替换中使用 g<0> 引用整个匹配的内容
  • vim扩展与 neovim
  • IOS开发者账号如何添加 uuid 原创
  • Doris
  • 20250714--长连接应用中ORA-04061: existing state of has been invalidated
  • 迪拜金融市场交易量激增,中阿资本合作深化——阿联酋交易所系统解决方案全景解析
  • Transformer江湖录 第七章:江湖新篇 - Transformer的现代演化