始于日志,不止于日志,Elastic Stack全面介绍
1、Elastic Stack是什么?
说Elastic Stack之前,先说一下ELK Stack。这个词相信很多人都是耳熟能详的,作为一个著名的日志系统解决方案,应用非常广泛。
“ELK”是三个开源项目的首字母缩写词:Elasticsearch、Logstash 和 Kibana。 其中Elasticsearch 是一个开源、分布式、RESTful、基于 JSON 的搜索和分析引擎;Logstash 是一个服务器端数据处理管道,它同时从多个来源摄取数据,对其进行转换,然后将其发送到 Elasticsearch存储;Kibana 则允许用户在 Elasticsearch 中使用图表和图形来可视化数据。
其中Logstash除了可以收集多个来源的数据,还具备丰富的插件,可以用于数据分析过滤,但是占用资源比较多,使用起来比较重。由于有用户提出只需要跟踪某一个文件这种单一的轻量级场景,所以2015 年Elastic又开发出了各种轻量级单一用途的数据收集器,这就是Beats,其中非常著名的例如FileBeat。Beats出现以后,通常做法是使用Beats收集数据上传到Kafka等消息队列,然后Logstash订阅消息队列的数据,经过分析过滤以后上传到Elasticsearch。
当Beats加入ELK这个组合以后,再叫ELK显然就不合适了,那么不能叫做"EBLK"或者叫做"ELKB"吧,不然以后再加一个组件进来又得再改名字了。所以官方想了Elastic Stack这个新名字,具备“弹性”倒是非常贴切,所以以后不要再说ELK啦,就叫Elastic Stack。
2、Elastic Stack应用场景远不止于日志
Elastic Stack是公认的日志监测领域的领导者,以提供日志解决方案而闻名,但是实际上其应用场景却远远不止于日志,在基础架构监测、APM、客户旅程监测、企业内部搜索、地理位置信息应用、SIEM、终端安全、商业分析等方面都有比较完善的解决方案。下面举几个应用场景案例进行说明:
2.1、使用Elastic Stack构建APM
应用性能监测(APM)是现代微服务架构下非常重要的部分,掌握应用的性能数据、调用链路、依赖关系,能够方便、快速地对应用地运行系统进行掌握,出现故障能够快速分析定位。
Elastic Stack支持包括 OpenTelemetry、W3C 跟踪上下文和 Jaeger 在内的开放标准,通过采集由 OpenTelemetry agent收集的应用程序遥测数据,能够快速收集各类应用程序的性能数据,支持各类语言,通过Kibana、APM Server集成构建用户可观测的用户界面,就能非常方便实现APM的能力。
OpenTelemetry(也称为 OTel)是一个开源可观测能力框架,由一系列工具、API 和 SDK 组成,使 IT 团队能够检测、生成、收集和导出远程监测数据以进行分析和了解软件性能和行为,它是云原生地可观测遥测数据收集的一个标准;Jaeger 也是一个著名的分布式链路追踪框架。Elastic Stack对于这些框架的集成支持,使得构建APM是一件比较轻松的事情。

收集到的数据通过Kibana集成的APM能力能够以图形化的形式展示出来,例如调用链路跟踪、应用程序依赖关系等。


另外,Elastic Stack还具备Machine Learning 以及延迟和错误相关性的自动异常检测的能力,能够更加智能地协助问题排查。
2.2、使用Elastic Stack构建基础架构监测
Elastic Stack提供了Elastic Agent支持从各种地方收集需要进行监控的数据,这些数据可以是日志、指示、操作轨迹等,为了方便进行各类Elastic Agent的管理,Elastic Stack还提供了Fleet,可以统一对Agent进行配置、管理。
Elastic Agent 和 Fleet 为常用服务和平台提供了多种开箱即用的组件,包括一些常用的仪表板、可视化工具,免除大量的人工操作成本。
Kibana中有大量可以集成的现成应用,这些集成的组件超过200个,只需要简单安装即可完成集成接入,非常方便。

2.3、使用Elastic Stack构建用户体检监测
系统表现出的性能与实际的用户体验之间是可能存在较大的差距的,用户实际体验会受到浏览器类型、网络、区域、操作系统类型等多个因素的影响,如果不能有效掌握用户的体验受阻情况,就无法针对性的进行优化。
通过收集用户体验埋点信息,用户受挫信息等,基于URL、地理位置信息、浏览器类别等进行相关的数据统计分析,使用Elasticsearch存储所有的类型数据,使用Kibana相关集成对数据进行分析展示,了解不同地域、分层的用户的体验情况。

