[发明专利]一种监测工具的监测方法、装置及存储介质有效
申请号: | 202110579771.0 | 申请日: | 2021-05-26 |
公开(公告)号: | CN113419933B | 公开(公告)日: | 2023-02-03 |
发明(设计)人: | 刘海涛;万振华;王颉;李华;董燕 | 申请(专利权)人: | 深圳开源互联网安全技术有限公司 |
主分类号: | G06F11/34 | 分类号: | G06F11/34 |
代理公司: | 深圳市恒申知识产权事务所(普通合伙) 44312 | 代理人: | 鲍竹 |
地址: | 518100 广东省深圳市龙华区龙华*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 监测 工具 方法 装置 存储 介质 | ||
本发明提供了一种提升性能监测工具监测效率的方法,包括步骤:通过嵌入探针埋点进行采集应用性能数据,所述探针埋点包括对Java基础调用代码进行函数级埋点,根据运行所述采集的应用性能数据,得到请求函数的不同方法执行链与执行时间,生成方法执行树,并对所述方法执行树进行存储;对所述不同方法执行链进行分析,获取所述不同方法执行链中对应执行时间过长的请求函数,对所述执行时间过长的请求函数设置频率采样,以实现相应的监测功能。通过动态频率采样提升检测性能,通过方法执行链的树状存储提高了存储效率,全程无需人工参与。
技术领域
本发明涉及系统测试技术领域,尤其是指一种监测工具的监测方法、装置及存储介质。
背景技术
随着网络的蓬勃发展,应用程序的数量也相应的处于井喷式的发展阶段,检测应用性能的方法也越来越多,但是在高流量高并发的情况下,性能监测工具往往拖慢了应用程序的执行效率。
现阶段,开发人员主要通过两种方式对性能检测工具进行优化:第一种方式是随机采样,在应用程序处于高流量高并发时,性能监测工具随机对请求进行性能监测,虽然会丢失部分数据,但是不影响正常功能。第二种方式是选择采样,在应用程序处于高流量高并发时,对性能监测工具显式的指定对哪些请求进行跟踪,在明确丢失部分不太重要的数据同时,保存业务正常功能。
因此,迫切需要一种监测工具的监测方法。
发明内容
本发明所要解决的技术问题是:提供一种监测工具的监测方法,解决现有的性能监测工具主要通过人工操作,存在监测效率低的问题。
为了解决上述技术问题,本发明采用的技术方案为:本发明第一实施例提供监测工具的监测方法,包括步骤:
通过嵌入探针埋点进行采集应用性能数据,所述探针埋点包括对Java基础调用代码进行函数级埋点;
根据运行所述采集的应用性能数据,得到请求函数的不同方法执行链与执行时间,生成方法执行树,并对所述方法执行树进行存储;
对所述不同方法执行链进行分析,获取所述不同方法执行链中对应执行时间过长的请求函数;
对所述执行时间过长的请求函数设置频率采样,以实现相应的监测功能。
进一步的,本发明第二实施例对步骤S3进行详细设计,所述对所述不同方法执行链进行分析具体包括如下步骤:
获取所述不同方法执行链对应的执行时间节点,其中,单个执行链包括至少一个节点,对所述节点的执行时间大于预设阈值的节点进行标记;
以及根据所述节点的执行时间长度将请求函数标记为“性能高”,“性能一般”,“性能慢”,“性能很慢”等多个等级。
进一步的,所述根据不同方法的执行链与执行时间,运行所述应用性能数据,生成方法执行树并对所述方法执行树进行存储之后,还包括:对方法执行树中的入口请求函数进行标记。
进一步的,还包括设置间隔时间将所述方法执行树进行清除,并重新生成方法执行树。
本发明第三实施例提供一种监测工具的监测装置,包括:
采集模块,通过嵌入探针埋点进行采集应用性能数据,所述探针埋点包括对Java基础调用代码进行函数级埋点;
生成模块,根据请求函数的不同方法执行链与执行时间,运行所述采集的应用性能数据,生成方法执行树,并对所述方法执行树进行存储;
分析模块,对所述不同方法执行链进行分析,获取所述不同方法执行链中对应执行时间过长的请求函数;
监测模块,对所述执行时间过长的请求函数设置频率采样,以实现相应的监测功能。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳开源互联网安全技术有限公司,未经深圳开源互联网安全技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110579771.0/2.html,转载请声明来源钻瓜专利网。