2017-02-28 422 views
0

面對非常困難神交Logstash模式處理多個匹配

hi i am good [anything] hey [another] hii [third] kjkj [fourth] etc 

提取在上面的字符串我怎樣才能提取物[什麼]一個領域
已經使用(^.+)(?<thread_name>\[.+\])但它提取的最後一場比賽

回答

1
(^[^\[]+)(?<thread_name>\[[^\]]+\]) 

這一個是修改你的。它將在方括號中提取一個單詞的第一個匹配。如果您需要更多調整模式,請提供更多詳情。

輸出將是:

{ 
    "thread_name": [ 
    [ 
     "[anything]" 
    ] 
    ] 
} 

我建議使用Grok Debugger快速檢查神交模式。

+0

謝謝如果[輸入]中沒有[任何東西],那麼應該使用空值創建thread_name字段 –

+0

如果沒有[dfd]存在,則面對_grokparsefailure –