mysql

Logstash快速安装部署

2020-07-27  本文已影响0人  水饺鲜生

介绍

Logstash是一个具有实时管道功能的开源数据收集引擎,Logstash可以动态地将来自不同数据源的数据统一起来,并将数据规范化为你选择的目的地,清理和大众化你的所有数据,用于各种高级下游分析和可视化用例。

虽然Logstash最初推动了日志收集方面的创新,但是它的功能远远超出了这个用例,任何类型的事件都可以通过大量的输入、过滤器和输出插件来丰富和转换,使用许多原生编解码可以进一步简化摄取过程。Logstash通过利用大量和多种数据来提高你的洞察力。

安装使用

path.config: /usr/share/logstash/conf.d/*.conf
path.logs: /home/logstash/logs
input {
    beats {
        port => 5044
        codec => "json"
    }
}

output {
  elasticsearch { hosts => ["192.168.12.183:9200"] }
  stdout { codec => rubydebug }
}
最终目录为
docker run -d --restart=always --log-driver json-file --log-opt max-size=100m --log-opt max-file=2 -p 5044:5044 --name xinyar-logstash -v /home/logstash/logstash.yml:/usr/share/logstash/config/logstash.yml -v /home/logstash/logstash.conf/:/usr/share/logstash/conf.d/ logstash:7.4.1

整合filebeat后,采集logback java日志配置

input {
    beats {
        port => 5044
    }
}

filter{
    grok{match => ["message","%{TIMESTAMP_ISO8601:timestamp} \[%{DATA:thread}\] %{DATA} %{LOGLEVEL:level}  %{NOTSPACE:className} \[%{DATA:line}\] %{GREEDYDATA:info}"]}
    mutate {
      remove_field => "input"
      remove_field => "tags"
      remove_field => "ecs"
      remove_field => "@version"
      remove_field => "host"
      remove_field => "path"
    }
}

output {
  elasticsearch {
  hosts => ["192.168.1.137:9200"]
  index => ["logstath-%{[fields][index]}-%{+YYYY-MM-dd}"]
 }
  stdout { codec => rubydebug }
}

配置文件中fields和index来自filebeat中配置信息

上一篇下一篇

猜你喜欢

热点阅读