Filebeat7.1 讀日誌輸出到elasticsearch不能drop掉host, agent, ecs字段的存儲

        近日使用Filebeat 7.1 抓取json日誌到Elasticsearch,發現存儲到Elasticsearch中的字段中多了很多基本信息字段的字段,例如:@timestamp, input, ecs, agent, host, log, 使得本來很簡潔的存儲索引變的很龐大,所以就想把這些字段過濾掉不存儲。根據文官方檔的介紹,Filebeat Reference [7.1] » Configuring Filebeat » Filter and enhance the exported data » Drop fields from events 這個功能應該符合我的需求,但文檔中提到“The @timestamp and type fields cannot be dropped”,就是說@timestamp和type字段不可以被drop,好,那我就把其他的drop掉,先用agent和host這兩個內容最多的fields測試,死活都無效,按照文檔在filebeat.yml文件中配置了無條件drop這兩個字段,但它們依然堅挺的存儲在了輸出的索引中....好吧,不賣關子直接說原因:除了文檔提到的兩個字段以外,host,agent,ecs三個字段也是不讓drop的,我是後來把所有多出來的字段都配置進去,發現其他字段都沒有了,只有這三個依然存在!所以表明配置是沒有問題的,只是這幾個字段比較牛X不讓刪而已。這是我測試得出的結論,不知道爲什麼官方文檔沒有提及,還是有別的原因,亦或是我沒有用對,whatever,不是什麼嚴重的問題,知道這個坑,大家別再掉進來就好!

附上我的配置供參考:

  processors:
    - drop_fields:
        fields: ["log","input","host","agent","ecs"]

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章