7 月 25 日,由中国信通院发起的“2023 可信云-系统稳定性”首批评估结果在可信云大会现场公布,应用实时监控服务 ARMS 斩获《可观测性标准体系要求 - 根因分析技术分级能力要求》“先进级”认证,使阿里云成为信通院云服务“稳定性守护者”企业代表。
云原生技术正在激活应用构建新范式,构筑企业业务运行新基石。在推动各行各业拥抱云原生、用技术加速创新的过程中,阿里云云原生致力于为企业提供系统稳定、资源弹性、应用敏捷、业务智能、可信安全的五大核心价值,通过输出先进的技术服务和完整的产品体系,让企业放心用云、用好云。
同时,阿里云云原生坚持与业界同行,积极参与信通院各项云原生规模化落地标准制定和推广的共建工作中。本次阿里云云原生作为参编方协同构建首个信通院“可观测性标准体系”, 为业界提供可观测性建设评估与度量方案,促进上层业务稳定性和业务连续性,提升应用的风险可控能力。
本次可信云的可观测性标准体系根因分析技术分级能力要求标准涵盖了数据采集、决策分析、展示输出和配置管理 4 大类别,共计 112 个测试项。其中,应用实时监控服务 ARMS 在此次根因分析标准评测中通过 109 个用例,在数据的采集、根因类型、分析方式、异常告警及方案推荐等表现亮眼,体现出阿里云云原生可观测在数据采集能力、根因分析能力、展示输出能力均达到行业领先水平。最终应用实时监控服务 ARMS 通过了《可观测性标准体系要求 - 根因分析技术分级能力要求》标准的评估,成功获评为首批先进级!
ARMS Insights 是应用实时监控服务 ARMS 结合可观测领域的各类共性问题,集核心之力打造的 AIOps 拳头级产品功能。ARMS Insights 所具备的智能巡检、诊断能力,帮助企业减少问题发现配置复杂度,同时协助定位问题并缩短问题定位时间。ARMS Insights 利用应用实时监控服务 ARMS 丰富的数据源,通过自研的检测算法模型、智能归因模型,辅以代码级的专家插件, 为企业提供一键式智能巡检和根因定位功能。
用户可以在 ARMS 控制台的智能洞察开启该功能。开启之后,ARMS Insights 将对接入到 ARMS 平台的应用等开始进行自动化的巡检。巡检到问题后,则自动进行根因定位分析。下图展示了某用户开启后收到的一些异常事件列表情况。点击查看详情,则可以看到当前异常事件具体的异常情况以及对应根因分析结论。
除了开箱即用的智能巡检和根因分析,ARMS Insights 开放检测范围供用户根据需要自行定义修改。
用户也可以在具体的某一种巡检配置场景下,如:是否只需要 TopN 以及 TopN 接口设置,应用/接口黑名单,以及检测阈值和异常阈值的定制化配置。
针对传统监控通过配置大量固定阈值报警发现问题方式有耗时、耗力、不准确的缺陷,Insights 智能巡检方案默认对所有接入 ARMS 的应用自动创建巡检定时任务。通过对应用性能指标 RT(平均响应时间)、Error(应用错误数)、QPS(平均请求量) 建立特征指标,从而实时产生异常事件,用户可以通过订阅产生相应的报警。除此外,Insights 还支持对基础设施指标如:JVM 指标异常、流量不均等, 对应用实例离群等自动进行检测。
总结来说,ARMS Insights 智能巡检具备专业化、自动化、智能化的三大特点。ARMS Insights 巡检采用了多种业界通用算法,结合自研算法在 “投票机制”、“分而治之”、“长短周期特征结合” 思想指导下打造高召回,高准确检测能力,并提供智能异常区间定位,智能异常等级等特性,旨在为用户打造从发现问题到分析问题、定位问题的全链路闭环巡检能力。
Insights 智能诊断一方面通过通过专家系统的经验模拟开发和运维人员的排查流程,另一方面通过算法进行排查流程中的决策,最后结合特性插件给出可能的根因帮助开发和运维人员减少根因定位的时间。
举个例子:应用 A 部署在容器服务上,同时他自身对外部服务有依赖,在某个时刻应用 A 平均响应时间开始突增,如何进行根因定位,假设应用 A 的依赖拓扑如下图所示:
传统的监控系统根因定位流程如下:首先需要识别应用A基础设施是否有问题包括 CPU、内存、Load 等指标是否异常,其次需要找到热点接口可能是一个或多个,以上图 A-2 为例来看,此时需要排查接口 A-2 的调用链路可以发现其依赖应用 B 的 B-1 接口和应用 C 的 C-1 接口。此时需要从链路以及指标上对比是否继续下钻分析以及针对 B-1 还是 C-1 进行分析,同理后续分析过程中遇到数据库问题需要考虑是否是数据库连接池问题、慢 SQL 问题还是数据库服务端的问题等。可以看到整个分析过程比较繁杂,同时需要有一定的运维经验。
具体到产品功能页面来看,ARMS Insights 支持多种场景下,到代码级的根因定位分析:
点击疑似根因选项,可以继续查看当前根因对象的具体信息以及与之相关的方法栈、SQL 调用等信息。
ARMS Insights 目前支持多种场景的代码及根因结论,总结如下: