cpu爆了怎么排查和处理_主机cpu突然飙高,如何快速排查问题

本文通过Zabbix监控发现服务器CPU异常升高,经排查确定为MySQL数据库问题。通过oneapmai平台深入分析,发现特定Web事务响应时间过长,进一步定位到耗时SQL语句。通过对Trace的详细追踪,最终确定SQL查询优化是解决接口性能瓶颈的关键。
摘要由CSDN通过智能技术生成

主机cpu突然飙高,如何快速排查问题

发布时间:2019-07-30 10:40,

浏览次数:505

, 标签:

cpu

[问题发现]

使用zabbix软件监控服务器时发现cpu突然异常,在业务主机上使用top命令查看系统的整体运行情况,使用top命令后发现mysqld占用C

PU特别高,初步判断可能是mysqld出现问题,需要排查:

[排查步骤]

Step1:

登录oneapm ai

平台后可以看到应用列表的总览视图,在总览视图中可以看到所有应用的名称以及相关指标信息,同时我们还可以根据应用颜色变化来判断每个应用的指标变化情况。本例中在

Acmeair应用的“用户体验一览”选项卡下可以看到它的业务在最近一段时间内出现了71次失败,我们需要点击此应用查看详情,如图一:

图一

Step2:

利用top命令已经基本排查出是数据库导致CPU占用过高,我们可以通过查看调用数据库的节点发现问题。

在AI平台上点击某个应用进入到该应用的主页,进入之后可以看到该应用的总体拓扑图,总览拓扑图会把应用中所有Tier

、数据库、远程服务与其他应用之间的调用关系描绘出来,并且显示他们的性能情况。当某个节点的颜色为黄色或红色时,代表该Tier的健康状态是告警或严重。

点击拓扑图右上侧的“数据库-展开”选项,可以看到调用mysql数据库的节点,点击该节点(例如下图中的Webapp11节点),出现的弹框中有总览、节点、Web

事务入口、Web事务、主机和容器几个选项卡。“Web事务入口”可以看到某个应用在应用环境中请求的起始点;而“Web

事务”展示了一些用户最关心的的指标,从而让用户对当前查看Web事务的健康状况产生总体的了解。

点击“Web事务入口”选项可以看到对应接口的响应时间正常,代表对应接口表现正常,如图二;我们需要继续排查“Web事务”部分。

图二

点击“Web事务”选项,可以给出该节点中所有Web事务的响应时间及调用次数,点击“响应时间”可以将响应时间从高往低排序,从而确认缓慢的“Web

事务”,如图三。本例中,点击响应时间最长的Web事务查看详情。

图三

Step3:

点击响应时间最长的一个Web事务后,左上角“总览”下“Web事务”的标签会显示出该Web

事务的平均响应时间,点击某一响应时间较长的时间点,可以向下钻取到所选时间段,精准定位到问题时间点。同时在Web事务的下方可以看到该时间段内的最慢组件,如图四。

在本例中下钻到具体时间点后,可以在“总览”界面的“最慢组件”下看到是一个select语句比较耗时,再次佐证了我们的想法。

图四

Step4:

Trace是对这段时间内该用户缓慢或错误请求的详细追踪。

钻取到问题时间段后,我们查看该时间范围内的Trace列表,如图五。因为同一个Web

事务调取到的后端信息都是相同的,所以我们只需要选取其中的一条或几条最优代表性(例如响应时间较长)的Trace进行问题定位即可。

在本例中我们按响应时间进行排序降序排列后,选择第一条进行Trace详情查看。

图五

点击所选Trace之后,在Trace概要中可以看到该Trace中的最慢组件,如图六。例如图六中我们可以在Trace的总览页面发现customer/select

语句耗时较长。

图六

弹框中同样还可以查看该Trace中的堆栈调用详情。点击“详情”选项卡,如图七,可以看到该sql语句对接口的影响,从而进行代码的优化。在本例中,我们可以看到S

QL语句的耗时百分比较高,可以看出该SQL语句对接口影响较大。

图七

点击该SQL语句 附加信息栏中的图标,可以查看到耗时较长的的sql语句详情。我们也可以弹框左上角中的“

SQL”选型卡,在弹框中也可以看到语句详情、该语句的响应时间及调用次数,如图八、图九:

图八

图九

至此,发现问题原因以及影响接口已全部排查出来!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值