rsyslog日志管理[通俗易懂]

rsyslog日志管理[通俗易懂]文章目录简介基本维护核心概念实例配置客户端日志服务器输出日志到mysql简介rsyslog是一个快速的日志处理系统,具有卓越的性能和出色的安全性,采用模块化设计,他可以从各种数据源中接收输入、转换数据再将结果输出到指定的位置。他不仅适用于企业,也适用于小型系统。rsyslog是一个c/s架构,既可以作为日志客户端上报日志,也可以作为服务端接收日志rsyslog是模块化设计,因此很多功能需要…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

简介

rsyslog是一个快速的日志处理系统,具有卓越的性能和出色的安全性,采用模块化设计,他可以从各种数据源中接收输入、转换数据再将结果输出到指定的位置。他不仅适用于企业,也适用于小型系统。

rsyslog是一个c/s架构,既可以作为日志客户端上报日志,也可以作为服务端接收日志

rsyslog是模块化设计,因此很多功能需要加载相关的模块
官方文档

基本维护

安装
一般主流linux系统都自带rsyslog,不过可能版本比较旧或者特性不够,可通过如下方式安装或更新

cd /etc/yum.repos.d/
wget http://rpms.adiscon.com/v8-stable/rsyslog.repo
yum install rsyslog

启停

systemctl start/stop rsyslog
查看日志
journalctl -u rsyslog

相关目录
主配置文件

/etc/rsyslog.conf

配置目录

/etc/rsyslog.d
个人的配置文件可以存放在此处

安装路径

/usr/sbin/rsyslogd

配置文件有三种格式

  1. sysklogd,
    mail.info /var/log/mail.log
  2. legacy rsyslog
  3. RainerScript(推荐)
    if prifilt(“mail.info”) then action(type=“omfile” file=”/var/log/maillog”)

调试
配置文件检查

/usr/sbin/rsyslogd -f /etc/rsyslog.conf -N1

调试日志
rsyslogd支持通过信号、环境变量、配置文件控制调试,建议通过信号和环境变量控制调试

export RSYSLOG_DEBUGLOG=/var/log/rsyslog.debug
export RSYSLOG_DEBUG=“DebugOnDeman NoStdOut”
kill -USR1 $(cat /var/run/rsyslogd.pid)

在rsyslog.conf的前面加上

$DebugFile /var/log/rsyslog.debug
# 日志增常非常快,可以设置为1,通过如下方式触发
# kill -USR1 `cat /var/run/rsyslogd.pid`
$DebugLevel 2

核心概念

message通过input module进入rsyslog,然后被传递给ruleset, 进行一系列的规则匹配,匹配到规则后,message会被传递给对应的action, 并进行相关处理,比如写入文件,写入mysql,发送到远端等。

module
分为input和output(action)
input: imfile
output: omfile
内建模块不需要load,如omfwd, omfile
可以通过yum search rsyslog查看和安装模块

message:
即日志信息,传入rsyslog的日志信息称为message,其属性有tag, facility, severity,

input:
将外部数据传入rsyslog,常见输入模块如下
imfile: 处理文本类型的日志,常用于处理应用服务的日志
imdocker: 从docker中获取日志
imjournal: 从journal中获取日志
imtcp: 从tcp中获取日志

input(type="imfile"
  File="/usr/local/easyops/agent/log/easyops.log"
  Tag="easyops_agent"
  Severity="info"
  Facility="local1")

ruleset
规则集,其包含一个filter和多个action,用于处理日志,当message匹配filter后,相应的action会执行
规则集的匹配顺序从上到下,每个规则都会检查message,即使已经匹配到了规则。
默认的ruleset为RSYSLOG_DefaultRuleset

ruleset(name="rulesetname") {
    action(type="omfile" file="/path/to/file")
    action(type="..." ...)
    /* and so on... */
}

实例

配置客户端

以下示例将/usr/local/easyops/agent/log/easyops.log的消息发送到远端192.168.100.238的tcp 514中

