侧边栏壁纸
博主头像
落叶人生博主等级

走进秋风,寻找秋天的落叶

  • 累计撰写 130562 篇文章
  • 累计创建 28 个标签
  • 累计收到 9 条评论
标签搜索

目 录CONTENT

文章目录

rsyslog采集impstats信息入elasticsearch

2023-12-01 星期五 / 0 评论 / 0 点赞 / 80 阅读 / 4234 字

当前日志系统常用的有elk(elasticsearch logstash kibana),不过很多公司不喜欢用logstash,而会用很多其他性能好、资源利用少的日志采集软件,其中rsyslog会是很

当前日志系统常用的有elk(elasticsearch logstash kibana),不过很多公司不喜欢用logstash,而会用很多其他性能好、资源利用少的日志采集软件,其中rsyslog会是很多公司考虑的一款软件。如果选择了rsyslog,就无法避免的怎样去监控rsyslog的队列信息,还好rsyslog自身通过impstats模块可以快速获得到队列的信息,我们就可以简单把队列信息转发到elasticsearch。

impstats

module(load="impstats" interval="120" severity="6" log.syslog="on" format="json-elasticsearch" resetCounters="on")

omelasticsearch

ruleset( name="RulesetForImpstatsOmes" ){  action(  name="parse_impstats"  cookie=""  type="mmjsonparse"  )  action(  type = "omelasticsearch"  template="linetemplate"  server="127.0.0.1”  serverport="9200"  dynSearchType="on"  dynSearchIndex="on"  searchIndex="impstatsIndexName"  searchType="impstatsTypeName"  name="action_omelasticsearch-log2es"  bulkmode="on"  )}

mmjsonparse

JSON / CEE结构化内容提取模块(mmjsonparse)

模块名称:mmjsonparse可用时间: 6.6.0+作者:赖Gerhards < rgerhards @ adiscon 。COM >说明:此模块支持解析遵循CEE / lumberjack规范的结构化日志消息。检查所谓的“CEE cookie”,并且如果存在,解析JSON编码的结构化消息内容。然后,属性可用作原始消息属性。“CEE cookie”是字符串“@cee:”,它必须在实际的JSON之前。请注意,JSON必须有效,且不得后跟任何非JSON消息。如果这些条件不成立,mmjsonparse将不解析相关的JSON。这是基于在CEE /项目樵夫中使用的cookie定义,并且意在帮助防止错误地将消息检测为不是CEE的CEE。这也意味着mmjsonparse当前不是一个通用的JSON解析器,它从消息中可能发生的JSON中拾取JSON。这是有意的,但是未来的版本可能支持配置参数以放宽格式要求。具体的操作配置指令:

  • 饼干 [字符串]默认为“@cee:”
  • 允许设置必须在消息的JSON部分前面存在的cookie。最重要的是,这可以设置为空字符串(“”),以便不需要任何cookie。在这种情况下,JSON前面允许使用前导空格。JSON之后不允许使用非空格字符。如果需要,则必须使用mmnormalize。样品:这将激活模块并对所有消息应用规范化:

模块(负载= “mmjsonparse” )的动作(类型= “mmjsonparse” )

要允许解析没有cookie的邮件,请使用此操作语句:

action(type =“mmjsonparse”cookie =“”)

传统格式:

$ ModLoad mmjsonparse

  • *:mmjsonparse:

if( $syslogfacility-text=="syslog" ) then{call RulesetForImpstatsOmesstop}

模板配置

template( name="linetemplate" type="list" ) {constant(value="{")property(name="timereported" dateFormat="rfc3339" format="jsonf" outname="@timestamp")constant(value=",")property(name="hostname" format="jsonf" outname="host")constant(value=",")property(name="$!all-json" position.from="2")# constant(value="}")}template( name="impstatsIndexName" type="list" ) {constant(value="impstats-")property(name="timereported" dateFormat="rfc3339" position.from="1" position.to="4")constant(value=".")property(name="timereported" dateFormat="rfc3339" position.from="6" position.to="7")constant(value=".")property(name="timereported" dateFormat="rfc3339" position.from="9" position.to="10")}template( name="impstatsTypeName" type="string" string="%programname%")

广告 广告

评论区