实践场景
某电商平台客服人员接到用户反馈,商品购买出现问题,一般会交由技术人员排查解决。而微服务分布式架构中的一个业务请求通常要经过多个服务/节点后返回结果。一旦请求出现错误,往往需要在多台机器上反复翻看日志才能初步定位问题,对简单问题的排查也常常涉及多个团队。而且很难从代码层面确认某个应用依赖了哪些下游服务(数据库、HTTP API、缓存),以及被哪些外部调用所依赖。
解决方案
AOM构建基于CMDB的可观测性分析,通过CMDB构建应用与资源的关系,并基于原始数据(指标、调用链、日志、事件等)实现异常检测、历史数据分析、性能分析、关联性和场景化分析的可观测性分析的能力,从而帮助运维人员高效处理定位问题。
可观测分析步骤
步骤一:建设四层指标体系
具体操作请参见建设四层指标体系。
步骤二:配置统一监控大盘
具体操作请参见配置统一监控大盘。
步骤三:创建全量指标告警规则
通过指标告警规则可对资源的指标设置阈值条件。当指标数据满足阈值条件时产生阈值告警,当没有指标数据上报时产生数据不足事件。
按照配置方式的不同,创建指标告警规则可分为三种:按资源类型创建、按全量指标创建和按Prometheus命令创建。下面的操作以按全量指标创建为例说明。
说明:如果需要将上报的告警数据在应用监控页面显示,则创建指标告警规则时,只能选择按全量指标创建。
登录AOM 2.0控制台。
在菜单栏选择“监控中心”,进入“监控中心”界面。
在左侧导航栏中选择“告警管理 > 告警规则”。
在“规则列表”页签下单击 “创建告警规则”。
设置告警规则的规则名称等基本信息。
设置告警规则的详细信息。
选择“规则类型”为“指标告警规则”,“配置方式”为“按全量指标”。
设置指标、环境、检查频率等告警条件参数。
根据需要设置告警标签和告警标注信息,为告警匹配分组,后续可关联告警降噪策略来发送告警通知。b选择的是业务层指标,所以此处标签设置为“aom_monitor_level:business”。
设置告警通知策略。告警通知策略有两种方式,此处选择直接告警方式。
直接告警:满足告警条件,直接发送告警。
设置是否启用告警行动规则。启用告警行动规则后,系统根据关联SMN主题与消息模板来发送告警通知。
启用告警行动规则后,需要设置是否开启告警恢复通知。开启告警恢复通知后,当满足告警条件中设置的告警恢复条件,则按照选择的告警行动规则发送告警恢复通知。
单击“立即创建”,完成创建。创建完成后,单击“返回告警规则列表”可查看已创建的告警规则。
在展开的列表中,只要指标数据满足设置的告警条件时,在告警界面就会生成一条指标类告警,您可在左侧导航栏中选择“告警管理 > 告警列表”,在告警列表中查看该告警。只要该告警满足已设的通知策略,系统就会以邮件、短信或企业微信等方式发送告警通知给指定人员。
步骤四:分析业务异常:
下面的操作以分析处理步骤三:创建全量指标告警规则产生的APM事务监控异常为例说明。
将CMDB纳管CCE的工作负载和集群后,可通过CMDB整体观测CCE工作负载及依赖资源。
登录AOM 2.0控制台。
在菜单栏选择“监控中心”,进入“监控中心”界面。
在左侧导航栏中选择“应用洞察 > 应用监控”。
在“应用监控”页面左侧的应用搜索区域,按应用、区域、标签、关键字等搜索并找到需要监控的“phoenixapp1”应用。
在右侧区域查看业务层资源的健康状态。
健康时该资源层显示为绿色,当出现告警信息时,该资源层显示为红色。如下图所示,当前业务层资源存在异常。
单击告警信息,查看当前告警的详细信息和处理建议信息
单击“告警分析”,进入“调用链”页签,查看URL、调用方法等信息请求成功、请求失败、响应时间、产生时间记录。
单击某条调用链信息,在详情页面页面单击“查看”可详细追踪告警的原因,分析得出该业务层指标告警的原因是请求失败。
详细流程参考基于CMDB的可观测性分析