filter { mutate { strip=> ["field1","field2"] } } 9)remove_field:删除字段: filter { mutate { remove_field=> ["foo_%{somefield}"] } } 10)join:将类型为 array 的字段中的 array 元素使用指定字符为分隔符聚合成一个字符串。如我们可以将 split 分割的结果再重新聚合起来: filter { mutate...
在logstash里是支持if语句的例如可以通过filebeat传递过来的字段进行判断从而进行不同的操作: filter { if "hello" in [fields][type] { grok { match => { "message" => "xxx" } } } } 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 上面code判断filebeat里fields下的type字段是否为hello,如果是he...
remove_field的用法也是很常见的,他的作用就是去重,在前面的例子中你也看到了,不管是我们要输出什么样子的信息,都是有两份数据,即message里面是一份,HTTPDATE或者IP里面也有一份,这样子就造成了重复,过滤的目的就是筛选出有用的信息,重复的不要,因此我们看看如何去重呢? 1)我们还是以输出IP为例: filter{ grok...
filter{ grok{ match => ["message","%{IP:clientip}\ \-\-\ \[%{HTTPDATE:timestamp}\]\ %{QS:referrer}\ %{NUMBER:response}\ %{NUMBER:bytes}\ %{GREEDYDATA:oth1}\ %{GREEDYDATA:oth2}\ %{GREEDYDATA:oth3}"] #remove_field => ["message"] } date{ match => ["timestamp","dd/MMM...
filter{ mutate{ split=>["message","_"] //使用split以下划线进行拆分 add_field => { //由于拆分完,只有值,没有字段名,所以还要使用add_field添加字段 "name" => "%{[message][0]}" } add_field => { "gender" => "%{[message][1]}" ...
filter { mutate { add_field => { "add_msg" => "%{[message]}" } } } output { stdout { } } start_position 代表logstash初次采集文件内容的位置,。取值:beginning或者end。end代表每次都是从文件尾部开始。add_field为添加输出字段 如果想输出到文件里,那么就是 ...
remove_field=>"message" " } } 4、date插件 这里需要合前面的grok插件剥离出来的值logdate配合使用(当然也许你不是用grok去做)。 filter{ date{ #还记得grok插件剥离出来的字段logdate吗?就是在这里使用的。你可以格式化为你需要的样子,至于是什么样子。就得你自己取看啦。
filter { ruby { code => " array1 = event.get('message').split(';,;') array1.each do |temp1| if temp1.nil? then next end array2 = temp1.split('=') key = array2[0] value = array2[1] if key.nil? then next end event.set(key, value) end " remove_field => [ "message...
filter方法是插件的数据处理逻辑,其中event变量封装了数据流,可以通过接口访问event中的内容,具体参见https://www.elastic.co/guide/en/logstash/5.1/event-api.html。最后一句调用了filter_matched,这个方法用于保证Logstash的配置add_field,remove_field,add_tag和remove_tag会被正确执行。
3.3 Filter 插件 而对于 Logstash 的 Filter,这个才是 Logstash 最强大的地方。Filter 插件也非常多,我们常用到的 grok、date、mutate、mutiline 四个插件。 对于filter 的各个插件执行流程,可以看下面这张图: 图片来自 Elasticsearch 官网 3.3.1 日志示例 ...