实战Kibana的日志关键词搜索和日志可视化

简介:

准备工作

首先,先下载一个elastic网站上下载一个它提供的demo---莎翁的《亨利四世》,下载地址是https://download.elastic.co/demos/kibana/gettingstarted/shakespeare.json 。


打开这个json字符串,里面就是《亨利四世》的话剧剧本,长得是这个样子:

image.png


可以看到里面有“play_name”、"speaker"、"speech_number"、"line_id"等等名称,每个名称后面都有一个对应的值。


然后启动elasticsearch,按照上面的文件格式生成索引。语句如下:

curl -XPUT http://localhost:9200/shakespeare -d '
{
 "mappings" : {
  "_default_" : {
   "properties" : {
    "speaker" : {"type": "string", "index" : "not_analyzed" },    #确定type是字符
    "play_name" : {"type": "string", "index" : "not_analyzed" },
    "line_id" : { "type" : "integer" },    #确定type是数字
    "speech_number" : { "type" : "integer" }
   }
  }
 }
}
';


导入刚刚下载的那个json:

1
curl -XPOST  'localhost:9200/shakespeare/_bulk?pretty'  --data-binary @shakespeare.json


具体elasticsearch的增删改查语法可以参看阮大师的http://www.ruanyifeng.com/blog/2017/08/elasticsearch.html ,个人建议将elasticsearch和mysql对比一下,这样更方便理解。


然后后台启动kibana,确认5601端口已经stand by,如图:

image.png


然后在浏览器地址栏输入“服务器外网ip:5601”打开kibana。


导入数据结束之后,使用#curl 'localhost:9200/_cat/indices?v',去查看一下效果,如果看到index里有shakespeare那一栏就是导入成功了,如图:

1.png


在启动Kibana后,Kibana会自动在配置的es中创建一个名为.kibana的索引(上图第二个),这个索引用来存储数据,注意!不要删除了它。


Kibana的界面搜索

如果此时的kibana里是第一次配置的话,那么第一步就是配置新索引,我们之前在生成索引的时候写的是shakespeare,那么现在也写shakespeare,然后点击create,如图:

image.png


然后在菜单栏左侧的discover里选择刚刚建立的“shakespeare”,就会看到这样的东西:

1.png


在Search上就可以进行搜寻,比如说我搜寻"freedom",如图:

image.png


如果我搜寻“KING HENRY IV ”,他不分大小写的把所有king、henry、iv都搜索出来。


如果我想搜寻line_id的第一行到第三行,那么语句就是line_id:[1 TO 3],如图:

image.png


如果想在上面的基础上进一步细化,比如说要在line_id是从第一行到第三行,同时_type是scene的语句:line_id:[1 TO 3] AND _type:scene

image.png


假如不想要scene,那么就把AND改成NOT。


如果这个时候只想关注一些指定的字段,那么可以将鼠标移动到索引下面的字段上,然后选在add即可,同样的移动上面已经选择的字段选择remove进行移除,比如我们试一下这个speaker:

image.png


add之后在点击右侧的具体的speaker,就会看到里面的细节,比如这位westmoreland(威斯摩兰伯爵):

image.png


这个时候就能看见这位伯爵大哥的台词细节,在第几场的第几节,说的是什么台词。再返回菜单左侧点击这个speaker,我们还会看到一个比重:

image.png


从这里就很清晰的看到,FALSTAFF(法斯塔夫)这个哥们的台词最多,也符合书里塑造的那个嗜酒话痨的艺术形象。而我们的KING HENRY IV(亨利四世)的台词只是第四位,占比重11%而已...


这样具体的搭配搜索之后,可以点击界面右上侧的save进行保存搜寻结果,再搭配share分享搜索结果的url网址,如图:

image.png


Kibana的图像化展示

Kibana也能做到类似grafana那样的炫酷图象化展示,更加立体的表现日志情况,首先选择左侧菜单栏里的“Visualize”(可视化):

image.png


然后点击“Create a Visualization”,里面既有很多种图形供你选择,有饼型,有箭头的,有文字的,有仪表盘的,如图:

image.png


我们这里先建立一个饼型的,还是上面那个台词多少的例子,首先选择"shakespeare"作为数据源,然后点击“split slices”,如图:

image.png 


然后在Aggergation里选择“Terms”,然后在Field里选择“Speaker”,size那里写8,最后点击上面的那个三角播放键,看看结果:

image.png


这就很清晰的看出,亨利四世一共说了1086句话,占比11.11%。


如果我们再加一个“Split Slices",这一次在原有的specker的基础上选择“play_name”,图象变成了一个同心圆,最外面的一层就是新增的“play_name”的情况,如图显示FALSTAFF的所有台词会在两个play_name里出现:

