预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共25页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

(19)中华人民共和国国家知识产权局(12)发明专利申请(10)申请公布号CN111381992A(43)申请公布日2020.07.07(21)申请号202010153665.1(22)申请日2020.03.06(71)申请人北京五八信息技术有限公司地址100080北京市海淀区学清路甲18号中关村东升科技园学院园三层301室(72)发明人邓竹立彭飞(74)专利代理机构北京润泽恒知识产权代理有限公司11319代理人莎日娜(51)Int.Cl.G06F11/07(2006.01)权利要求书2页说明书16页附图6页(54)发明名称一种崩溃日志处理方法、装置、电子设备及存储介质(57)摘要本发明提供了一种崩溃日志处理方法、装置、电子设备及存储介质。所述方法,包括:获取崩溃日志文件对应的可执行文件中所有的类的地址;根据每个所述类的地址,获取每个所述类的每个函数的地址范围;针对所述崩溃日志文件中的任意一条崩溃日志,响应于所述崩溃日志对应的崩溃地址位于任一函数的地址范围内,确认所述函数发生崩溃。通过对可行性文件的扫描及汇编指令的对比,查找崩溃地址所属函数地址区间,确认崩溃函数,从而将崩溃地址转成函数符号,将日志符号化。取得了在符号表缺失的情况下依旧能将崩溃日志符号化,减少程序监测的盲区,提高崩溃日志符号化的可行性和适应性的有益效果。CN111381992ACN111381992A权利要求书1/2页1.一种崩溃日志处理方法,其特征在于,包括:获取崩溃日志文件对应的可执行文件中所有的类的地址;根据每个所述类的地址,获取每个所述类的每个函数的地址范围;针对所述崩溃日志文件中的任意一条崩溃日志,响应于所述崩溃日志对应的崩溃地址位于任一函数的地址范围内,确认所述函数发生崩溃。2.根据权利要求1所述的方法,其特征在于,所述根据每个所述类的地址,获取每个所述类的每个函数的地址范围的步骤,包括:针对任意一个所述类,根据所述类的地址,从所述可执行文件中获取所述类的第一结构体,所述第一结构体中包含与每个所述函数的地址范围相关的第二结构体的地址;根据所述第一结构体中包含的第二结构体的地址,获取所述类的第二结构体;根据所述第二结构体,获取所述类的函数的地址范围。3.根据权利要求2所述的方法,其特征在于,所述根据所述第二结构体,获取所述类的函数的地址范围的步骤,包括:根据所述第二结构体,获取所述类的函数列表起始地址;根据所述函数列表起始地址,所述类的函数列表中包含的每个结构体的字节长度,获取所述类的每个函数的地址范围。4.根据权利要求3所述的方法,其特征在于,所述根据所述函数列表起始地址,所述类的函数列表中包含的每个结构体的字节长度,获取所述类的每个函数的地址范围的步骤,包括:根据所述函数列表起始地址,获取所述类的函数列表;根据所述函数列表中每个结构体的字节长度,获取所述类的每个函数的起始地址;针对每个所述函数,从所述函数的起始地址开始读取数据,直至遇到所述函数的结束指令,以获取所述函数的结束地址;针对每个所述函数,根据所述函数的起始地址和结束地址,确定所述函数的地址范围。5.根据权利要求3所述的方法,其特征在于,所述根据所述第二结构体,获取所述类的函数列表起始地址的步骤,包括:从所述第二结构体中的第一预设位置开始,向后连续获取第一预设数量个字节作为所述类的函数列表起始地址。6.根据权利要求2所述的方法,其特征在于,所述根据所述第一结构体中包含的第二结构体的地址,获取所述类的第二结构体的步骤,包括:从所述第一结构结构体中的第二预设位置开始,向后连续获取第二预设数量个字节,得到所述第二结构体的地址;根据所述第二结构体的地址,获取所述第二结构体。7.根据权利要求1-6中任一项所述的方法,其特征在于,在所述针对所述崩溃日志文件中的任意一条崩溃日志,响应于所述崩溃日志对应的崩溃地址位于任一函数的地址范围内,确认所述函数发生崩溃的步骤之后,还包括:获取确认发生崩溃的函数的函数名称,以及所述函数所属类的类名称,并将所述函数名称和所述类名称记录至目标文件中。8.一种崩溃日志处理装置,其特征在于,包括:2CN111381992A权利要求书2/2页类地址获取模块,用于获取崩溃日志文件对应的可执行文件中所有的类的地址;函数地址获取模块,用于根据每个所述类的地址,获取每个所述类的每个函数的地址范围;符号化模块,用于针对所述崩溃日志文件中的任意一条崩溃日志,响应于所述崩溃日志对应的崩溃地址位于任一函数的地址范围内,确认所述函数发生崩溃。9.根据权利要求8所述的装置,其特征在于,所述函数地址获取模块,包括:第一结构体获取子模块,用于针对任意一个所述类,根据所述类的地址,从所述可执行文件中获取所述类的第一结构体,所述第一结构体中包含与每个所述函数的地址范围相关的第二结构体的地址;第二结构体获取