rsyslog使用omelasticsearch插件向ES推送日志

  • Post author:
  • Post category:其他


1.背景

rsyslog是syslog的升级版,是一个日志管理服务,可以作为客户端与服务端进行启动,收集服务器上的任意日志。rsyslog经常需要配合logstash将日志推送到ES。然而logstash需要java服务,需要额外的安装。通过查询rsyslog,发现omelasticsearch插件,使用ES的http api,可以直接将日志发送到ES。

2.安装

服务器:CentOS Linux release 7.9.2009 (Core)

centos 默认安装了rsyslog,所以不需要安装主体。直接安装omelasticsearch插件:

yum install rsyslog-elasticsearch


3.配置rsyslog

/etc/rsyslog.conf

//加载模块
module(load="omelasticsearch") 

//配置log模版
template(name="pot"
         type="list"
         option.json="on") {
           constant(value="{")
             constant(value="\"timestamp\":\"")      property(name="timereported" dateFormat="rfc3339")
             constant(value="\",\"message\":\"")     property(name="msg")
             constant(value="\",\"host\":\"")        property(name="hostname")
             constant(value="\",\"severity\":\"")    property(name="syslogseverity-text")
             constant(value="\",\"facility\":\"")    property(name="syslogfacility-text")
             constant(value="\",\"syslogtag\":\"")   property(name="syslogtag")
           constant(value="\"}")
         }

//发送日志配置
action(type="omelasticsearch"
file = "/var/log/pot.log"    //发送的文件
       server="127.0.0.1"
       serverport="9200"
       template="pot"
       searchIndex="pot"
       bulkmode="on"
       maxbytes="100m"
       queue.type="linkedlist"
       queue.size="5000"
       queue.dequeuebatchsize="300"
       action.resumeretrycount="-1")



版权声明:本文为weixin_42353842原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。