[发明专利]符号化程序运行日志的方法和系统有效
申请号: | 201410027679.3 | 申请日: | 2014-01-21 |
公开(公告)号: | CN104794046B | 公开(公告)日: | 2018-12-18 |
发明(设计)人: | 邱金涛;龙磊 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | G06F11/34 | 分类号: | G06F11/34;G06F17/22 |
代理公司: | 广州华进联合专利商标代理有限公司 44224 | 代理人: | 何平;邓云鹏 |
地址: | 518000 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 日志 程序运行 符号化 通用唯一识别码 函数符号 符号表 进程 函数地址 替换 程序代码 发生故障 根本原因 字典 查找 | ||
1.一种符号化程序运行日志的方法,包括以下步骤:
获取程序运行日志中需要符号化的进程,所述需要符号化的进程为所述程序运行日志中堆栈里的进程;
获取所述进程的通用唯一识别码;
在具有符号表与通用唯一识别码的对应关系的字典中,根据所述进程的通用唯一识别码查找对应的符号表;
在所述对应的符号表中提取所述进程对应的函数符号,包括:获取所述进程对应的函数地址偏移量,在所述对应的符号表中所述函数地址偏移量对应位置提取函数符号;
将程序运行日志中所述进程对应的函数地址替换为所述函数符号。
2.根据权利要求1所述的符号化程序运行日志的方法,其特征在于,在所述获取程序运行日志中需要符号化的进程的步骤之前,所述方法还包括:
搜索程序编译时保存的符号表;
获取符号表的通用唯一识别码,并建立具有符号表与通用唯一识别码的对应关系的字典。
3.根据权利要求2所述的符号化程序运行日志的方法,其特征在于,在所述搜索程序编译时保存的符号表的步骤之前,所述方法还包括:
采用脚本保存程序编译时用到的符号表。
4.一种符号化程序运行日志的系统,其特征在于,包括:
进程获取模块,用于获取程序运行日志中需要符号化的进程,所述需要符号化的进程为所述程序运行日志中堆栈里的进程;
识别码获取模块,用于获取所述进程的通用唯一识别码;
符号表查找模块,用于在具有符号表与通用唯一识别码的对应关系的字典中,根据所述进程的通用唯一识别码查找对应的符号表;
函数符号提取模块,用于在所述对应的符号表中提取所述进程对应的函数符号,所述函数符号提取模块包括:函数地址偏移量获取单元,用于获取所述进程对应的函数地址偏移量;符号提取单元,用于在所述对应的符号表中所述函数地址偏移量对应位置提取函数符号;
替换模块,用于将程序运行日志中所述进程对应的函数地址替换为所述函数符号。
5.根据权利要求4所述的符号化程序运行日志的系统,其特征在于,所述系统还包括:
字典建立模块,用于在所述获取程序运行日志中需要符号化的进程之前,搜索程序编译时保存的符号表,获取符号表的通用唯一识别码,并建立具有符号表与通用唯一识别码的对应关系的字典。
6.根据权利要求5所述的符号化程序运行日志的系统,其特征在于,所述系统还包括:
符号表保存模块,用于在所述搜索程序编译时保存的符号表之前,采用脚本获取并保存程序编译时用到的符号表。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410027679.3/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种开放式模块化智能手环的实现平台
- 下一篇:一种数据库同步方法和装置