调查线上接口超时报警的方法步骤
发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,这篇文章主要介绍"调查线上接口超时报警的方法步骤",在日常操作中,相信很多人在调查线上接口超时报警的方法步骤问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"调查线上接口超
千家信息网最后更新 2026年11月01日调查线上接口超时报警的方法步骤
这篇文章主要介绍"调查线上接口超时报警的方法步骤",在日常操作中,相信很多人在调查线上接口超时报警的方法步骤问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"调查线上接口超时报警的方法步骤"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
常用的命令包括 dashboard 、 thread -n、watch、trace 、 tt 等命令。
trace: 可以实时输出各个子调用的执行时间, 输入参数,返回值,是否该调用有异常,可以通过 trace -h 查看具体参数含义 tt: 将某一次耗时调用提取,然后重放,可以通过 tt -h 查看具体参数含义
第一步:trace定位耗时代码:
trace命令输出耗时超过 900 毫秒 的调用
trace com.kuaikan.comicbuy.repository.impl.ComicBuyRepositoryImpl getAllComicOrderFromDB '#cost>900' //查看耗时的调用路径 watch com.kuaikan.comicbuy.dao.comicbuy.ComicOrderMapper getHadPurchasedComicNumByTopicId {params,returnObj} -x 2 '#cost>10' //获取具体耗时的入参输出结果:
arthas@25316]$ trace com.kuaikan.comicbuy.repository.impl.ComicBuyRepositoryImpl getAllComicOrderFromDB '#cost>900'Press Q or Ctrl+C to abort.Affect(class-cnt:2 , method-cnt:1) cost in 786 ms.`---ts=2020-03-27 14:08:28;thread_name=DubboServerHandler-10.66.2.100:20893-thread-380;id=344;is_daemon=true;priority=5;TCCL=org.springframework.boot.loader.LaunchedURLClassLoader@533377b `---[954.270866ms] com.kuaikan.comicbuy.repository.impl.ComicBuyRepositoryImpl:getAllComicOrderFromDB() +---[0.010746ms] com.kuaikan.comicbuy.bean.ComicOrder:getTableNameByUserId() #376 // 代码里面是在循环中执行的ComicOrderMapper:getComicOrderByUserId, // count=18表示循环的次数,total是总的执行时间,min是循环中最小的执行时间,max是最大执行时间。 +---[min=3.061773ms,max=272.769328ms,total=854.625477ms,count=18] com.kuaikan.comicbuy.dao.comicbuy.ComicOrderMapper:getComicOrderByUserId() #382 +---[min=0.001283ms,max=0.006587ms,total=0.036144ms,count=17] com.google.common.collect.Iterables:getLast() #383 +---[min=0.001431ms,max=0.003022ms,total=0.032525ms,count=17] com.kuaikan.comicbuy.bean.ComicOrder:getId() #383 +---[0.001445ms] com.google.common.collect.Lists:partition() #395 +---[2.349703ms] com.kuaikan.comicbuy.dao.comicbuy.ComicOrderMapper:getComicOrderBatchIdsList() #396 +---[min=2.27E-4ms,max=0.479048ms,total=7.025685ms,count=6736] com.kuaikan.comicbuy.bean.ComicOrder:getProductType() #402 `---[min=8.2E-5ms,max=0.150606ms,total=5.636961ms,count=6736] com.kuaikan.comicbuy.bean.ComicOrder:getProductType() #403
第二步 : tt命令重放耗时调用
这一步的目的是为了判断,耗时调用是否和特定输入参数有关系 tt命令输出耗时超过 500毫秒 的调用
tt -t com.kuaikan.comicbuy.repository.impl.ComicBuyRepositoryImpl getAllComicOrderFromDB '#cost>500'
输出结果:
INDEX TIMESTAMP COST(ms) IS-RET IS-EXP OBJECT CLASS METHOD------------------------------------------------------------------------------------------------------------------------------ 1014 2020-03-27 14:40: 576.2674 true false 0x79476a4e ComicBuyRepositoryImpl getAllComicOrderFromDB 37 15 1015 2020-03-27 14:40: 852.3366 true false 0x79476a4e ComicBuyRepositoryImpl getAllComicOrderFromDB 45 85 1016 2020-03-27 14:41: 894.5568 true false 0x79476a4e ComicBuyRepositoryImpl getAllComicOrderFromDB 08 44 1017 2020-03-27 14:41: 612.3478 true false 0x79476a4e ComicBuyRepositoryImpl getAllComicOrderFromDB 30 68 1018 2020-03-27 14:42: 1162.434 true false 0x79476a4e ComicBuyRepositoryImpl getAllComicOrderFromDB 00 85 1019 2020-03-27 14:42: 1194.843 true false 0x79476a4e ComicBuyRepositoryImpl getAllComicOrderFromDB 00 248
第三步: 重复超时的请求
INDEX = 1018 的调用执行了1162.434毫秒,这个肯定是已经报RPC超时了.
查看某一个的详细 tt -i 1018
重放这个请求: tt -i 1018 -p
到此,关于"调查线上接口超时报警的方法步骤"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!
方法
命令
输出
接口
步骤
报警
调查
参数
时间
学习
循环
代码
可以通过
含义
更多
结果
帮助
输入
实用
最大
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
手磨咖啡
互联网科技
深圳九邦互联网科技有限公司
互联网金融与金融科技
远拓互联网科技
未来的互联网科技
上海致骋互联网科技
互联网科技小额贷款
互联网科技素材视频竖屏
甘肃拓世互联网科技有限公司
无锡溥仪互联网科技有限公司
注册互联网科技公司经营范围大全
恒生互联网科技指数跳水
佛山市翊博互联网络科技有限公司
2021互联网科技公司排名
黑科技 体验场景 互联网大会
中国互联网有什么科技
城市宝互联网科技有限公司
互联网科技创业计划的风险分析
高科技和互联网的现代国家
互联网科技工作委员会
万易互联网科技
智网互联网科技
科技互联网公司logo
互联网金融科技委员会
四个字互联网科技公司取名
字节跳动和互联网科技
未来五年的互联网科技
互联网科技包装股
河南商务圈互联网科技有限公司