【技术实现步骤摘要】
应用程序卡顿数据获取方法、装置、设备及存储介质
[0001]本公开实施例涉及计算机与网络通信
,尤其涉及一种应用程序卡顿数据获取方法、装置、设备及存储介质。
技术介绍
[0002]对于应用程序(Application,APP)产品而言,程序运行的流畅度,是评价其质量高低的重要因素,在APP产品的不断升级和版本迭代过程中,产品开发者会针对APP产品中出现的卡顿问题进行数据采集和定位,以终端设备运行其APP产品时出现的卡顿现象。
[0003]现有技术中,APP产品开发者会通过终端设备会监测应用程序的卡顿,并采集相关的跟踪信息进行分析,然而,终端设备在采集到跟踪信息后,是基于异常的处理方式进行信息处理的,因此采集到的跟踪信息,需要在内核态下进行写入处理。
[0004]然而,由于运行应用程序的线程在内核态进行输入/输出(Input/Output,I/O)操作存在延迟问题,因此会引发应用程序出现卡顿的问题。
技术实现思路
[0005]本公开实施例提供一种应用程序卡顿数据获取方法、装置、设备及存储介 ...
【技术保护点】
【技术特征摘要】
1.一种应用程序卡顿数据获取方法,其特征在于,包括:获取应用程序的跟踪信息,所述跟踪信息用于表征在所述应用程序运行过程中与所述应用程序相关的耗时信息;将所述跟踪信息在用户态下通过异步线程缓存至预设位置,以生成跟踪文件,其中,所述跟踪文件用于对所述应用程序进行卡顿分析;将所述跟踪文件上传至服务器。2.根据权利要求1所述的方法,其特征在于,将所述跟踪信息在用户态下通过异步线程缓存至预设位置,以生成跟踪文件,包括:拦截所述应用程序的缓存操作,其中,所述缓存操作用于表征所述应用程序通过执行内核代码存储所述跟踪信息;将所述跟踪信息,通过异步线程发送至预设的用户态缓存区;在确定所述用户态缓存区的数据写入量大于或等于预设缓存阈值时,将所述用户态缓存区内的数据写入预设位置,以生成跟踪文件。3.根据权利要求2所述的方法,其特征在于,拦截所述应用程序通过执行内核代码存储所述跟踪信息的操作,包括:通过预设在写系统调用位置的钩子函数,拦截所述应用程序向示踪标识描述文件写入的跟踪信息,并将所述跟踪信息写入环形内存缓存区;将所述跟踪信息,通过异步线程发送至预设的用户态缓存区,包括:通过异步线程将所述环形内存缓存区中的跟踪信息写入所述用户态缓存区。4.根据权利要求3所述的方法,其特征在于,所述用户态缓存区通过流写操作类实现,在确定所述用户态缓存区的数据写入量大于或等于预设缓存阈值时,将所述用户态缓存区内的数据写入预设位置,以生成跟踪文件,包括:将预设的待写入文件映射到流写操作类对应的用户态缓冲区;当所述用户态缓冲区的数据写入量大于或等于预设缓存阈值时,将所述用户态缓冲区中的数据刷新至对应的待写入文件,以生成所述跟踪文件。5.根据权利要求2所述的方法,其特征在于,所述方法还包括:获取输入输出接口信息和锁信息,所述输入输出接口信息用于表征线程对示踪标识描述文件的输入输出状态;所述锁信息用于表征线程对示踪标识描述文件的持有状态;所述方法,还包括:将所述输入输出接口信息、所述锁信息,通过异步线程发送至所述用户态缓存区。6.根据权利要求1所述的方法,其...
【专利技术属性】
技术研发人员:李明浩,
申请(专利权)人:北京字跳网络技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。