• 1.Basic Structure


    配置:
    
    rsyslogd 配置通过rsyslog.conf file,典型的在/etc下。默认的,
    
    rsyslogd 读取/etc/rsyslog.conf 文件,这个可以通过命令行选项改变
    
    注意 配置可以通过在线rsyslog 配置创建工具生成
    
    配置文件例子可以在rsyslog wiki找到, 同时保留rsyslog 配置片段在你的脑子里。
    
    基本结构:
    
    
    本节描述 rsyslog 配置基本的工作,想象rsyslog 作为一个大的logging和事件处理工具。
    
    
    它可以被认为是一个框架具有一些基本的处理,是固定的数据流方式,
    
    但是是高度可定制的在消息流的细节上。在配置过程中,
    
    这个定制是通过定义和自定义rsyslog 对象实现的。
    
    
    消息流和对象的快速概述:
    
    
    Message 进入rsyslog 在input 模块的帮助下, 然后,它们可以被传递给规则
    
    在规则被有条件的应用下, 当一个规则匹配, 消息是被传输到action,
    
    
    然后对消息做一些处理 比如,写到文件,数据库或者转发到远程主机
    
    
    处理原则
    
    
    
    1.输入提交接收到的消息到规则集 
    
    如果规则集没有明确的限制,默认规则集被使用
    
    2. 默认的,这里有一个规则集(RSYSLOG_DefaultRuleset)
    
    3.额外的规则及可以用户自定义
    
    4.每个规则集包含0个或者多个规则
    
    虽然允许0个规则在一个规则集,但是先让没有意义
    
    5.一个过滤器的规则集合一个动作列表
    
    6.过滤器提供yes/no 决定和 从而控制流能力
    
    7.如果一个过滤器(filter say yes),相应的action列表是被执行。
    
    如果不匹配,没有什么发生
    
    8.规则是按顺序被评估从第一个到最后一个规则在给定的规则集。
    
    从无关的规则集 没有规则会被评估
    
    9. 所有的规则总是被完全评估的,无论是否匹配一个过滤器或者不匹配(我们不会在第一次匹配停止)
    
    
    如果消息处理应该停止,“discard” action (波浪符号或者停止命令代表)
    
    必须明确被执行。如果 discard被执行,消息处理立即停止,不会评估任何其他规则
    
    10.一个action 列表包含一个或者多个actions
    
    11.在一个action 列表没有进一步过滤是可能的
    
    12. 在一个列表有一个以上的action, &字符必须放在过滤器位置,这个必须立即按照以前的action
    
    13.actions 有action请求本身组成(e.g. ”:omusrmsg:”) 以及所有定义的action配置语句
    
    14. 如果旧的格式被使用,$Action 指令必须被指定在action之前
    
    
    配置文件
    
    
    在启动时, rsyslog 读取它的配置从rsyslog.conf 文件,
    
    文件包含引用到其他配置文件
    
    
    一个不同的"root"配置文件可以通过-f 选项加载,这个通常在一些init脚本或者类似的设备里
    
    语句类型:
    
    Rsyslog 同时支持3种不同类型的配置语句:
    
    sysklogd - t 这是普通的旧的格式, 无处不在 仍旧相当有用对于简单的使用情况。
    
    注意 一些很少的结构是不在被支持了,因为它们不兼容新的功能,这些在兼容性里会提到
    
    legacy rsyslog - 那个语句以$符号开始,它们设置一些配置参数和修改例如 操作的方式。
    
    
    这是唯一的格式支持在V6版本以前。 但是它仍旧完全被支持在V6和以上版本。
    
    注意一些plugins 和功能可能只能通过legacy format (因为plugins 需要被显示的升级来使用新的style 格式,
    
    不是所有的插件)
    
    RainerScript  最新的样式,这是最好的和最精确的格式用于很多复杂的情况。
    
    
    rsyslog.conf 文件有语句组成,对于老的样式(ysklogd & legacy rsyslog),
    
    按行。
    
    对于新的样式(RainerScript)  行空间是无关紧要的,
    
    最重要的是, 这意味着新的style actions 和所有其他对象可以分散到多行 当用户需要时
    
    
    推荐的语句类型:
    
    通常 推荐使用 RainerScript 类型语句,因为它们提供了干净的容易的来读取 控制流程以及对于哪个参数是主动的会没有疑问。
    
    
    它们也没有副作用对于include 文件,可以是一个主要的障碍对于 legacy rsyslog statements.
    
    
    对于每个简单的事情 sysklogd 语句类型仍旧是推荐的,尤其是如果 全部配置包含一些简单的事情。
    
    mail.info /var/log/mail.log
    mail.err @server.example.net
    
    这是很难被击败的在简单性上,仍旧被教在很多地方
    
    作为一个规则翻阅,RainerScript 配置语句应该被使用当:
    
    
    配置参数是需要的(例如 动作   legacy statements 类型)
    
    它通常不推荐使用rsyslog legacy config format(那些指定以$符号开始)
    
    然而, 一些少的设置和模块没有被转换到RainerScript。在这些情况下, legacy syntax必须被使用。
    
    
    Comments
    
    有2种类型的注释:
    
    #-Comments 以#号开始,运行到行结束
    
    处理顺序:
    
    指令是被处理从 rsyslog.conf 的顶部到底部,顺序很重要。
    
    比如, 如果你停止处理消息,显然所有的语句在停止语句后不会被评估
    
    
    流程控制语句:
    
    
    数据处理语句:
    
    
    数据操作是通过设置完成,unset和reset 语句
    
    
    Inputs
    
    
    每个input 需要一个input 模块来被加载和一个侦听定义它。
    
    详细的细节可以在rsyslog 模块文件里找到,一旦加载, inputs 通过input()对象
    
    input(type="imfile"
    File="/usr/local/apache-tomcat-7.0.55_8082/logs/catalina.out"
    Tag="zjzc-api01"
    Severity="info"
    Facility="local5")
    
    
    Outputs
    
    
    输出也被称为"actions", 一个小的actions集 是预加载(像output file writer,
    
    是用于几乎所有的在rsyslog.conf),其他必须被load 就像inputs
    
    

  • 相关阅读:
    《Cracking the Coding Interview》——第7章:数学和概率论——题目4
    《Cracking the Coding Interview》——第7章:数学和概率论——题目3
    《Cracking the Coding Interview》——第7章:数学和概率论——题目2
    最小二乘拟合
    设置手机邮件下载文件路径
    #pragma data_seg() 共享数据// MyData段 // 进程 // DLL
    树状数组板子 x
    博弈论 x
    luogu P1147 连续自然数和 x
    luogu P1068 分数线划定 x
  • 原文地址:https://www.cnblogs.com/zhaoyangjian724/p/6199150.html
Copyright © 2020-2023  润新知