AIOps 这个议题在近几年愈来愈火红,以往我们总是只能透过进行监视、建立好规则触发警报,来了解系统是否发生异常,但若是我们没有自己观察到的部份,或是规则没有定义清楚的地方,往往很难有效且即时的发现问题,一般都是等到造成更严重的影响,严重到我们被通知道,我们知道有发生问题,而透过 Machine Learning 的能力,就是希望能在更严重的灾情发生之前,我们就能主动被提醒是否有异常,进而防止灾情的发生。
要说到 Elastic Stack 中所使用到 Machine Learning 的能力,主要有个两部份:
由於我自己本身对 Machine Learning 这部份并不熟悉,因此也不便多做说明,有兴趣的可以查看 官方文件 - Machine Learning。
虽然我对於 Machine Learning 不熟悉,同时也听过不同的评论表示 Elastic Stack 里使用到的 Machine Learning 只是基本的能力,并没有太过华丽,不过或许是这样反而更容易让非 Machine Learning 专业的人上手,同时所关注的点会是在如何能确实的协助我们在 Observability 这件事情上。
接下来我就从 Elastic Observability 当中的四大功能 Logs、Metrics、Uptime、APM ,里面所使用到 Machine Learning 的部份来进行说明。
首先在 Logs 的画面中,功能表中就有 Anomalies 与 Categories 的选项,这两个功能都是透过 Machine Learning 的能力所执行的功能,主要能协助我们做到:
Logs 的 Anomaly 主要是针对 log entry rates (输入率) 来进行异常的判断。
第一次进入时,会需要建立 Machine Learninng 的 job (工作),只需要选择起始的时间,以及针对哪个 indes 进行处理即可。
当 ML job 开始执行後,同时也收集一段时间的资料之後 (一般来说有二周以上的资料会较准确),我们在 Anomalies 可以看到,针对不同的 dataset (这个栏位是 Elastic Common Schema 所定义的,同时也就是 ECS 正规化的好处),在不同的时间点,有哪些可能是异常的状态。
并且会用简单的分数来协助我们判断,并且在 Anomaly 可以直接看到异常的描述。
针对底下的项目展开,可以看到最近几则判定为异常的 events 的原始 logs 长什麽样子,从上图的时间轴,也能快速的针对这段有异常的时间区段来设置时间的筛选,也能进一步跳转到 Elastic Machine Learning 功能的 Anomaly Explorer 画面进行深入的分析。
进入到 Categories (分类) 的功能画面时,很单纯的依照收集到的 Logs 进行分类,前且显示总数量、Datasets 的来源、并且借由 Trend (趋势) 的变化及数量来快速判断异常的状况。
Metrics 里使用 Machine Learning 主要可以协助我们针对 Metrics 数据判断是否有异常,例如:
而 Metrics 里要启用 Machine Learning,是在 Inventory 里面来启用,并透过右上角的 Anomaly detection。
同样的设定上也相当单纯,选择起始的时间,并且指定是否有要使用哪个栏位值来做 partition。
至於检视异常状况,也是透过右上角的 Anonmaly detecion 的选项,同时点选 Anomalies 的页签,可以看到 Machine Learning 协助判断出来的异常资讯。
透过 Actions 的选单,可以快速的跳到 Anomaly Explorer 或是在 Metrics 的 Inventory 画面中检视。
点选 Show in inventory 之後,会直接带入筛选值,以及切到时间到异常发生的时段。
在 Uptime 里,Machine Learning 主要协助的是:
设定启用 Anomaly detection 的方式,是要进入某个定义好的 Monitor 项目之中:
点选进入之後,在 Monitor duration 的画面里,可以看到 Enable anomaly detection 的选项。
一旦启用对後,若有回应时间特别久的异常发生,在 Monitor duration 里就可以直接看到。
APM 的部份,与 Machine Learning 有较完整的 APM anomaly detection 的整合,针对
上述的各项都有较完整的整合,这部份的资讯可以参考 官方文件 - Machine Learning - APM anomaly detection integration。
而设定的部份,也是在右上角的 Anomaly detection 进行设定。
而异常发生时,在 APM 的相关画面都能看到标示,Service 页面会出现 Hearth 的栏位:
Transaction 的画面会将异常 Duration 的区段标示出来:
Service Map 当中,有异常的服务也会变成黄色或红色,点选下去也会出现异常的分析资讯:
以上的介绍,是针对 Elastic Observability 中,透过 Machine Learning 在 Logs、Metrics、Uptime、Traces 里整合的相关功能说明,有兴趣的朋友可以进一步的从 官方文件 - Machine Learning 查阅 Machine Learning 的进阶用法,特别是 Anomaly Explorer 里面拥有更多详细的功能,对於异常的深入分析会有所帮助。
查看最新 Elasticsearch 或是 Elastic Stack 教育训练资讯: https://training.onedoggo.com
欢迎追踪我的 FB 粉丝页: 乔叔 - Elastic Stack 技术交流
不论是技术分享的文章、公开线上分享、或是实体课程资讯,都会在粉丝页通知大家哦!
<<: 【领域展开 27 式】 Page 与 Menu 名称比对+将 Instagram 汇入 Page 页面
日子来到了第二天,我们先去 tableau public 的官网看看吧! 注册帐号跟下载程序这两件事...
Header元件 第一个元件先从 Header.js 开始 Header要负责 显示标题 待办事项 ...
来到了第七天。老样子,先讲推荐的速解,如果你很急着用,这些 Add-On 可以帮上忙,第一是 For...
Visual Studio Code(简称VS Code) 由微软开发,并且支援Windows、Li...
那个行动装置 虽然我们都概括说是手机版,但 Media Query 其实支援更多装置的呈现,只是,应...