【技术实现步骤摘要】
一种信息获取方法、装置、计算机设备和存储介质
[0001]本公开涉及计算机
,具体而言,涉及一种信息获取方法、装置、计算机设备和存储介质。
技术介绍
[0002]为了实现对目标应用的调试,目标应用获取其在运行过程中产生的二进制文件中所包括的栈回溯表unwind table进行调用栈的回溯,以得到栈回溯表,之后再根据栈回溯表中包括的目标应用调用的各层堆栈的堆栈信息进行应用调试。
[0003]但如果目标应用无法获取到unwind table,例如,目标应用对应的内存中存储的unwind table丢失或者损坏,将不能实现调用栈的回溯,也即不能得到完整的栈回溯结果,从而,无法实现应用的调试。
技术实现思路
[0004]本公开实施例至少提供一种信息获取方法、装置、计算机设备和存储介质。
[0005]第一方面,本公开实施例提供了一种信息获取方法,应用于客户端,包括:
[0006]响应于针对目标应用的栈回溯触发操作,获取在寄存器中存储的、最近运行到的目标层堆栈对应的第一数据地址信息; >[0007]基于所本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种信息获取方法,其特征在于,应用于客户端,包括:响应于针对目标应用的栈回溯触发操作,获取在寄存器中存储的、最近运行到的目标层堆栈对应的第一数据地址信息;基于所述第一数据地址信息,从所述目标应用对应的内存中获取所述目标层堆栈的堆栈信息;并在内存中存储有第一栈回溯表的情况下,判断基于所述第一栈回溯表,能否确定与所述堆栈信息相匹配的下一层堆栈在所述寄存器中的第二数据地址信息;其中,栈回溯表中存储有用于计算得到至少一层堆栈的下一层堆栈在寄存器中的数据地址信息的地址计算数据;若未能在所述客户端确定所述第二数据地址信息,基于所述第一数据地址信息生成栈回溯请求,并将所述栈回溯请求发送至所述目标应用对应的服务端;所述栈回溯请求用于请求所述服务端基于所述栈回溯请求和预先存储的第二栈回溯表,确定并反馈所述目标应用对应的栈回溯结果;所述栈回溯结果包括所述目标应用调用的各层堆栈的堆栈信息。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:若在所述客户端确定出所述第二数据地址信息,则在内存中获取所述第二数据地址信息指示的内存地址中存储的下一层堆栈的堆栈信息;将所述下一层堆栈的堆栈信息作为新的目标层堆栈的堆栈信息,并返回判断基于所述第一栈回溯表,能否确定与所述堆栈信息相匹配的下一层堆栈在所述寄存器中的第二数据地址信息的步骤,直到得到完整的所述栈回溯结果。3.根据权利要求1所述的方法,其特征在于,所述未能在所述客户端确定所述第二数据地址信息的情况包括:未能在所述内存中查找到所述第一栈回溯表;或者,在所述内存中查找到了所述第一栈回溯表,但查找到的所述第一栈回溯表中未存储有目标层堆栈对应的下一层堆栈的地址计算数据。4.根据权利要求2所述的方法,其特征在于,若基于所述第一栈回溯表确定出连续的部分层堆栈的第二数据地址信息,并利用服务端基于所述第二栈回溯表确定出剩余部分层堆栈的第二数据地址信息,则所述基于所述第一数据地址信息生成栈回溯请求,包括:基于在内存中已查找到的所述部分层堆栈的堆栈信息、所述部分层堆栈中的目标层堆栈的第一数据地址信息、以及内存中存储的当前已调用的全部堆栈的堆栈信息,生成所述栈回溯请求。5.根据权利要求1所述的方法,其特征在于,所述方法还包括:获取所述目标应用在运行时产生的各个二进制文件中包括的第二栈回溯表;将所述第二栈回溯表发送至服务端,以使所述服务端存储所述第二栈回溯表,并利用存储的第二栈回溯表确定目标应用对应的栈回溯结果。6.根据权利要求1至5任一项所述的方法,其特征在于,在得到所述服务端反馈的栈回溯结果之后,还包括:基于所述栈回溯结果中各层堆栈的堆栈信息,从所述各层堆栈中确定存在异常的异常堆栈;确定所述异常堆栈对应的异常应用代码,并对所述异常应用代码进行更新,得到更新后的应用代码。
7.一种信息获取方法,其特征在于,应用于服务端,包括:接收客户端发送的针对目标应用的栈回溯请求,所述栈回溯请求中携带有所述客户端在寄存器中存储的、最近运行到的目标层堆栈对应的第一数据地址信息;基于所述第一数据地址信息,以及预先获取的所述目标应用在运行时产生的第二栈回溯表,确定并反馈所述目标应用对应的栈回溯结果;所述栈回溯结果包括所述目标应用调用的各层堆栈的堆栈信息;其中,栈回溯表中存储有用于计算得到至少一层堆栈的下一层堆栈在寄存器中的数据地址信息的地址计算数据。8.根据权利要求7所述的方法,其特征在于,所述基于所述第一数据地址信息,以及预先获取的所述目标应用在运行时产生的第二栈回溯表,确定并反馈所述目标应用对应的栈回溯结果,包括:基于所述第一数据地址信息,从所述栈回溯请求中携带的内存中存储的当...
【专利技术属性】
技术研发人员:李权飞,贾宁,
申请(专利权)人:北京字节跳动网络技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。