關於kibana的可視化可能都在這篇文章裏了

引言

kibana是elasticsearch(如下簡稱ES)的可視化平臺,筆者平時使用kibana的dev tools比較多,在這裏能夠更便捷的使用ES的各類命令,DSL查詢語句等。json

可是kibana的可視化功能遠不止於次。Kibana能夠用來搜索,查看ES索引中的數據,能夠輕鬆地進行高級數據分析,並可在各類圖表,表格和地圖中顯示數據。而且能夠基於瀏覽器的界面快速建立和共享動態儀表板,實時反饋ES中數據的更改。瀏覽器

因爲kibana可視化的不少組件其實都是基於ES聚合的結果,因此看本篇文章建議對ES的聚合有所瞭解。服務器

本文使用的示例所有都是基於kibana自帶的示例數據,讀者本身有興趣也能夠實際操做一下。elasticsearch

本文操做使用的ES和kibana都是基於7.1.0版本。spa

正文

新建索引模式(index pattern)

index pattern是kibana可視化的前提。它至關於告訴kibana要使用哪些索引做爲數據進行可視化展現。索引咱們第一步就來建立一個index pattern。日誌

1-1.png

如上圖所示,先在左側菜單找到management,而後點擊index patterns -- create index pattern。新建一個index pattern,這裏拿kibana自帶的電商的索引舉例。code

1-2.png

在上圖中經過輸入index pattern的名稱,kibana會自動顯示匹配的索引,而後點擊nextblog

1-3.png

選擇索引中的時間維度的字段,若是有多個的話根據具體的業務場景選擇。好比這裏我選擇的是訂單的建立時間字段。
須要說明的是,這個時間字段是用來方便基於時間過濾數據用的。若是你的業務上不須要基於時間範圍篩選,也能夠不選擇這一步。索引

到這裏咱們的index pattern就建好了。讀者本身能夠參考上面的流程,爲航班數據索引新建一個index pattern。字符串

使用discovery搜索數據

discovery在日誌搜索用的比較多,如今不少公司都會把服務的日誌蒐集到ES而後經過kibana的discovery功能查找日誌。這樣比之前登錄到線上服務器一臺臺grep方便不少。

2-1.png

如上圖所示,在菜單中選擇discovery,而後就能看到咱們前面章節新建的index pattern。

2-2.png

在上圖的1的位置,我選擇了電商的index pattern,而後在2的位置選擇時間進行過濾,這裏我選擇是的1年前的全部數據。時間過來的維度不少,你們能夠一一嘗試下。1的旁邊有個搜索框,能夠輸入任意信息對索引進行搜索。除了通常的直接輸入字符串進行搜索以外,這裏還支持指定搜索某個字段,只須要在搜索框裏輸入相似下面:

user:"youssef"

就能夠搜索user字段值知足youssef的數據。

在圖中3的位置以直方圖的形式彙總了數據的分佈狀況,能夠看到咱們的數據主要都集中在2019年12月到2020年1月這段時間內。

圖中4的位置就是數據自己了,能夠支持table和json兩種方式顯示。左側的菜單裏支持過濾指定的字段顯示,這裏不展開來說了。

可視化數據

kibana自帶了不少可視化的組件,方便咱們對聚合後的結果進行可視化的展現。下面來看一個例子。

在左側菜單選擇visualize,而後點擊右邊的+號,以下圖所示:

2-3.png

這裏有不少可視化組件,我這裏以pie餅圖爲例子說明。

2-4.png

如上圖所示,咱們在左邊選擇分桶聚合模式,而後分桶的字段是用戶性別字段,度量單位是count,而後點擊上方的三角按鈕運行,結果就是上圖中展現的效果。在這個圖中能夠看到男女的比例。

假如咱們還想看下男女各自的城市分佈狀況,能夠添加一個子分桶,在左側下方點擊add sub buckets

2-5.png

如上圖,在子分桶裏咱們一樣選擇了terms分桶,而後分桶的字段是用戶所在的城市。運行以後就是上圖中的效果。點擊左上角的save按鈕,還能夠把當前的可視化結果保存。保存了以後咱們就能夠在dashboard上展現了。

2-6.png

在dashboard展現數據

dashboard能夠理解爲一個展現各類可視化組件的面板,咱們能夠把以前保存的可視化結果添加到面板中進行展現。

點擊左側菜單中的dashboard,而後點擊create new dashboard,而後點擊add,選擇咱們前面保存的可視化組件。

3-1.png

下圖是一個基於咱們前面講的電商的index製做的面板展現示例

3-2.png

相關文章
相關標籤/搜索