Rsyslog日志采集

Rsyslog是CentOS6.X自带的一款系统日志工具:

1.支持多线程

2.支持TCP,SSL,TLS,RELP等协议

3.支持将日志写入MySQL, PGSQL, Oracle等多种关系型数据中

4.拥有强大的过滤器,可实现过滤系统信息中的任意部分

5.可以自定义日志输出格式

 

配置文件相关:

[root@monitorelasticsearch-head]# cat /etc/rsyslog.conf

*.info;mail.none;authpriv.none;cron.none/var/log/messages #定义各类型日志存放位置

cron.*                     /var/log/cron  ##具体日志存放的位置

几种文件说明:

auth                   #认证日志

authpriv             #认证授权认证

cron                   #任务计划相关日志

kern                    #内核相关日志

lpr                     #打印

mail                    #邮件日志

mark(syslog)        #rsyslog服务内部的信息,时间标识

news                    #新闻组

user                    #用户程序产生的相关信息

uucp                    #一个古老的协议

local 0~7            #用户自定义

 

##日志可以生成文件形式,或者直接打入到网络端比如:

.*                   8421     ##把日志打入到远端的8421端口。

 

日志级别:

rsyslog共有7种日志级别,数字代号从 0~7。具体的意义如下所示:

0 debug        –有调式信息的,日志信息最多

1 info         一般信息的日志,最常用

2 notice       –最具有重要性的普通条件的信息

3 warning     –警告级别

4 err          –错误级别,阻止某个功能或者模块不能正常工作的信息

5 crit         –严重级别,阻止整个系统或者整个软件不能正常工作的信息

6 alert       –需要立刻修改的信息

7 emerg     –内核崩溃等严重信息



日志配置文件 “/etc/rsyslog.conf”中,可指定warning级别(log level 为 4级)的存储文件为“/var/log/warning_Log”,具体的设置为:

*.warning    /var/log/warning_Log

然后,重启rsyslog:

service rsyslog restart

 

 

1、修改配置文件,把生成的日志导入远端端口:

[root@monitorelasticsearch-head]# vim /etc/rsyslog.conf

*.* @@localhost:8421

##重启rsyslog

2、编写logstash配置文件:

[root@monitor etc]#cat rsyslog.conf

input {

    tcp {

    port => "8421"

    type => "rsyslog"

   }

}

filter {

  if [type] == "rsyslog" {

    grok {

      match => { "message" =>"%{SYSLOGTIMESTAMP:syslog_timestamp} %{SYSLOGHOST:syslog_hostname}%{DATA:syslog_program}(?:\[%{POSINT:syslog_pid}\])?: %{GREEDYDATA:syslog_message}"}

      add_field => ["received_at", "%{@timestamp}" ]

      add_field => ["received_from", "%{host}" ]

    }

    date {

      match => ["syslog_timestamp", "MMM d HH:mm:ss", "MMM dd HH:mm:ss" ]

    }

  }

}

output{

    if [type] == "rsyslog"{

       stdout{codec=>rubydebug}

       elasticsearch {

       action => "index"

       hosts => "192.168.10.100:9200"

       index => "logstash-%{type}-%{+yyyy.MM.dd}"

   }

 }

}

3、检测logstash 配置文件:

[root@monitor logstash-5.1.1]#bin/logstash -f etc/rsyslog.conf -t

Sending Logstash's logs to/var/logstash-5.1.1/logs which is now configured via log4j2.properties

Configuration OK

 

4、启动es,启动logstash ,然后就能在es里面采集到数据。当然一般可以先把数据打入到redis,然后再从redis用logstash 接收:这里只是演示,到后期再演示全部:

 

一下是生成数据:


本文转自:http://www.roncoo.com/article/detail/127291

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值