[发明专利]一种日志生成方法及装置在审

专利信息
申请号: 202210769922.3 申请日: 2022-06-30
公开(公告)号: CN115033223A 公开(公告)日: 2022-09-09
发明(设计)人: 李凯 申请(专利权)人: 联想(北京)有限公司
主分类号: G06F8/30 分类号: G06F8/30;G06F8/41;G06F11/36;G06F16/18
代理公司: 北京金信知识产权代理有限公司 11225 代理人: 喻嵘
地址: 100085 北京市海淀*** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 日志 生成 方法 装置
【说明书】:

本公开涉及一种日志生成方法及装置,该日志生成方法包括:确定程序的异常运行情况;根据所述异常运行情况,确定异常发生的代码位置;根据所述代码位置获取所述代码位置之前预设范围内的代码文件;对所述代码文件进行分析,提取所述代码文件中的关键信息;基于所述关键信息生成用于对所述异常进行分析的日志文件。

技术领域

本公开涉及计算机技术领域,具体涉及一种日志生成方法及装置。

背景技术

程序调试运行时,有时会出现运行错误,在特定代码行崩溃。此时,可以使用调试工具捕获崩溃点当前的状态。然而,导致程序崩溃的原因有可能是崩溃点前面的一些代码中的变量运行出错或者状态错误。因此,将“崩溃点前面一定范围(如前100行)中的特定变量状态”输出,有助于分析崩溃原因。

目前,输出“崩溃点前面一定范围中的特定变量状态”需要开发人员手动在程序源码崩溃代码前面一定范围人工编写代码以输出调试日志。这样程序再次运行崩溃后,可以打印输出调试日志。但是,手动编写代码添加调试日志费时费力,且编写的调试日志代码重复、机械、分散,不易维护。

发明内容

本公开实施例的目的在于提供一种日志生成方法及装置,以解决现有技术中需要手动编写调试日志费时费力,且编写的日志代码不易维护的技术问题。

一方面,本公开实施例提供了一种日志生成方法,包括:

确定程序的异常运行情况;

根据所述异常运行情况,确定异常发生的代码位置;

根据所述代码位置获取所述代码位置之前预设范围内的代码文件;

对所述代码文件进行分析,提取所述代码文件中的关键信息;

基于所述关键信息生成用于对所述异常进行分析的日志文件。

在一些实施例中,根据所述代码位置获取所述代码位置之前预设范围内的代码文件,包括:

对所述代码位置的程序代码进行分析,确定所述程序代码的代码结构;

根据所述代码结构,从所述代码位置之前的程序代码中查找与所述代码位置的程序代码关联的关联代码;

将包含所述关联代码的完整的程序执行函数确定为所述代码文件。

在一些实施例中,根据所述代码位置获取所述代码位置之前预设范围内的代码文件,包括:

获取所述代码位置之前预设数量代码行的代码文件。

在一些实施例中,所述方法还包括:

如果所述异常发生的代码位置为所述程序的起始位置,将所述程序的全部程序代码确定为所述代码文件。

在一些实施例中,基于所述关键信息生成用于对所述异常进行分析的日志文件,包括:

基于所述关键信息生成对应的日志代码;

将所述日志代码插入所述异常发生的代码位置,编译生成可执行程序;

在所述可执行程序的运行过程中,基于生成的所述日志代码,生成对应的日志文件并输出。

在一些实施例中,所述关键信息包括关键变量、所述关键变量对应的变量参数、关键函数、所述关键函数对应的函数参数、所述关键函数对应的返回值以及所述关键函数的执行顺序中的至少一种。

在一些实施例中,所述方法还包括:

以浮窗或图层形式在所述程序的显示界面输出显示所述日志文件,其中,所述日志文件显示于所述显示界面的顶部或所述异常发生的代码位置的一侧。

在一些实施例中,确定程序的异常运行情况之后,所述方法还包括:

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于联想(北京)有限公司,未经联想(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202210769922.3/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top