[发明专利]日志模板生成方法及设备在审
| 申请号: | 201410212252.0 | 申请日: | 2014-05-19 |
| 公开(公告)号: | CN105095304A | 公开(公告)日: | 2015-11-25 |
| 发明(设计)人: | 张懋生;赵颖;朱冠宇;王元钢;赵俊峰 | 申请(专利权)人: | 华为技术有限公司;清华大学 |
| 主分类号: | G06F17/30 | 分类号: | G06F17/30 |
| 代理公司: | 北京同立钧成知识产权代理有限公司 11205 | 代理人: | 刘芳 |
| 地址: | 518129 广东*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 日志 模板 生成 方法 设备 | ||
1.一种日志模板生成方法,其特征在于,所述方法包括:
对系统二进制代码反汇编获得第一代码;
从所述第一代码中定位日志生成核心函数、字符串常量及字符串常量地址;
根据所述日志生成核心函数对所述第一代码进行切片,获得第二代码;
根据所述第二代码构建虚拟日志生成相关函数的调用堆栈;
解析所述调用堆栈的末端函数的参数地址是否与所述字符串常量地址匹配;
若匹配,则解析出输出字符串并根据设定的格式生成日志模板。
2.根据权利要求1所述的方法,其特征在于,从所述第一代码中定位字符串常量及字符串常量地址,包括:
如果系统二进制文件中存在符号表或单独的字符串数据段,则直接从所述第一代码的只读数据段中解析,定位所述字符串常量及所述字符串常量地址,并建立字符串常量首地址表;
如果系统二进制文件中不存在符号表或单独的字符串数据段,则根据系统生成的日志文本,建立日志语料库,从所述日志语料库的只读数据段通过解析‘/0’之间的数据,定位字符串常量,并与所述语料库相匹配,建立所述字符串常量首地址表。
3.根据权利要求1所述的方法,其特征在于,所述从所述第一代码中定位日志生成核心函数,包括:
如果系统二进制文件中存在符号表,则根据函数名和字符串常量参数引用特征从所述第一代码中定位所述日志生成核心函数;
如果所述系统二进制文件中不存在符号表,则根据所述日志生成核心函数的模式特征进行解析,定位所述日志生成核心函数。
4.根据权利要求3所述的方法,其特征在于,所述根据所述日志生成核心函数的模式特征进行解析,定位所述日志生成核心函数,包括:
判断所述第一代码中的函数是否含有字符串常量参数,若含有,则记录所述函数的引用地址;
判断所述函数的调用次数是否超过预设阈值,若超过,则根据依赖关系遍历所述函数的引用函数链;
判断所述函数的引用函数链末端是否为系统内核写文件函数或动态链接库函数,若是,则将所述函数定义为所述日志生成核心函数。
5.根据权利要求1-4任一所述的方法,其特征在于,所述根据所述日志生成核心函数对所述第一代码进行切片,获得第二代码,包括:
将所述第一代码中最顶端的所述日志生成核心函数定位为起始入口;
将所述日志生成核心函数所调用的写文件函数或动态链接库函数定位为终点出口;
从所述第一代码中提取所述起始入口到所述终点出口之间的代码,并将提取的所述代码作为第二代码。
6.根据权利要求5所述的方法,其特征在于,所述将所述日志生成核心函数所调用的写文件函数定位为终点出口,包括:
在所述第一代码中定位软中断指令,在所述软中断指令处查找对应寄存器中的赋值;
将查到的所述赋值与系统调用号比对,得到函数名称,标记所述软中断指令的位置为终点出口;
或者,
将所述日志生成核心函数所调用的动态链接库函数定位为终点出口,包括:
解析所述第一代码的文件头结构,确定动态符号表段;
通过解析所述动态符号表段,导入函数名;
确定导入所述函数在所述第一代码中的位置,标记所述函数在所述第一代码中的位置为终点出口。
7.根据权利要求1-6任一所述的方法,其特征在于,所述根据所述第二代码构建虚拟日志生成相关函数的调用堆栈,包括:
根据所述第二代码中程序的调用关系,建立局部控制流程图,将条件跳转指令解析为无条件跳转指令,构建所述虚拟日志生成相关函数的调用堆栈。
8.根据权利要求2所述的方法,其特征在于,解析所述调用堆栈的末端函数的参数地址是否与所述字符串常量地址匹配,包括:
将所述调用堆栈的末端函数的参数地址与所述字符串常量首地址表进行匹配。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司;清华大学,未经华为技术有限公司;清华大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410212252.0/1.html,转载请声明来源钻瓜专利网。
- 上一篇:搜索方法和设备
- 下一篇:一种页面推荐方法和装置





