Logstash--Filter与Output

Filter与Output

1、Filter

  • 功能
    • 数据的过滤
    • 字段的匹配添加
  • groke
    • 正则匹配,用法格式
      • (?pattern)
    • vim usercase/filter-groke.json
input {stdin{}} 
filter {
        grok {
            match => {
                "message" => "(?<date>\d+\.\d+)\s+"
            }       
        }       
}       
output {stdout{codec => rubydebug}}
  • 实现输入【数字.数字 】,就会将这个符合正则的数据变成date字段
  • 应用场景:日志搜索引擎
    • 问题:采集到的日志是作为一个整体存储在ES中,还是切分成每个字段存储
    • 需求:将需要查询的条件作为字段
    • 日志:
      • #一条日志
      • INFO 20200101 this is a file
    • 需求:想查询所有WARN级别的日志
      • 不将日志级别单独作为一列,只能做整体的模糊匹配
      • 即将日志级别作为单独的一列,只做精准匹配
        • 日志级别
          • INFO
          • WARN
        • 日志
          • INFO 20200101 this is a file
          • WARN 20202010 this is another file

2、Output

  • file
vim usercase/output-file.json
input {stdin{}}
output {
    file {
        path => "/export/servers/es/logstash-6.0.0/usercase/datas/%{+YYYY-MM-dd}-%{host}.txt"
        codec => line {
            format => "%{message}"
        }
        flush_interval => 0
    }
}
  • es:是Logstash主要的应用场景
vim usercase/output-es.json
input {stdin{}}
output {
    elasticsearch {
        hosts => ["node-01:9200"]
        index => "logstash-%{+YYYY.MM.dd}"
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值