讲解Logstash采集日志和输送日志流程测试,包括input,filter和output元素的测试
配置一:从elasticsearch日志文件读取日志信息,输送到控制台
$ cd /home/es/logstash-6.2.2/config $ vim test1.conf $ cd /home/es/logstash-6.2.2/bin $ ./logstash -f ../config/test1.conf
test1.conf内容如下:
input { # 从文件读取日志信息 输送到控制台 file { path => "/home/es/elasticsearch-6.2.2/logs/elasticsearch.log" #codec => "json" ## 以JSON格式读取日志 type => "elasticsearch" start_position => "beginning" } } # filter { # # } output { # 标准输出 stdout {} # 输出进行格式化,采用Ruby库来解析日志 #stdout { codec => rubydebug } }
配置二:filter使用
例子切割插件mutate,随意输入一串以|分割的字符,比如 "123|000|ttter|sdfds*=123|dfwe"
$ cd /home/es/logstash-6.2.2/config $ vim test2_filter.conf $ cd /home/es/logstash-6.2.2/bin $ ./logstash -f ../config/test2_filter.conf
test2_filter.conf内容如下:
input { #采用控制台输入方式 stdin {} } filter { mutate { split => ["message", "|"] } } output { # 标准输出 stdout {} # 输出进行格式化,采用Ruby库来解析日志 # stdout { codec => rubydebug } }
标准输出效果
格式化输出效果