logstash的基础

一、logstash的filter阶段的配置:

1、logstash的grok插件的配置:

#GREEDYDATA表达式的意思能匹配任意字符串

2、mutate插件

3、kv插件

4、date插件

二、logstash input阶段的配置:

2、file插件:

2.1、多行处理插件multiline 

 file {
   path => ["/home/bamboom/logs/*/*.log"]
   start_position => "beginning"
   codec => multiline {
        pattern => "^%{TIMESTAMP_ISO8601}"
        negate => true
        what => "previous"
    }
 }

总之就是:

  pattern 选项指定一个正则表达式。 事件匹配指定的正则表达式来确定是前一个事件的内容还是新的事件的内容。可以使用grok正则表达式的模板来配置该选项。

  what 选项有两个选择值: previous 或者 next。 previous 值指定行匹配pattern选项的内容是上一行的一部分。 next 指定行匹配pattern选项的内容是下一行的一部分。

  negate选项适用于multiline codec 行不匹配pattern选项指定的正则表达式。该配置使用negate => true 选项来指定任何不是以时间戳开始的行属于前行。也就是不匹配pattern的行都属于前行的内容的一部分。

三、logstash output阶段的配置:

1、es作为输出时的配置:

output {
    elasticsearch {
        id => 'onao_es'
        user => "elastic"
        password => "changeme"
        hosts => ["http://10.109.31.165:9200"]
        sniffing => false
        index => "logstash-%{+YYYY.MM.dd}"
        document_type => "logs"
    }
}

注意这里是由于把es部署在容器里,而把logstash部署在另外一台宿主机上经常出现的一个bug:

  正常现象:

  异常现象:

这几句日志是由于sniffing => false这条配置导致的;正常现象是false的情况,异常现象是true的情况。

参考文献:

grok:https://www.jianshu.com/p/e9ca52c1f85e

grok正则匹配表:https://blog.csdn.net/backKeith/article/details/78480125

oniguruma(正则表达式):https://www.jianshu.com/p/3f699ee4c17a

logstash最佳实践:http://doc.yonyoucloud.com/doc/logstash-best-practice-cn/index.html

logstash配置文件:https://www.cnblogs.com/xiaobaozi-95/p/9214307.html

logstash插件详解:https://blog.csdn.net/bingdianone/article/details/86715916#filtergrok_130

转载于:https://www.cnblogs.com/erdanyang/p/10945989.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值