kibana安裝
kibana目錄介紹
- bin:
程序的腳本文件,通過終端命令
./kabana 執(zhí)行kibana
- config:
其中包括kibana.yml文件(kibana的配置文件)

修改elasticsearch.url的接受路徑

接受路徑的用戶名以及密碼

本地服務(wù)的端口號(hào)
注意:修改之后需要去掉 #號(hào)
//更多介紹
https://kibana.logstash.es/content/kibana/v5/production.html
data:
node:
nodejs的服務(wù)程序node_modules
node文件的依賴包optimize(充分利用):
該文件夾里面存入所有被編譯過的js文件,也就是說所有的前臺(tái)文件在src中,但是在啟動(dòng)后會(huì)被編譯到該文件夾下src:
源碼,該文件是被編譯到optimize里面的。(在平常中,修改了src里面相應(yīng)的html文件,啟動(dòng)kibana后發(fā)現(xiàn)現(xiàn)實(shí)并沒有改變,原因就是編譯文件中并沒有被改變,解決的辦法就是把optimize里面的相應(yīng)的js刪除掉,如kibana.bundle.js 對(duì)應(yīng)的是discover setting visualize等組件)
- src/ui/index.js
完成了更加細(xì)節(jié)的各類app的加載和路由app
并且將app里面的內(nèi)容打包進(jìn)了bundle
所以我們只改變?cè)创a是不能夠直接生效的,因?yàn)榉?wù)會(huì)優(yōu)先的使用bundle中的內(nèi)容執(zhí)行。

從這句話可以看出,kibana支持設(shè)定config中的利用行為。完整的介紹見“src/server/config/schema.js”,這是在啟動(dòng)kbn_server 之前最先加載的內(nèi)容。
在schema.js中可以加上

optimize.enabled: false
- kibana 框架
從4.5版本開始kibana框架與其他組件進(jìn)行了分離路徑在src/core_plugins/kibana中。
kibana中目錄為
commom
public
server
translations
index.js
package.json
在index.js中可以看到

此文件將設(shè)定將組件注冊(cè)成為一個(gè) kibana.Plugin,id 叫什么,config 配置有什么,標(biāo)題叫什么,入口文件是哪個(gè),具體是什么類型的 uiExports,一般常見的選擇有:app、visType?!?/p>
可以通過更改title來更改主頁顯示的標(biāo)題名稱。

uses 和 injectVars 是可選的方式,可以在 src/ui/ui_app.js 中看到起作用。分別是指明下列模塊已經(jīng)加載過,以后就不用再加載了;以及聲明需要注入瀏覽器的 JSON 變量即:

因?yàn)橐话銘?yīng)用不會(huì)使用links的類型uiExports因?yàn)閗ibana不用左側(cè)邊欄切換,而是要將自己內(nèi)部的模塊放上去,所以聲明時(shí)將列表屬性設(shè)定為了false

links具體可配置的屬性見src/ui/ui_nav_link.js

在index.js中
preInit 也是一個(gè)可選屬性,如果有需要?jiǎng)?chuàng)建目錄之類的要預(yù)先準(zhǔn)備的操作,可以在這步完成。

init是最后一步

Kibana 應(yīng)用的最后一步是繼續(xù)加載了一些服務(wù)器端的 route 設(shè)置。
- src/core_plugins/kibana/public/kibana.js
其中的

中即加載了 kibana 自定義的各種 angular module、directive 和 filter
例如:markdown、moment、auto_select、json_input、paginate、file_upload等常用插件。
src/ui/public/routes/route_manager.js
文件設(shè)置 routes 的具體操作,其中會(huì)調(diào)用 sr/ui/public/index_patterns/route_setup/load_default.js 中提供的 addSetupWork 方法,在未設(shè)置 default index pattern 的時(shí)候跳轉(zhuǎn) URL 到 whenMissingRedirectTo 頁面。src/ui/public/courier/courier.js
中定義了 Courier 類。Courier 是一個(gè)非常重要的東西,可以簡單理解為 kibana 跟 ES 之間的一個(gè) object mapper。控制器則會(huì)監(jiān)聽 application.load 事件,在頁面加載完成的時(shí)候觸發(fā) courier.start()
kibana各個(gè)模塊功能介紹以及使用方法
discover(探索)功能
discover標(biāo)簽主要用于交互的探索你的數(shù)據(jù),可以通過你的索引模式來匹配每一條記錄。
- 設(shè)置時(shí)間過濾器
時(shí)間過濾器得默認(rèn)設(shè)置的時(shí)間為最近的15分鐘,你可以使用頂部的時(shí)間選擇器來修改時(shí)間過濾器,或者選定一個(gè)特定的時(shí)間間隔,或者時(shí)間范圍。

- 搜索數(shù)據(jù)
在discover頁面提交一個(gè)搜索,你就可以搜索匹配當(dāng)前的索引模式的索引數(shù)據(jù)了,你可以之間輸入簡單的請(qǐng)求字符串,也就是用Lucene query syntax(Lucene查詢語法)也可以用完整的基于JSON的 Elasticserach Query DSL。
Lucene query syntax(Lucene查詢語法)
在搜索框內(nèi)輸入請(qǐng)求字符串:
簡單的文本搜索,直接輸入文本字符串。比如,如果你在搜索網(wǎng)站服務(wù)器日志,你可以輸入 safari 來搜索各字段中的 safari 單詞。
要搜索特定字段中的值,則在值前加上字段名。比如,你可以輸入 status:200 來限制搜索結(jié)果都是在 status 字段里有 200 內(nèi)容。
要搜索一個(gè)值的范圍,你可以用范圍查詢語法,[START_VALUE TO END_VALUE]。比如,要查找 4xx 的狀態(tài)碼,你可以輸入 status:[400 TO 499]。
要指定更復(fù)雜的搜索標(biāo)準(zhǔn),你可以用布爾操作符 AND, OR, 和 NOT。比如,要查找 4xx 的狀態(tài)碼,還是 php 或 html 結(jié)尾的數(shù)據(jù),你可以輸入 status:[400 TO 499] AND (extension:php OR extension:html)。
- 開始一個(gè)新的搜索

- 保存搜索
可以再Discover頁加載已經(jīng)保存的搜索,也可以用作visualizations的
基礎(chǔ),保存一個(gè)搜索,意味著同時(shí)保存下了搜索請(qǐng)求的字符串和當(dāng)前的索引模式。
點(diǎn)擊save按鈕

- 加載一個(gè)已經(jīng)存儲(chǔ)的搜索

改變你的搜索的索引
自動(dòng)刷頁面
你也可以通過自己配置一個(gè)時(shí)間間隔
來自動(dòng)刷新Discover頁面的最新的索引數(shù)據(jù)

按字段過濾
你可以過濾搜索結(jié)果,只顯示某字段中包含了特定值的文檔,同時(shí)也可以反向創(chuàng)建反向過濾器,排除掉包含特定字段值的文檔。查看字段數(shù)據(jù)統(tǒng)計(jì)
從字段列表,你可以看到文檔表格里有多少數(shù)據(jù)包含了這個(gè)字段,排名前5的值是什么,以及包含各個(gè)值得文檔的占比。

要基于這個(gè)字段創(chuàng)建可視化,點(diǎn)擊字段統(tǒng)計(jì)下方的 Visualize 按鈕。
kibana插件定制化
可以通過Elastic.co 公司的下載地址下載:
bin/kibana_plugin --install
目前已知的插件列表
https://www.elastic.co/guide/en/kibana/current/known-plugins.html