以上只是一些例子,实际上Elastic Stack在可观测性方面已经有了非常全面的解决方案,并且被广泛采用,在2022 年度 Gartner® APM 与可观测性 Magic Quadrant™评选中被评为visionary(“有远见者”)。
3、为什么选择Elastic Stack?
Elastic Stack之所以能够被广泛地采用,一是这个套件中各组件的功能强大,二是经过Elastic的整合,各套件完美搭配。
以可观测性系统构建为例,主要涉及三大步骤:数据采集、数据存储、数据分析和展示。
3.1、Logstash和Beats构建了最强大灵活的数据采集能力
Logstash 能够动态地采集、转换和传输数据,支持非结构化的数据,强大的Grok表达式可以轻松从非结构化数据中解析出所需要的数据,支持各种数据源,拥有近200种插件,数据过滤和转换能力十分强大,并且具备可信的交付管道,通过持久化队列保障事件至少被发送一次。
Beats则集合了多种单一用途数据采集器,包括Filebeat、Metricbeat、Heartbeat等等,轻松地从虚拟机、Docker或kubernetes容器平台收集数据,所有的Beats基于libbeat,这意味着开发者能根据自己的需要灵活地构建新地Beats。
3.2、Elasticsearch构建了强大的存储和搜索能力
Elasticsearch 是一个分布式、免费和开放的搜索和分析引擎,它几乎适用于所有类型的数据,包括文本、数字、地理空间、结构化和非结构化数据,搜索速度快、分布式扩展性强、功能强大。
**搜索速度很快。**因为 Elasticsearch 建立在 Lucene 之上,所以它擅长全文搜索。Elasticsearch 也是一个近乎实时的搜索平台,这意味着从文档被索引到变得可搜索的延迟非常短——通常是一秒。因此,Elasticsearch 非常适合对时间敏感的用例,例如安全分析和基础设施监控。
**Elasticsearch 是自然分布的。**存储在 Elasticsearch 中的文档分布在称为shard的不同容器中,这些容器被复制以在硬件故障时提供数据的冗余副本。Elasticsearch 的分布式特性使其能够扩展到数百(甚至数千)台服务器并处理 PB 级的数据。
**Elasticsearch 具有广泛的功能。**除了速度、可扩展性和弹性之外,Elasticsearch 还具有许多强大的内置功能,可以更加高效地存储和搜索数据,例如数据汇总和索引生命周期管理。
3.3、Kibana构建强大的展示能力
Kibana 则提供了强大的数据可视化和管理工具,提供常用的直方图、折线图、饼图和地图等。它还包括了高级应用程序,例如允许用户根据数据创建自定义动态信息图表的Canvas,以及用于可视化地理空间数据的 Elastic Maps。
目前为止,在UI展示功能和灵活性方面,除了Grafana,Kibana可以说是首屈一指。
4、Elastic Stack的服务提供方式
Elasticsearch相关的服务可以通过 Elasticsearch Service(可在 Amazon Web Services (AWS)、Google Cloud 和阿里云上使用)部署为托管的托管服务。
对于希望从单个控制台配置、管理和监控其部署但不想使用公共云平台的用户,Elastic 还提供 Elastic Cloud Enterprise,可以以私有云的形式进行部署。
对于自主掌控能力较强,有相关维护团队的企业来说,可以自行下载Elasticsearch、Kibana等组件自行进行部署和维护,高级非免费功能通过付费购买方式使用。
相关文章:
始于日志,不止于日志,Elastic Stack全面介绍
1、Elastic Stack是什么? 说Elastic Stack之前,先说一下ELK Stack。这个词相信很多人都是耳熟能详的,作为一个著名的日志系统解决方案,应用非常广泛。 “ELK”是三个开源项目的首字母缩写词:Elasticsearch、Logstash…...
FDX-B|EMID格式低频RFID 读卡模块LD6900技术选型与说明
FDX-B|EMID格式低频RFID 读卡模块LD6900是华翔天诚推出一款基于 RFID 无线射频识别技术的低频(LF)读卡模块,工作频率支持 134.2KHZ、125KHZ,符合 ISO 11784/5 国际标准,支持对 FDX-B、EMID 两种协议格式电子标签的读取…...
《SQL基础》11. 索引
SQL - 索引索引概述结构B-TreeBTreeHash思考分类语法SQL性能分析SQL执行频率慢查询日志profile详情explain执行计划索引失效情况范围查询索引列运算字符串不加引号模糊查询or连接条件数据分布影响使用规则最左前缀法则SQL提示覆盖索引前缀索引设计原则索引 概述 索引…...
【前端】进阶Mac OS软件商城页面_缤纷多彩的创意UI
非常漂亮的仿Mac OS界面,更改下参数就可以变成你需要的界面。 还可以一键更换背景主题 灵感来源于米科瓦伊加文齐奥夫斯基 附上css、html、js源码 下面是html文件 <!DOCTYPE html> <html lang"en" > <head><meta charset"…...
格创东智与金羽新能合作|先进工业互联网助力固态电池智能化运营
2022年12月,浙江金羽新能源科技有限公司(以下简称金羽新能)与格创东智签订战略合作框架协议,并在湖州安吉举行金羽新能固态电池MES项目启动会。 固态电池是一种使用固体电极和固体电解质的电池。相较传统锂电池(液态电…...
软件测试面试刷题app包含了各种难题
软件测试的生命周期: V模型:与软件开发阶段呼应 软件开发:需求分析-->概要设计-->详细设计-->编码阶段软件测试:单元测试-->集成测试-->系统测试-->验收测试从基本流程的角度讲: 需求阶段ÿ…...
19、ClickHouse企业中常见的20种用法
文章目录19、ClickHouse企业中常见的20种用法-- 1、表结构添加字段-- 2、删除语句-- 3、更新语法-- 4、查询表字段结构-- 5、展示字段加密处理 身份证号(字母加数字)加密-- 6、展示字段加密处理 手机号(纯数字)加密-- 7、计数 去重…...
怎么样用香港主机搭建游戏网站
香港是全球主要的互联网骨干节点,拥有质量较高的网络基础设施,在网络速度和稳定性方面表现良好。因此,使用香港主机搭建游戏网站可以使用户在游戏中的体验流畅且基本不会延迟情况。本文将向用户解释如何使用香港主机搭建游戏网站。在搭建游戏…...
重磅!GitLab 提出五大预测,洞见 2023 年 DevSecOps 发展趋势
本文来源:about.gitlab.com 作者:Sandra Gittlen 译者:极狐(GitLab) 市场部内容团队 2023 年,企业会将更多的时间和资源投入到持续的安全左移上,完成从 DevOps 到 DevSecOps 的演变。 GitLab CMSO Ashley Kramer 表示…...
内核模块(传参和依赖)
目录 一、模块传参 二、模块依赖 三、内核空间和用户空间 四、执行流 五、模块编程与应用编程的比较 六、内核接口头文件查询 七、小作业 一、模块传参 module_param(name,type,perm);//将指定的全局变量设置成模块参数 name:全局变量名 type: 使用符号 …...
基础篇:03-SpringCloud工程部署启动
目录 1.工程搭建部署 方案一:完整工程导入 方案二:从零开始搭建 1.工程与module创建 2.数据库导入 3.项目启动 3.1 启动并访问user-service 3.2 启动并访问order-service 4.服务远程调用 时序图说明 服务远程调用实现 注入RestTemplate Res…...
二、产品经理——【需求收集】【需求管理】
0. 学习目标 能够理解并描述需求能够收集并管理需求 1. 如何定义需求 1.1. 需求的定义 原始需求:没有经过任何分析,或者没有经过任何额外解读的需求信息 避免日后纠纷,尽量记录一下原始需求!先记录下来,后面再进行分…...
蓝桥杯stm32 USART 串口接收数据
文章代码使用 HAL 库。 文章目录 前言一、创建 CubeMX 工程:二、 中断接收数据 函数:三、串口接收回调函数实验效果四、接收固定长度的数据。五、串口接收 不定长数据。总结前言 上篇文章是 串口的发送数据,这篇文章接着上次的 讲 串口的接受数据。 一、创建 CubeMX 工程:…...
CellularAutomata元胞向量机-9-生命游戏MATLAB代码分享
主程序:%%Conways life with GUI clf % 清除图形clc, clear% %build the GUI %define the plot button plotbuttonuicontrol(style,pushbutton,... string,Run, ... fontsize,12, ... position,[100,400,50,20], ... callback, run1;); %define the stop button era…...
基于Java+Swing+mysql图书管理系统
基于JavaSwingmysql图书管理系统一、系统介绍二、功能展示1.用户登陆、注册2.类别管理--管理员3.图书管理--管理员4.用户管理--管理员5.图书借还情况查看--管理员7.用户主页8.办理还书--用户9.办理还书三、数据库四、其它系统五、获取源码一、系统介绍 该系统实现了 用户: 图书…...
高通IPQ支持串口转RS485
IPQ60xx支持串口转RS485 1. IPQ6018支持串口转RS4851.1 功能需求1.2 原理1.3 实现方法1.4 如何使用RS485?1.5 修改底层串口驱动来进行控制收发状态,上层应用可以直接当成串口来进行操作1. IPQ6018支持串口转RS485 1.1 功能需求 IPQ60xx/IPQ501x/IPQ80xx项目中使用RS485, 需…...
力扣-组合两个表
大家好,我是空空star,本篇带你了解一道简单的力扣sql练习题。 文章目录前言一、题目:175. 组合两个表二、解题1.left join提交SQL运行结果2.right join提交SQL运行结果总结前言 一、题目:175. 组合两个表 表: Person ----------…...
Linux权限概念
目录 Linux权限的概念 什么是权限 如何去操作权限 设置文件所属角色 设置文件属性 umask 粘滞位 Linux权限的概念 首先我们要了解到,在linux下有两种用户:超级用户(root)和普通用户。超级用户的命令提示符是“#”,普通用户的命令提示…...
备战金三银四,这些无数测试前辈们踩过的坑,在面试中,一定要注意这些
你觉得软件测试师这个职位怎么样?大多数人可能会给出答案:“测试?啊,没有技术含量。无非是看需求、业务手册、设计文档,然后点击功能是否实现。问题是测试中的部署和安装是否存在兼容性问题。” 是的,不可否认&#x…...
注解(加与不加的区别)
起因: 在看到这个文章时,对于注解的作用半知半解,由此,写了个例子,验证注解作用 以Override举例 新建一个父类,取名为textone(类名首字母应该大写) 写一个方法: 再新建一个类,继承…...
RestClient
什么是RestClient RestClient 是 Elasticsearch 官方提供的 Java 低级 REST 客户端,它允许HTTP与Elasticsearch 集群通信,而无需处理 JSON 序列化/反序列化等底层细节。它是 Elasticsearch Java API 客户端的基础。 RestClient 主要特点 轻量级ÿ…...
未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?
编辑:陈萍萍的公主一点人工一点智能 未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?RWM通过双自回归机制有效解决了复合误差、部分可观测性和随机动力学等关键挑战,在不依赖领域特定归纳偏见的条件下实现了卓越的预测准…...
React第五十七节 Router中RouterProvider使用详解及注意事项
前言 在 React Router v6.4 中,RouterProvider 是一个核心组件,用于提供基于数据路由(data routers)的新型路由方案。 它替代了传统的 <BrowserRouter>,支持更强大的数据加载和操作功能(如 loader 和…...
1688商品列表API与其他数据源的对接思路
将1688商品列表API与其他数据源对接时,需结合业务场景设计数据流转链路,重点关注数据格式兼容性、接口调用频率控制及数据一致性维护。以下是具体对接思路及关键技术点: 一、核心对接场景与目标 商品数据同步 场景:将1688商品信息…...
高等数学(下)题型笔记(八)空间解析几何与向量代数
目录 0 前言 1 向量的点乘 1.1 基本公式 1.2 例题 2 向量的叉乘 2.1 基础知识 2.2 例题 3 空间平面方程 3.1 基础知识 3.2 例题 4 空间直线方程 4.1 基础知识 4.2 例题 5 旋转曲面及其方程 5.1 基础知识 5.2 例题 6 空间曲面的法线与切平面 6.1 基础知识 6.2…...
【单片机期末】单片机系统设计
主要内容:系统状态机,系统时基,系统需求分析,系统构建,系统状态流图 一、题目要求 二、绘制系统状态流图 题目:根据上述描述绘制系统状态流图,注明状态转移条件及方向。 三、利用定时器产生时…...
使用 SymPy 进行向量和矩阵的高级操作
在科学计算和工程领域,向量和矩阵操作是解决问题的核心技能之一。Python 的 SymPy 库提供了强大的符号计算功能,能够高效地处理向量和矩阵的各种操作。本文将深入探讨如何使用 SymPy 进行向量和矩阵的创建、合并以及维度拓展等操作,并通过具体…...
Hive 存储格式深度解析:从 TextFile 到 ORC,如何选对数据存储方案?
在大数据处理领域,Hive 作为 Hadoop 生态中重要的数据仓库工具,其存储格式的选择直接影响数据存储成本、查询效率和计算资源消耗。面对 TextFile、SequenceFile、Parquet、RCFile、ORC 等多种存储格式,很多开发者常常陷入选择困境。本文将从底…...
佰力博科技与您探讨热释电测量的几种方法
热释电的测量主要涉及热释电系数的测定,这是表征热释电材料性能的重要参数。热释电系数的测量方法主要包括静态法、动态法和积分电荷法。其中,积分电荷法最为常用,其原理是通过测量在电容器上积累的热释电电荷,从而确定热释电系数…...
使用Spring AI和MCP协议构建图片搜索服务
目录 使用Spring AI和MCP协议构建图片搜索服务 引言 技术栈概览 项目架构设计 架构图 服务端开发 1. 创建Spring Boot项目 2. 实现图片搜索工具 3. 配置传输模式 Stdio模式(本地调用) SSE模式(远程调用) 4. 注册工具提…...
