Kibana使用指南
Kibana 是一款开源的可视化数据分析工具,可以使用 Kibana 对 Elasticsearch 中的数据进行搜索、分析,可以很方便的利用图表、表格及地图对数据进行多样的可视化展现。
创建与访问Kibana
在百度智能云选择Elasticsearch服务并完成创建集群后,除了已购买的Elasticsearch节点,默认会附赠一个Kibana节点,如图所示:
通过上图连接信息中所示的Kibana HTTP URL可以直接访问Kibana服务,Kibana用户名密码与百度智能云Elasticsearch服务的用户名密码相同。
使用Kibana
使用Console快速访问Elasticsearch
使用Dev Tools中的Console界面,可以直接使用REST API快速访问Elasticsearch。使用方式如下:
- 调用
GET _cat/nodes
,快速得到节点信息。
- 使用search API,可以直接检索索引filebeat-7.4.2-slowlog-2020.09.01中的数据。
- 直接点击如图所示Open documentation,可以查看Elasticsearch API文档。
使用仪表盘展示数据
接下来本文用Elasticsearch慢查询日志为例,体验Kibana把数据在仪表盘中展示的过程。
在索引filebeat-7.4.2-slowlog-2020.09.16
中,保存有使用filebeat导入的慢查询日志数据,数据结构如下所示:
{
"took_millis": "4",
"shard_num": "2",
"query_dsl": "{}",
"hostname": "node-1",
"shard": "0",
"class": "index.search.slowlog.fetch",
"took": "4.9",
"level": "INFO",
"index": "filebeat_test",
"message": "[2020-09-16T20:05:12,000][INFO ][index.search.slowlog.fetch] [node-0][filebeat_test][0] took[4.9ms], took_millis[4], total_hits[5132 hits], types[], stats[], search_type[QUERY_THEN_FETCH], total_shards[2], source[{}], id[], ",
"hits": "5132",
"node": "node-0",
"@timestamp": "2020-09-16T12:05:12.333Z",
"time": "2020-09-16T20:05:12,000"
}
创建索引模式Index Patterns
加载到 Elasticsearch 的每组数据都有一个索引模式(Index Pattern)。 在这里为了检索filebeat-7.4.2-slowlog-2020.09.16
,可以设置Index Pattern为 filebeat-7.4.2-slowlog-*
,如图所示:
选择@timestamp
为Time Filter field,Time Filter将使用此字段按时间筛选数据。
点击 Create Index Pattern 后成功创建Index Pattern。
使用Discover检索数据
单击侧面导航中的 Discover 进入 Kibana 的数据探索功能:
在查询框Filters
里,用户可以输入Kibana查询语句来搜索上文保存的慢查询日志。在 Discover 页面下可以查看搜索结果并在 Visualize 页面下生成已保存搜索的可视化效果。
使用Visualize可视化数据
在侧边导航栏点击 Visualize 开始可视化慢查询日志数据。
在New Visualize中可以选择合适的图表来可视化数据,在这里我们制作一个Horizontal Bar(水平条形图)和一个Pie(饼图)。
创建一个Horizontal Bar图(水平条形图)
Horizontal Bar(水平条形图)一般用来比较不同分组的数据差异性。在日志分析的例子中,本文使用Horizontal Bar(水平条形图)来比较不同时间段内的慢日志条数。下面是创建Horizontal Bar图(水平条形图)的例子。
1.在 New Visualization 页面中选择 Horizontal Bar 选项; 2.选择配置的Index Pattern; 3.指标项(Metrics)的y轴可以选择为Count(日志条数),Buckets选择Date Histogram(日期矩形图),得到的统计图如下所示:
如图,可以清楚的看出不同的时间内慢日志条数之间的对比,有助于排查慢查询问题。
制作完成后,用户可以点击页面左上角 Save 然后输入名称 (如图示例my log histogram
) 来保存这个图表供以后使用。
创建Pie(饼图)
Pie(饼图)一般用于强调各项数据占总体的占比,提现了个体和整体的比较。在日志分析的例子中,我们可以使用Pie(饼图)来比较慢查询日志的查询耗时区间的分布情况。下面是创建Pie图(饼图)的例子。
1.在 New Visualization 页面中选择 Pie 选项;
2.选择配置的Index Pattern;
3.对took
字段进行Metrics的Count聚合,并设定了若干统计区间,得到的统计图如下所示:
如图可以看出,耗时20ms内和耗时20ms-100ms的查询占据了绝大部分,而100ms以上的查询只有极少的分布,可以更加直观的分析慢查询的情况。
同上,制作完成后,点击页面左上角 Save 然后输入名称 (my log pie
) 来保存这个图表供以后使用。
更多Visualize的用法可参见Kibana官方网站。
使用Dashboard仪表盘汇总数据
仪表板可用于集中管理和分享可视化控件集合。构建一个仪表板可以配置在Visualize中已保存的可视化控件,方法如下:
- 在侧边导航栏点击 Dashboard 。
- 点击 Add 显示已保存的可视化控件列表。
- 单击
my log histogram
和my log pie
,然后刚刚制作的Visualize就增加到了Dashboard中。
将鼠标悬停在一个可视化控件上可以显示允许编辑、移动、删除和调整它的控制器。
制作完成后,点击页面左上角 Save 然后输入名称 来保存Dashboard。
要获取分享链接或将仪表板嵌入到网页中的 HTML 代码,请保存仪表板并点击 Share 。
更多Dashboard的用法可参见Kibana官方网站。