image.png



如果这个盘子里不想统计FALSTAFF这个话包,就添加一个过滤器,选择speaker is not,后面写上FALSTAFF即可,如图:

image.png


效仿刚才的方法也可以做一个仪表盘,如图:

image.png


可视化的数据也可以save和share,同样在web界面的右上角。保存的数据是可以在左侧菜单栏里的Dashboard里展示,做成一个类似zabbix那样的展示!



最后的最后,如果您觉得本文对您升职加薪有帮助,那么请不吝赞助之手,刷一下下面的二维码,赞助本人继续写更多的博文!

wKioL1l16m3BMYDKAACPHEqd55Q687.jpg


 本文转自 苏幕遮618 51CTO博客,原文链接:http://blog.51cto.com/chenx1242/2049350


相关实践学习
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
相关文章
|
存储 运维 监控
超越传统模型:从零开始构建高效的日志分析平台——基于Elasticsearch的实战指南
【10月更文挑战第8天】随着互联网应用和微服务架构的普及,系统产生的日志数据量日益增长。有效地收集、存储、检索和分析这些日志对于监控系统健康状态、快速定位问题以及优化性能至关重要。Elasticsearch 作为一种分布式的搜索和分析引擎,以其强大的全文检索能力和实时数据分析能力成为日志处理的理想选择。
1319 6
|
数据可视化 关系型数据库 MySQL
ELK实现nginx、mysql、http的日志可视化实验
通过本文的步骤,你可以成功配置ELK(Elasticsearch, Logstash, Kibana)来实现nginx、mysql和http日志的可视化。通过Kibana,你可以直观地查看和分析日志数据,从而更好地监控和管理系统。希望这些步骤能帮助你在实际项目中有效地利用ELK来处理日志数据。
1036 90
|
运维 安全 数据可视化
日志审查安排工具实战攻略:中小团队如何通过日志审查安排工具建立可控、安全的审查机制?
在审计敏感时代,日志审查安排工具成为安全运维与合规管理的关键利器。它实现审查任务的流程化、周期化与可视化,支持多系统协作、责任到人,确保“可控、可查、可追”的日志治理。工具如板栗看板、Asana、Monday 等提供任务调度、问题闭环与合规对接能力,助力企业构建高效、透明的日志审查体系,提升安全与合规水平。
|
人工智能 运维 监控
Aipy实战:分析apache2日志中的网站攻击痕迹
Apache2日志系统灵活且信息全面,但安全分析、实时分析和合规性审计存在较高技术门槛。为降低难度,可借助AI工具如aipy高效分析日志,快速发现攻击痕迹并提供反制措施。通过结合AI与学习技术知识,新手运维人员能更轻松掌握复杂日志分析任务,提升工作效率与技能水平。
|
存储 监控 安全
|
Java Maven Spring
超实用的SpringAOP实战之日志记录
【11月更文挑战第11天】本文介绍了如何使用 Spring AOP 实现日志记录功能。首先概述了日志记录的重要性及 Spring AOP 的优势,然后详细讲解了搭建 Spring AOP 环境、定义日志切面、优化日志内容和格式的方法,最后通过测试验证日志记录功能的准确性和完整性。通过这些步骤,可以有效提升系统的可维护性和可追踪性。
665 1
|
机器学习/深度学习 运维 监控
开源日志分析Kibana
【10月更文挑战第22天】
712 3
|
监控 安全 Apache
什么是Apache日志?为什么Apache日志分析很重要?
Apache是全球广泛使用的Web服务器软件,支持超过30%的活跃网站。它通过接收和处理HTTP请求,与后端服务器通信,返回响应并记录日志,确保网页请求的快速准确处理。Apache日志分为访问日志和错误日志,对提升用户体验、保障安全及优化性能至关重要。EventLog Analyzer等工具可有效管理和分析这些日志,增强Web服务的安全性和可靠性。
674 9
|
监控 容灾 算法
阿里云 SLS 多云日志接入最佳实践:链路、成本与高可用性优化
本文探讨了如何高效、经济且可靠地将海外应用与基础设施日志统一采集至阿里云日志服务(SLS),解决全球化业务扩展中的关键挑战。重点介绍了高性能日志采集Agent(iLogtail/LoongCollector)在海外场景的应用,推荐使用LoongCollector以获得更优的稳定性和网络容错能力。同时分析了多种网络接入方案,包括公网直连、全球加速优化、阿里云内网及专线/CEN/VPN接入等,并提供了成本优化策略和多目标发送配置指导,帮助企业构建稳定、低成本、高可用的全球日志系统。
1500 55