module(load="imfile")
ruleset(name="easyops_agent"){
    action(type="omfwd" target="192.168.100.236" port="514" protocol="tcp")
}

input(type="imfile"
    File="/usr/local/easyops/agent/log/easyops.log"
    Tag="easyops_agent"
    Severity="info"
    Facility="local1"
    ruleset="easyops_agent")

日志服务器

以下示例将tcp 514的消息存储到/var/log/tcp_t14_agent中

module(load="imtcp")
input(type="imtcp" port="514" ruleset="tcp_514")
ruleset(name="tcp_514"){
    action(type="omfile" dircreatemode="0700" filecreatemode="0644" file="/var/log/tcp_514_agent")
}

输出日志到mysql

安装rsyslog-mysql
yum install -y rsyslog-mysql
rpm -ql rsyslog-mysql

/usr/lib64/rsyslog/ommysql.so
/usr/share/doc/rsyslog-8.24.0/mysql-createDB.sql

mysql < /usr/share/doc/rsyslog-8.24.0/mysql-createDB.sql

grant all on Syslog.* to ‘rsyslog’@’%’ identified by ‘net123456’;

grant all on Syslog.* to ‘rsyslog’@‘localhost’ identified by ‘net123456’;

flush privileges;

vim /etc/rsyslog.conf

$ModLoad ommysql
*.* action(type="ommysql" server="192.168.100.236" serverport="3306"
db="Syslog" uid="rsyslog" pwd="net123456")
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/189963.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月5日 上午10:43
下一篇 2026年3月5日 上午11:15


相关推荐

  • 数据分析agent智能体搭建实战经验分享(COZE和DIFY)

    数据分析agent智能体搭建实战经验分享(COZE和DIFY)

    2026年3月12日
    2
  • linux重启查看日志及历史记录查询原因 Linux日志目录说明

    linux重启查看日志及历史记录查询原因 Linux日志目录说明linux 系统文件通常在 var log 中下面是对下面常出现的文件进行解释 var log message 系统启动后的信息和错误日志 var log secure 与安全相关的日志信息 var log maillog

    2026年3月19日
    2
  • mysql存储过程详细教程

    mysql存储过程详细教程原文记录 MYSQL 存储过程中的关键语法 DELIMITER 声明语句结束符 用于区分 CEATEPROCEDU in parameter INp inint 声明存储过程 BEGIN END 存储过程开始和结束符号 SET p in 1 变量赋值 DECLAREl intintunsign

    2026年3月17日
    2
  • Fedora linux 3322动态域名解析设置

    Fedora linux 3322动态域名解析设置br nbsp step1 安装 lynxbr nbsp nbsp nbsp nbsp nbsp nbsp nbsp nbsp yum yinstalllynx step2 修改 etc sysconfig network scripts ifup pppbr nbsp nbsp nbsp nbsp nbsp nbsp nbsp vi etc sysconfig network scripts ifup pppbr 找到 br checkthatxDS if TYPE xDSL th

    2026年3月20日
    2
  • 锚点偏移

    锚点偏移在进行锚点定位时 页面往往定位到页面的最顶部 无论是上部有导航条 还是出于美观考虑 都希望定位后该内容与页面顶部有一些间距 而锚点自动定位是无法达到的 如何处理呢 我们无法改变的是需要定位的元素一定要到最顶部 可以考虑采用 padding top 进行加高 然后问题出现了 此时 元素上部会有一大截空白 于是 可以考虑设置 margin top 为负 数值等同于 padding top 的设置抵消掉空白

    2026年3月18日
    2
  • 电脑桌面记事本便签_电脑上的便签软件哪个好用

    电脑桌面记事本便签_电脑上的便签软件哪个好用只不过,作为Windows复杂系统中的一个小组件,便签的功能比较简单:比如,它的提醒功能也就到此为止了,没有更进一步的提醒了,像文字弹窗提醒了、响铃声音提醒了等等。因此,一旦忙起来,记在它上面的待办事

    2022年8月3日
    11

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号