轉(zhuǎn)自:https://www.cnblogs.com/cjsblog/p/9476813.html
Kibana是一個開源的分析和可視化平臺,設(shè)計用于和Elasticsearch一起工作匈庭。
你用Kibana來搜索灵迫,查看,并和存儲在Elasticsearch索引中的數(shù)據(jù)進行交互蚕愤。
你可以輕松地執(zhí)行高級數(shù)據(jù)分析答恶,并且以各種圖標饺蚊、表格和地圖的形式可視化數(shù)據(jù)。
Kibana使得理解大量數(shù)據(jù)變得很容易悬嗓。它簡單的污呼、基于瀏覽器的界面使你能夠快速創(chuàng)建和共享動態(tài)儀表板,實時顯示Elasticsearch查詢的變化包竹。
1.? 安裝Kibana
2.? Kibana配置
https://www.elastic.co/guide/en/kibana/current/settings.html
3.? 訪問Kibana
Kibana是一個Web應(yīng)用程序燕酷,你可以通過5601來訪問它。例如:localhost:5601 或者 http://YOURDOMAIN.com:5601
當訪問Kibana時周瞎,默認情況下苗缩,Discover頁面加載時選擇了默認索引模式。時間過濾器設(shè)置為最近15分鐘堰氓,搜索查詢設(shè)置為match-all(\*)
3.1.? 檢查Kibana狀態(tài)
http://localhost:5601/status
或者?http://192.168.101.5:5601/api/status 返回JSON格式狀態(tài)信息
4.? 用Elasticsearch連接到Kibana
在你開始用Kibana之前挤渐,你需要告訴Kibana你想探索哪個Elasticsearch索引。第一次訪問Kibana是双絮,系統(tǒng)會提示你定義一個索引模式以匹配一個或多個索引的名字浴麻。
(提示:默認情況下,Kibana連接允許在localhost上的Elasticsearch實例囤攀。為了連接到一個不同的Elasticsearch實例软免,修改kabana.yml中Elasticsearch的URL,然后重啟Kibana焚挠。)
為了配置你想要用Kibana訪問的Elasticsearch索引:
1膏萧、訪問Kibana UI。例如蝌衔,localhost:56011 或者 http://YOURDOMAIN.com:5601
2榛泛、指定一個索引模式來匹配一個或多個你的Elasticsearch索引。當你指定了你的索引模式以后噩斟,任何匹配到的索引都將被展示出來曹锨。
(畫外音:*匹配0個或多個字符;? 指定索引默認是為了匹配索引剃允,確切的說是匹配索引名字)
3沛简、點擊“Next Step”以選擇你想要用來執(zhí)行基于時間比較的包含timestamp字段的索引。如果你的索引沒有基于時間的數(shù)據(jù)斥废,那么選擇“I don’t want to use the Time Filter”選項椒楣。
4、點擊“Create index pattern”按鈕來添加索引模式牡肉。第一個索引模式自動配置為默認的索引默認捧灰,以后當你有多個索引模式的時候,你就可以選擇將哪一個設(shè)為默認统锤。(提示:Management > Index Patterns)
現(xiàn)在凤壁,Kibana已經(jīng)連接到你的Elasticsearch數(shù)據(jù)吩屹。Kibana展示了一個只讀的字段列表跪另,這些字段是匹配到的這個索引配置的字段拧抖。
5.? Discover
你可以從Discover頁面交互式的探索你的數(shù)據(jù)。你可以訪問與所選擇的索引默認匹配的每個索引中的每個文檔免绿。你可以提交查詢請求唧席,過濾搜索結(jié)構(gòu),并查看文檔數(shù)據(jù)嘲驾。你也可以看到匹配查詢請求的文檔數(shù)量淌哟,以及字段值統(tǒng)計信息。如果你選擇的索引模式配置了time字段辽故,則文檔隨時間的分布將顯示在頁面頂部的直方圖中徒仓。
5.1.? 設(shè)置時間過濾
5.2.? 搜索數(shù)據(jù)
你可以在搜索框中輸入查詢條件來查詢當前索引模式匹配的索引。在查詢的時候誊垢,你可以使用Kibana標準的查詢語言(基于Lucene的查詢語法)或者完全基于JSON的Elasticsearch查詢語言DSL掉弛。Kibana查詢語言可以使用自動完成和簡化的查詢語法作為實驗特性,您可以在查詢欄的“選項”菜單下進行選擇喂走。
當你提交一個查詢請求時殃饿,直方圖、文檔表和字段列表都會更新芋肠,以反映搜索結(jié)果乎芳。命中(匹配到的文檔)總數(shù)會顯示在工具欄中。文檔表格中顯示了前500個命中奈惑。默認情況下,按時間倒序排列睡汹,首先顯示最新的文檔肴甸。你可以通過點擊“Time”列來逆轉(zhuǎn)排序順序。
5.2.1.? Lucene查詢語法
Kibana查詢語言基于Lucene查詢語法帮孔。下面是一些提示雷滋,可能會幫到你:
為了執(zhí)行一個文本搜索,可以簡單的輸入一個文本字符串文兢。例如晤斩,如果你想搜索web服務(wù)器的日志,你可以輸入關(guān)鍵字"safari"姆坚,這樣你就可以搜索到所有有關(guān)"safari"的字段
為了搜索一個特定字段的特定值澳泵,可以用字段的名稱作為前綴。例如兼呵,你輸入"status:200"兔辅,將會找到所有status字段的值是200的文檔
為了搜索一個范圍值腊敲,你可以用括號范圍語法,[START_VALUE TO END_VALUE]维苔。例如碰辅,為了找到狀態(tài)碼是4xx的文檔,你可以輸入status:[400 TO 499]
為了指定更改復(fù)雜的查詢條件介时,你可以用布爾操作符?AND?,?OR?, 和?NOT没宾。例如,為了找到狀態(tài)碼是4xx并且extension字段是php或者html的文檔沸柔,你可以輸入status:[400 TO 499] AND (extension:php OR extension:html)
5.2.2.? Kibana查詢語法增強
新的更簡單的語法
如果你熟悉Kibana的舊Lucene查詢語法循衰,那么你應(yīng)該對這種新的語法也不會陌生『峙欤基本原理保持不變会钝,我們只是簡單地改進了一些東西,使查詢語言更易于使用工三。
response:200?將匹配response字段的值是200的文檔
用引號引起來的一段字符串叫短語搜索迁酸。例如,message:"Quick brown fox"??將在message字段中搜索"quick brown fox"這個短語徒蟆。如果沒有引號胁出,將會匹配到包含這些詞的所有文檔,而不管它們的順序如何段审。這就意味著全蝶,會匹配到"Quick brown fox",而不會匹配"quick fox brown"寺枉。(畫外音:引號引起來作為一個整體)
查詢解析器將不再基于空格進行分割抑淫。多個搜索項必須由明確的布爾運算符分隔。注意姥闪,布爾運算符不區(qū)分大小寫始苇。
在Lucene中,response:200 extension:php等價于?response:200 and extension:php筐喳。這將匹配response字段值匹配200并且extenion字段值匹配php的文檔催式。
如果我們把中間換成or,那么response:200 or extension:php將匹配response字段匹配200 或者 extension字段匹配php的文檔避归。
默認情況下荣月,and 比 or 具有更高優(yōu)先級。
response:200 and extension:php or extension:css?將匹配response是200并且extension是php梳毙,或者匹配extension是css而response任意
括號可以改變這種優(yōu)先級
response:200 and (extension:php or extension:css)?將匹配response是200并且extension是php或者css的文檔
還有一種簡寫的方式:
response:(200 or 404)?將匹配response字段是200或404的文檔哺窄。字符值也可以是多個,比如:tags:(success and info and security)
還可以用not
not response:200?將匹配response不是200的文檔
response:200 and not (extension:php or extension:css)?將匹配response是200并且extension不是php也不是css的文檔
范圍檢索和Lucene有一點點不同
代替 byte:>1000,我們用byte > 1000
>, >=, <, <= 都是有效的操作符
response:*? 將匹配所有存在response字段的文檔
通配符查詢也是可以的萌业。machine.os:win*?將匹配machine.os字段以win開頭的文檔坷襟,像"windows 7"和"windows 10"這樣的值都會被匹配到。
通配符也允許我們一次搜索多個字段生年,例如婴程,假設(shè)我們有machine.os和machine.os.keyword兩個字段,我們想要搜索這兩個字段都有"windows 10"晶框,那么我們可以這樣寫"machine.os*:windows 10"
5.2.3.? 刷新搜索結(jié)果
?5.3.? 按字段過濾
以上是控制列表顯示哪些字段排抬,還有一種方式是在查看文檔數(shù)據(jù)的時候點那個像書一樣的小圖標
刪除也是可以的
我們還可以編輯一個DSL查詢語句,用于過濾篩選授段,例如
5.4.? 查看文檔數(shù)據(jù)
5.5.? 查看文檔上下文
5.6.? 查看字段數(shù)據(jù)統(tǒng)計
6.??Visualize
Visualize使得你可以創(chuàng)建在你的Elasticsearch索引中的數(shù)據(jù)的可視化效果。然后番甩,你可以構(gòu)建dashboard來展示相關(guān)可視化侵贵。
Kibana可視化是基于Elasticsearch查詢的。通過用一系列的Elasticsearch聚集來提取并處理你的數(shù)據(jù)缘薛,你可以創(chuàng)建圖片來線上你需要了解的趨勢窍育、峰值和低點。
6.1.? 創(chuàng)建一個可視化
為了創(chuàng)建一個可視化的視圖:
第1步:點擊左側(cè)導(dǎo)航條中的“Visualize”按鈕
第2步:點擊“Create new visualization”按鈕或者加號(+)按鈕
第3步:選擇一個可視化類型
第4步:指定一個搜索查詢來檢索可視化數(shù)據(jù)
第5步:在可視化的構(gòu)建器中選擇Y軸的聚合操作宴胧。例如漱抓,sum,average恕齐,count等等
第6步:設(shè)置X軸
例如:
更多請看這里
https://www.elastic.co/guide/en/kibana/current/createvis.html
https://www.elastic.co/guide/en/kibana/current/xy-chart.html
https://www.elastic.co/guide/en/kibana/current/visualize.html
7.? Dashboard
Kibana儀表板顯示可視化和搜索的集合乞娄。你可以安排、調(diào)整和編輯儀表板內(nèi)容显歧,然后保存儀表板以便共享它仪或。
7.1.? 構(gòu)建一個Dashboard
第1步:在導(dǎo)航條上點擊“Dashboard”
第2步:點擊“Create new dashboard”或者“加號(+)”按鈕
第3步:點擊“Add”按鈕
第4步:為了添加一個可視化,從可視化列表中選擇一個士骤,或者點擊“Add new visualization”按鈕新創(chuàng)建一個
第5步:為了添加一個已保存的查詢范删,點擊“Saved Search”選項卡,然后從列表中選擇一個
第6步:當你完成添加并且調(diào)整了dashboard的內(nèi)容后拷肌,去頂部菜單欄到旦,點擊“Save”,然后輸入一個名字巨缘。
默認情況下添忘,Kibana儀表板使用淺色主題。要使用深色主題带猴,單擊“選項”并選擇“使用深色主題”昔汉。要將dark主題設(shè)置為默認,請轉(zhuǎn)到管理>Management > Advanced ,并將dashboard:defaultDarkTheme設(shè)置為On靶病。
8.? Monitoring
Elasticsearch控制臺打印日志
[2018-08-15T14:48:26,874][INFO ][o.e.c.m.MetaDataCreateIndexService] [Px524Ts] [.monitoring-kibana-6-2018.08.15] creating index, cause [auto(bulk api)], templates [.monitoring-kibana], shards [1]/[0], mappings [doc]
Kibana控制臺打印日志
log? [03:26:53.605] [info][license][xpack] Imported license information from Elasticsearch for the [monitoring] cluster: mode: basic | status: active
https://www.elastic.co/guide/en/kibana/current/elasticsearch-metrics.html
9.? 其它相關(guān)
《Logstash》