2016-10-17 28 views
0

我需要幫助搜索查詢!在KIbana查詢+忽略炒作

我在我的kibana下面有'n'條消息,我想在下面的消息字段中只提取「arnold-123-20」字符串,而hypen( - )忽略我的搜索並且在時間戳記中(20)得到匹配,這是錯誤的,我需要忽略這一點。

message:Oct 17 01:26:20 arnold-123-20.us.com arnold: [INFO]- Successful 

搜索查詢kibana UI:

message:"arnold" AND message:"123-20" AND message:'Successfully' 

回答

0

標準Elasticsearch在字邊界標記生成器打破。 -字符被視爲字邊界。因此,內部ES存儲message[oct,17,01,26,20(2),arnold(2),123,us,com,info,successful](基本上它是一個術語+頻率向量,忽略術語順序)。

您必須創建一個自定義標記器,以識別數據中的標記並重新索引數據使用它。然後你的搜索可能會奏效。

更好的解決方案是使用logstash解析某些類型的消息並將數據存儲在不同的字段中。例如,您可以將arnold-123-20存儲爲hostPart,us.com爲hostDomain,arnold-123-20.us.com爲fullHost。您還需要添加將不同字段標記爲not_analyzed的索引模板。