Kibana 是一款开源的数据分析和可视化平台,它是 Elastic Stack 成员之一,设计用于和 Elasticsearch 协作。可以使用 Kibana 对 Elasticsearch 索引中的数据进行搜索、查看、交互操作。也可以很方便的利用图表、表格及地图对数据进行多元化的分析和呈现。
学习网址:
https://www.elastic.co/guide/cn/kibana/current/setup.html
一、工具栏导航
graph
在Elasticsearch数据中显示并分析相关关系。
discover
通过查询和过滤原始文档以交互方式浏览数据。
visualize
在Elasticsearch索引中创建可视化并聚合数据存储。
dashboard
显示并共享可视化和保存的搜索的集合。
canvas
以像素完美的方式展示您的数据。
maps
探索来自Elasticsearch和Elastic Maps Service的地理空间数据。
machine learning
自动对时间序列数据的正常行为建模以检测异常。
infrastructure
探索基础结构指标和常见服务器,容器和服务的日志。
logs
实时流式记录日志或在类似控制台的体验中滚动浏览历史视图。
APM
从应用程序内部自动收集深入的性能指标和错误。
uptime
执行端点运行状况检查和正常运行时间监视。
SIEM
探索安全指标并记录事件和警报
Console
跳过cURL并使用此JSON接口直接处理您的数据。
Index Patterns
管理有助于从Elasticsearch检索数据的索引模式。
Monitoring
跟踪弹性堆栈的实时运行状况和性能。
Rollups
将历史数据汇总并存储在较小的索引中,以供将来分析。
Saved Objects
导入,导出和管理您保存的搜索,可视化和仪表板。
Security Settings
保护您的数据并轻松管理哪些用户可以访问用户和角色。
Spaces
将仪表板和其他保存的对象组织到有意义的类别中。
Watcher
通过创建,管理和监视警报来检测数据中的更改。
Dev Tools
开发工具
metrics
从服务器上运行的操作系统和服务收集指标。
management
管理索引,索引模式,保存的对象,Kibana设置等。
二、查询语法
1.通配符搜索可以在单个条件下运行,?用于替换单个字符,以及*替换零个或多个字符
2.常用表达通过将正则表达式模式包含在正斜杠("/")中,可以将它们嵌入查询字符串中
3.模糊性我们可以使用“模糊”运算符搜索与我们的搜索词相似但不完全相同的词
4.范围可以为日期,数字或字符串字段指定范围。包含范围用方括号指定,[min TO max]排除范围用花括号指定{min TO max}
三、Discover 的数据探索功能
搜索页面详情如下图:
点击字段会出现细分值详情,添加积极过滤器,请点击Positive Filter按钮 +这会只显示包含该细分值的文档;添加消极过滤器,请点击否定过滤器按钮 -这会排除包含该细分值的文档。点击下方的Visualize会以该细分值形成一个可视化图表
四、Visualize的操作及其配置
点击创建新的可视化,选择图表类型和数据索引来进行可视化绘图操作。
指标聚合(Metrics Aggregations) :
count:计数 聚合返回所选索引模式中元素的原始计数。
average:该聚合返回数字字段的平均值 。
sum:总和 聚合返回数字字段的总和。
min:最小值 聚合返回数字字段的最小值。
max:最大值 聚合返回数字字段的最大值。
standard deviation:扩展统计 聚合返回数字字段中数据的标准偏差。
unique count:基数 聚合返回字段中唯一值的数量。
median (50th percentile):中位数 聚合将数字字段中的中值。
percentiles:百分数 聚合将数字字段中的值分成您指定的百分数区间。从下拉列表中选择一个字段,然后在 Percentiles 输入域中指定一个或多个范围。点击 X 删除百分数字段。点击 + Add 添加百分数字段。
percentile ranks:百分位等级 聚合返回指定的数值字段中的值的百分位等级。从下拉菜单中选择一个数字字段,然后在 Values 输入域中指定一个或多个百分比等级值。点击 X 删除值字段。点击 + Add 添加值字段。
top hit
父类管道聚合(Parent Pipeline Aggregations) :对于每个父管道聚合,必须定义用于计算聚合的指标。这可能是现有的指标之一或新的指标。也可以嵌套这些聚合(例如产生3阶导数)。
derivative:导数 聚合计算特定指标的导数。
cumulative sum:累计总和 聚合计算父直方图中指定指标的累计总和。
moving average:移动平均值 聚合将动态移动数据窗口,生成该窗口数据的平均值。
serial diff:串行差分 是一种时间序列中的值在不同时间滞后或周期内从自身减去的技术。
兄弟管道聚合(Sibling Pipeline Aggregations) :就像使用父级管道聚合一样,需要提供一个用于计算同级聚合的指标。除此之外,还需要提供一个桶聚合,它将定义同级聚合将在其中运行的桶。
average bucket:桶平均值 计算同级聚合中指定指标的(中数)平均值
sum bucket:桶总和 计算同级聚合中指定指标值的总和
min bucket:桶最小值 计算同级聚合中指定指标的最小值
max bucket:桶最大值 计算同级聚合中指定指标的最大值
可以通过单击 + Add Metrics 按钮来添加聚合。
在 Custom Label 输入域中输入字符串以更改显示标签。
为视图X轴选择一个桶聚合:
- date histogram:日期直方图 是从数值字段构建并按日期组织的。
- Histogram:标准 直方图 是从数字字段构建的。为此字段指定一个整数间隔。选择 Show empty buckets 复选框以在直方图中包含空白区间。
- range:通过 范围 聚合,您可以为数字字段指定值的范围。点击 Add Range 添加一组范围端点。点击红色的 (x) 符号删除一个范围。
- Date Range:日期范围 聚合报告在您指定的日期范围内的值。您可以使用 日期数学 表达式来指定日期的范围。点击 Add Range 添加一组范围端点。 点击红色的 (x) 符号删除一个范围。
- IPv4 Range:IPv4 范围 聚合使您能够指定 IPv4 地址的范围。点击 Add Range 添加一组范围端点。点击红色的 (x) 符号删除一个范围。
- terms:词条 聚合使您可以指定要显示的给定字段的顶部或底部 n 个元素,按数量或自定义指标进行排序。
- filters:您可以为数据指定一组 过滤器 。您可以将过滤器指定为查询字符串或采用 JSON 格式,就像在 Discover 搜索栏中一样。点击 Add Filter 添加另一个过滤器。点label 按钮打开标签字段,其中 您可以键入一个名称以显示在可视化中。
- significant terms:显示实验性的 重要词项 聚合的结果。
一旦指定了 X 轴聚合,可以定义子聚合来优化可视化。单击 + Add Sub Aggregation 定义子聚合,然后选择 Split Area 或 Split Chart ,然后从类型列表中选择一个子聚合。
在图表轴上定义多个聚合时,可以使用聚合类型右侧的向上或向下箭头来更改聚合的优先级。
五、Dashboard的使用
要用仪表板,你需要至少有一个已保存的 visualization。
Kibana 仪表板(Dashboard) 展示保存的可视化结果集合。在编辑模式下,可以根据需要安排和调整可视化结果集,并保存仪表板,以便重新加载和共享。