kibana安装
kibana目录介绍
- bin:
程序的脚本文件,通过终端命令
./kabana 执行kibana
- config:
其中包括kibana.yml文件(kibana的配置文件)
修改elasticsearch.url的接受路径
接受路径的用户名以及密码
本地服务的端口号
注意:修改之后需要去掉 #号
//更多介绍
https://kibana.logstash.es/content/kibana/v5/production.html
data:
node:
nodejs的服务程序node_modules
node文件的依赖包optimize(充分利用):
该文件夹里面存入所有被编译过的js文件,也就是说所有的前台文件在src中,但是在启动后会被编译到该文件夹下src:
源码,该文件是被编译到optimize里面的。(在平常中,修改了src里面相应的html文件,启动kibana后发现现实并没有改变,原因就是编译文件中并没有被改变,解决的办法就是把optimize里面的相应的js删除掉,如kibana.bundle.js 对应的是discover setting visualize等组件)
- src/ui/index.js
完成了更加细节的各类app的加载和路由app
并且将app里面的内容打包进了bundle
所以我们只改变源码是不能够直接生效的,因为服务会优先的使用bundle中的内容执行。
从这句话可以看出,kibana支持设定config中的利用行为。完整的介绍见“src/server/config/schema.js”,这是在启动kbn_server 之前最先加载的内容。
在schema.js中可以加上
optimize.enabled: false
- kibana 框架
从4.5版本开始kibana框架与其他组件进行了分离路径在src/core_plugins/kibana中。
kibana中目录为
commom
public
server
translations
index.js
package.json
在index.js中可以看到
此文件将设定将组件注册成为一个 kibana.Plugin,id 叫什么,config 配置有什么,标题叫什么,入口文件是哪个,具体是什么类型的 uiExports,一般常见的选择有:app、visType。”
可以通过更改title来更改主页显示的标题名称。
uses 和 injectVars 是可选的方式,可以在 src/ui/ui_app.js 中看到起作用。分别是指明下列模块已经加载过,以后就不用再加载了;以及声明需要注入浏览器的 JSON 变量即:
因为一般应用不会使用links的类型uiExports因为kibana不用左侧边栏切换,而是要将自己内部的模块放上去,所以声明时将列表属性设定为了false
links具体可配置的属性见src/ui/ui_nav_link.js
在index.js中
preInit 也是一个可选属性,如果有需要创建目录之类的要预先准备的操作,可以在这步完成。
init是最后一步
Kibana 应用的最后一步是继续加载了一些服务器端的 route 设置。
- 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
文件设置 routes 的具体操作,其中会调用 sr/ui/public/index_patterns/route_setup/load_default.js 中提供的 addSetupWork 方法,在未设置 default index pattern 的时候跳转 URL 到 whenMissingRedirectTo 页面。src/ui/public/courier/courier.js
中定义了 Courier 类。Courier 是一个非常重要的东西,可以简单理解为 kibana 跟 ES 之间的一个 object mapper。控制器则会监听 application.load 事件,在页面加载完成的时候触发 courier.start()
kibana各个模块功能介绍以及使用方法
discover(探索)功能
discover标签主要用于交互的探索你的数据,可以通过你的索引模式来匹配每一条记录。
- 设置时间过滤器
时间过滤器得默认设置的时间为最近的15分钟,你可以使用顶部的时间选择器来修改时间过滤器,或者选定一个特定的时间间隔,或者时间范围。
- 搜索数据
在discover页面提交一个搜索,你就可以搜索匹配当前的索引模式的索引数据了,你可以之间输入简单的请求字符串,也就是用Lucene query syntax(Lucene查询语法)也可以用完整的基于JSON的 Elasticserach Query DSL。
Lucene query syntax(Lucene查询语法)
在搜索框内输入请求字符串:
简单的文本搜索,直接输入文本字符串。比如,如果你在搜索网站服务器日志,你可以输入 safari 来搜索各字段中的 safari 单词。
要搜索特定字段中的值,则在值前加上字段名。比如,你可以输入 status:200 来限制搜索结果都是在 status 字段里有 200 内容。
要搜索一个值的范围,你可以用范围查询语法,[START_VALUE TO END_VALUE]。比如,要查找 4xx 的状态码,你可以输入 status:[400 TO 499]。
要指定更复杂的搜索标准,你可以用布尔操作符 AND, OR, 和 NOT。比如,要查找 4xx 的状态码,还是 php 或 html 结尾的数据,你可以输入 status:[400 TO 499] AND (extension:php OR extension:html)。
- 开始一个新的搜索
- 保存搜索
可以再Discover页加载已经保存的搜索,也可以用作visualizations的
基础,保存一个搜索,意味着同时保存下了搜索请求的字符串和当前的索引模式。
点击save按钮
- 加载一个已经存储的搜索
改变你的搜索的索引
自动刷页面
你也可以通过自己配置一个时间间隔
来自动刷新Discover页面的最新的索引数据
按字段过滤
你可以过滤搜索结果,只显示某字段中包含了特定值的文档,同时也可以反向创建反向过滤器,排除掉包含特定字段值的文档。查看字段数据统计
从字段列表,你可以看到文档表格里有多少数据包含了这个字段,排名前5的值是什么,以及包含各个值得文档的占比。
要基于这个字段创建可视化,点击字段统计下方的 Visualize 按钮。
kibana插件定制化
可以通过Elastic.co 公司的下载地址下载:
bin/kibana_plugin --install
目前已知的插件列表
https://www.elastic.co/guide/en/kibana/current/known-plugins.html