elk之實現(xiàn)在kibana高效精準查詢日志
elk是我們常用的日志查詢系統(tǒng),使用高效的查詢方法能使我們快速定位日志以及解決問題;
精準模糊匹配關鍵字
類似 mysql:like %seven%
在搜索框對關鍵字添加雙引號即可 :
eg:
“seven”

多個關鍵字同時模糊匹配
多個關鍵詞雙引號后使用and連接
eg:
"0eca9570-6441-4e2e-9d2c-09eb5764506b" and "夏藝桐"

更多kibana查詢語法
當然還有更多的查詢姿勢,這里不一一舉例,他們的使用方法如下:
1、要搜索一個確切的字符串,即精確搜索,需要使用雙引號引起來:path:”/app/logs/nginx/access.log”
2、如果不帶引號,將會匹配每個單詞:uid token
3、模糊搜索:path:”/app/~
4、* 匹配0到多個字符:*oken
5、? 匹配單個字符 : tok?n
6、+:搜索結果中必須包含此項 -:不能含有此項 什么都沒有則可有可無: +token -appVersion appCode
7、運算符AND/OR/NOT必須大寫:token AND uid ;token OR uid;NOT uid
8、允許一個字段值在某個區(qū)間([] 包含該值,{}不包含):@version:[1 TO 3]
9、組合查詢:(uid OR token) AND version
10、轉義特殊字符 + – && || ! ( ) { } [ ] ^ ” ~ * ? : \ 轉義特殊字符只需在字符前加上符號\
11、分組(firstname:H* OR age:20) AND state:KS 先查詢名字H開頭年齡或者是20的結果,然后再與國家是KS的結合
12、firstname:(+H* -He*) 搜索firstname字段里H開頭的結果,并且排除firstname里He開頭的結果
13.查詢一,xxx:[1 TO *]
其他
在ekl之外,我也使用過一款開源的,開箱即用的日志組建:
https://gitee.com/frankchenlong/plumelog/tree/master/
它的底層也是通過es來存儲日志,總體使用感受是,很輕量級,但是功能齊全,用戶體驗比elk好上不少,最喜歡他的功能是:
- 鏈路追蹤,在微服務架構下,能幫我快速定位哪個服務耗時較長
- 通過追蹤碼和ip,可以分機器,分業(yè)務的查詢此次請求日志


總結
以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
Spring實現(xiàn)一個簡單的SpringIOC容器
本篇文章主要介紹了Spring實現(xiàn)一個簡單的SpringIOC容器,具有一定的參考價值,感興趣的小伙伴們可以參考一下。2017-04-04

