0

在logstash配置中,A.B.C.D是一個IP,我想提取它的一部分,如A.B.C.在使用其他標準Logstash插件時,在Logstash中使用ruby塊的性能會更差嗎?

ruby { 
    code => "event['Awesome_IP'] =event['Not_Awesome_IP'].match('\A\d{,3}.\d{,3}.\d{,3}').to_s;" 
    } 

不過我聽說同樣的表現不是很好,相對於做,比方說,下面:我一直在使用下面的代碼acheiving在Ruby塊這種使用正則表達式匹配:

mutate { 
    split => { "Awesome_IP" => "." } 
} 
mutate { 
    remove_field => ["[Awesome_IP[3]"] 
} 
mutate { 
    join => ["[Awesome_IP]", "."] 
} 

任何人都可以指向一些性能指針或一些基準測試工具,我可以用來評估性能的情況下?我正在使用它來解析每天數百萬的訂單日誌。 (只需要兩種方法的性能比較)。

+0

可以從此[腳本]也許開始(https://gist.github.com/jsvd/a2613ea1ba00f02926a302781ca62f7b),其中,使用了比較神交過濾性能[這個博客帖子(HTTPS: //www.elastic.co/blog/do-you-grok-grok) – baudsp

+0

@baudsp這是關於grok匹配性能的,但是我試圖比較ruby塊的性能,而不是其他插件。另外,我的Ruby不是最好的,所以就像旁註一樣,看到幾個指針可以看到腳本如何用來衡量logstash性能會很有趣。感謝您的意見。 –

+0

我鏈接的腳本是檢查Grok插件的性能,我可以修改它來檢查兩個插件的性能。修改將需要良好的Ruby,我沒有。 – baudsp

回答