1、Kibana簡介及下載安裝html
Kibana是專門用來爲ElasticSearch設計開發的,能夠提供數據查詢,數據可視化等功能。json
下載地址爲:https://www.elastic.co/downloads/kibana#ga-release,請選擇適合當前es版本的Kibana。瀏覽器
本教程使用Kibana4.5.4版本,以及es2.3.5版本。假定你已經具備es基本的知識。app
安裝步驟比較簡單。curl
啓動後若是顯示以下界面:elasticsearch
說明Kibana沒有在es中找到合適的index用來展現,若是es中沒有數據,那麼能夠導入官方測試數據,用來學習操做。學習
若是你的es中已經有能夠用來測試的數據,那麼能夠略過本節。測試
首先下載三個數據文件:url
下載後解壓最後兩個壓縮包:spa
unzip accounts.zip gunzip logs.jsonl.gz
設置莎士比亞的mapping,有三個index,由於假定是三天的日誌,按天來生成索引:
curl -XPUT http://localhost:9200/shakespeare -d ' { "mappings" : { "_default_" : { "properties" : { "speaker" : {"type": "string", "index" : "not_analyzed" }, "play_name" : {"type": "string", "index" : "not_analyzed" }, "line_id" : { "type" : "integer" }, "speech_number" : { "type" : "integer" } } } } } ';
設置日誌的mapping:
View Code
View Code
View Code
最後將數據導入es:
curl -XPOST 'localhost:9200/bank/account/_bulk?pretty' --data-binary @accounts.json curl -XPOST 'localhost:9200/shakespeare/_bulk?pretty' --data-binary @shakespeare.json curl -XPOST 'localhost:9200/_bulk?pretty' --data-binary @logs.jsonl
導入後,輸入如下命令檢查結果,固然若是導入的過程當中沒有報錯也代表導入成功:
curl 'localhost:9200/_cat/indices?v'
應該輸出下面的結果,固然容量也有可能有些差異。
health status index pri rep docs.count docs.deleted store.size pri.store.size yellow open bank 5 1 1000 0 418.2kb 418.2kb yellow open shakespeare 5 1 111396 0 17.6mb 17.6mb yellow open logstash-2015.05.18 5 1 4631 0 15.6mb 15.6mb yellow open logstash-2015.05.19 5 1 4624 0 15.7mb 15.7mb yellow open logstash-2015.05.20 5 1 4750 0 16.4mb 16.4mb
這樣的話數據就準備完畢了。
通常狀況下,當啓動Kibana的時候會自動搜索可用來展現的索引,若是你須要的沒有被搜到,或者如上面新增的數據的索引沒有檢測到,那麼key手動添加索引。配置index的位置爲:
這樣咱們把剛纔新增的數據的索引配置進去。
不要勾選包含時間的選項,輸入index的名稱,可使用通配符,若是Create是灰色的,那麼代表輸入的索引不正確,請檢查拼寫。
點擊建立後,會出現當前索引的全部字段,可對這些字段進行一些屬性編輯,具體再也不本文介紹。按一樣的方式把bank配置進去。
繼續新增index,此次是帶時間戳的,至於帶不帶時間戳會有什麼不同的,後面介紹就會明白了。
勾選包含時間,索引使用通配符,表明上面三個日誌索引,時間字段選擇@timestamp。點擊建立就能夠了。
這樣基本工做就作好了,下面進入Kibana的實際講解。
首先看一下Kibana的主界面:
按照順序講解。
查詢是在指定索引的狀況下查詢,能夠經過索引右側下三角來選擇其餘索引。若是選擇了logstash-*,沒有數據也不要着急,後面會講到。
查詢語法就是指明查詢條件,用於過濾數據用的。
單純的數據一個字符串,代表在當前索引的全部字段中,搜索包含當前字符串的記錄:
若是要指定在某個字段中搜索,則使用filedname:searchtext的格式:
這樣查詢到一條數據,也可使用區間,格式爲filedname:[start TO end],以下面的語法就查詢到10條數據。
也可使用邏輯表達式而且能夠帶上括號,表達式符號爲AND OR NOT。
代表在1000行內,有12行中包含love。
若是配置索引的時候選擇了帶時間戳,那麼查詢條件會默認加上一個時間條件,選擇那樣的索引後,右上角會出現時間條件:
因此,這個時候須要設置須要的時間:
由於時間能夠設置爲絕對時間,也能夠設置爲相對時間。當設置爲相對時間時,數據實際上是不斷髮生變化的,好比設置爲上一個小時,那麼當前查詢的數據結果,在下一分鐘有可能就不是正常的,因此此時能夠指定一個刷新時間,用來不斷顯示新的數據。
刷新時間默認不是開啓的,須要手動開啓,根據選擇的時間範圍來選擇刷新間隔,相對時間範圍越窄則刷新間隔應該越短。
默認狀況下,查詢結果顯示全部字段,即_source的內容:
能夠有時候只想關注一些指定的字段,那麼能夠將鼠標移動到索引下面的字段上,而後選在add便可,一樣的移動上面已經選擇的字段選擇remove進行移除:
選擇後,展現的結果就會以表格的形式進行展現:
經過搜索框進行查詢的語法不少時候知足不了咱們的要求,有時候咱們須要使用自定義語法,在講解複雜查詢以前,先來說另外一個可玩的特性,就是說當咱們點擊某一個字段時,會把當前字段數量最多的前5個值及佔比顯示出來:
點擊右側的+號能夠將當前值作爲一個條件附加到搜索框的搜索條件上:
這個條件是在上面搜索結果的基礎上繼續進行篩選,鼠標移到上面會顯示:
基本功能如圖例所示,重點講解最後一個即編輯,點擊編輯後:
會出現熟悉的語法界面,在此處便可完成複雜的語法編寫。
搜索界面的右側 有四個圖標,分別爲新建、保存、打開、分享:
也就是說能夠將當前查詢的條件保存下來,供後續使用,也能夠分享給別的用戶來查看,保存下來的條件能夠用作後續數據及圖標的展現。
通常來講咱們是不多給用戶展現赤裸裸的數據,而用戶也不想看到這些,他們想看的是一個結果,一種趨勢圖,一種比例圖這種直觀的結果,可視化展現就是知足這個需求的。
點擊最上面的visualize便可進行編輯頁面:
能夠看到Kibana給咱們提供了各類各樣的用來展現的模板,根據你的需求來選擇合適的,下面我就多建立幾個來看看。建立步驟:
點擊Data Table,而後左側選擇Split Rows:
咱們選擇按照朗讀者進行計數:
最後點擊上面的三角箭頭,會在右側出現結果:
此時能夠把它保存起來。
用一樣的方式,再多建幾個圖例。
上面的展現只是單個圖標的展現,可是大部分狀況下,咱們須要同時查看多個圖標,dashboard就提供這種功能給咱們使用。
前提是咱們有上面保存的展現。
而後點擊+圖標來把各類圖例放進去,效果以下圖:
能夠自由拖動各個組件以及修改它們的大小。
這就是Kibana的基本用法,若是還有沒有介紹清楚的後續會補上,圖片若是看不清能夠查看原圖。