Linux rsyslog和过滤规则

  • /etc/rsyslog.conf 是rsyslog服务的总配置文件

  • /etc/rsyslog.d 该目录是单独配置的rsyslog配置文件

vim /etc/rsyslog.conf
$IncludeConfig /etc/rsyslog.d/*.conf

个人建议,将所有的rule都配置在该目录下,在/etc/rsyslog.conf中不写rule

配置文件/etc/rsyslog.conf主要有3个部分

  1. MODULES :模块

  2. GLOBAL DRICTIVES :全局设置

  3. RULES:规则

RULES:规则

过滤

$msg

if $msg contains '%ASA-' and $syslogseverity <= '6' then {
	-/var/log/cisco-asa.log
	stop
}
 

模板

任何rsyslog生成的日志都可以根据需要使用模板进行格式化,要创建模板,使用如下指令

$template TEMPLATE_NAME,"text %PROPERTY% more text", [OPTION]

这里的$template指令表明了接下来的内容定义了一个模板,TEMPLATE_NAME是模板的名称,接下来双引号之间的内容为模板的内容。

这里还有一个 OPTION , 它指定了模板的功能,支持选项为sql和stdsql,在使用数据库存储的时候会用到。

生成动态文件名

模板可以用来生成动态文件名,就如之前所述,在使用动态文件名的时候,需要在 ACTION 中的模板名称前增加?表明该文件名是动态生成的。

例如:

$template DynamicFile,"/var/log/test_logs/%timegenerated%-test.log"
*.* ?DynamicFile

timegenerated属性从日志信息中提取出消息的时间戳,这样可以为每个日志生成唯一文件名称。

以下是一些简单属性的示例:

以下属性获取系统日志消息的整个消息文本:

%msg% 

以下属性获取系统日志消息的消息文本的前两个字符:

%msg:1:2%

以下属性获取系统日志消息的整个消息文本,并删除其最后一个换行符:

%msg ::: drop-last-lf%

以下属性获取接收到syslog消息时生成的时间戳的前10个字符,并根据RFC 3999日期标准对其进行格式化。

%timegenic:1:10:date-rfc3339%
#  %syslogpriority-text% : syslog priority
#  %syslogfacilityt-text% : syslog facility
#  %timegenerated% : timestamp when the message was received
#  %HOSTNAME% : hostname
#  %syslogtag% : tag
#  %msg% : the message sent to syslog

所有的属性参考:

https://www.rsyslog.com/doc/master/configuration/properties.html

logrotate配置文件

logrotate的配置文件为/etc/logrotate.conf

自定义的log rotation配置文件在/etc/logrotate.d目录下

比较全的总结:

https://www.jianshu.com/p/e129ed893362

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Linux rsyslog是一种高性能的日志管理工具,它可以收集、处理和转发各种类型的日志数据。它支持多种日志协议和格式,包括syslog、JSON、XML等。rsyslog还提供了强大的过滤、分析和转换功能,可以帮助管理员更好地管理和监控系统日志。同时,rsyslog还支持多种输出方式,包括文件、数据库、网络等,可以满足不同场景下的需求。 ### 回答2: Linux rsyslog是一种高性能的系统日志管理工具,可以用于收集、存储和分析各种系统事件和错误消息。 rsyslog的主要功能包括:日志的收集和传输、过滤和处理、存储和归档、以及实时监控和告警。 在日志的收集和传输方面,rsyslog支持多种协议,比如UDP、TCP、TLS和REL TCP等,可以从远程服务器、网络设备和应用程序等多个来源收集日志,并将其传输到指定的目的地。 rsyslog过滤和处理功能很强大,可以根据配置文件中定义的规则,对收集到的日志进行过滤、分类和处理。这些规则可以根据日志的来源、内容和级别等进行设置,以实现针对性的日志管理。 存储和归档是rsyslog的重要功能之一,它可以将收集到的日志按照指定的方式和格式保存到本地文件或者远程存储服务器上。同时,rsyslog还支持归档和压缩等操作,帮助用户有效管理和存储大量的日志数据。 实时监控和告警是rsyslog的关键特性之一,通过实时监控日志的产生和变化,用户可以迅速发现系统中的异常情况,并及时采取措施。同时,rsyslog还支持通过邮件、短信或者其他方式发送告警通知,及时通知用户发生的重要事件和错误。 总之,Linux rsyslog是一款功能强大的系统日志管理工具,其灵活的配置和高性能的特性,使得它成为了广泛应用于各种Linux环境中的首选工具。 ### 回答3: Linux rsyslog是一种强大而灵活的系统日志管理工具。它是Linux操作系统中的标准日志处理程序,可用于收集、处理和存储系统日志。rsyslog支持各种日志协议,包括Syslog、TCP、UDP和TLS,并支持日志的过滤、转发和存储。 rsyslog的功能非常丰富,使管理员能够对日志进行详细的配置和控制。它可以实现日志的中央化管理,通过配置服务器和客户端,将分散在多台计算机上的日志集中到一个地方进行集中存储和分析。这对于大型网络环境下的集中日志管理非常有用。 rsyslog还支持灵活的日志过滤功能,可以根据不同的条件过滤和筛选日志。管理员可以根据需求设置过滤规则,将特定类型或级别的日志集中处理或存储,从而提高系统安全性和效率。 此外,rsyslog还支持插件和模块的扩展。它可以通过插件来支持各种日志格式和处理方式,例如JSON、数据库、邮件等。管理员可以根据自己的需求选择适合的插件来实现定制化的日志处理功能。 总之,rsyslog是一个功能强大且高度可配置的系统日志管理工具,通过它,管理员可以方便地收集、处理和存储系统日志。它的灵活性和可扩展性使其成为Linux系统中不可或缺的一部分。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值