基于日志文件分析的代码检查方法、系统及开发平台与流程

文档序号:12464952阅读:207来源:国知局
基于日志文件分析的代码检查方法、系统及开发平台与流程

本发明涉及计算机软件开发技术领域,尤其涉及一种基于日志文件分析的代码检查方法、系统及开发平台。



背景技术:

现有软件开发平台的代码检查,通常是通过软件开发者根据实际开发经验手动检查容易出错的代码点进行检查,代码检查操作繁琐耗时、工作效率较低,且经常容易出现漏检的情况,导致现有软件代码检查的便捷性、准确性、可靠性和工作效率较低,影响软件开发平台的用户体验。



技术实现要素:

鉴于此,本发明提供一种基于日志文件分析的代码检查方法、系统及开发平台,解决现有软件代码检查的便捷性、准确性、可靠性和工作效率较低的技术问题。

根据本发明的一个实施例,提供一种基于日志文件分析的代码检查方法,包括:获取日志仓库中的所有异常日志文件;对获取的日志仓库中的所有异常日志文件进行分析,以获取异常代码点;统计分析获取的异常代码点,以获取易错代码点;以及IDE插件根据获取的易错代码点进行代码检查。

优选的,所述基于日志文件分析的代码检查方法,还包括:当IDE插件根据获取的易错代码点进行代码检查发现错误代码时,弹窗提示发现的错误代码。

优选的,所述基于日志文件分析的代码检查方法,还包括:当IDE插件根据获取的易错代码点进行代码检查发现错误代码时,提示当前错误代码对应的易错代码点预设的代码修改建议信息。

优选的,所述对获取的日志仓库中的所有异常日志文件进行分析,以获取异常代码点,包括:分析所有异常日志文件中栈顶的前一层或以上堆栈。

优选的,所述对获取的日志仓库中的所有异常日志文件进行分析,以获取异常代码点,还包括:分析所有异常日志文件中的Exception;和/或分析所有异常日志文件中的预设特定日志条目。

根据本发明的另一个实施例,提供一种基于日志文件分析的代码检查系统,包括:异常日志获取模块,用于获取日志仓库中的所有异常日志文件;异常代码点获取模块,用于对所述异常日志获取模块获取的日志仓库中的所有异常日志文件进行堆栈分析以获取异常代码点;易错代码点获取模块,用于统计分析所述异常代码点获取模块获取的异常代码点以获取易错代码点;以及代码检查模块,用于控制IDE插件根据所述易错代码点获取模块获取的易错代码点进行代码检查。

优选的,所述基于日志文件分析的代码检查系统还包括错误提示模块,用于当所述代码检查模块控制IDE插件根据所述异常代码点获取模块获取的易错代码点进行代码检查发现错误代码时,弹窗提示所述代码检查模块发现的错误代码。

优选的,所述基于日志文件分析的代码检查系统还包括修改提示模块,用于当所述代码检查模块控制IDE插件根据所述异常代码点获取模块获取的易错代码点进行代码检查发现错误代码时,提示当前错误代码对应的易错代码点预设的代码修改建议信息。

优选的,所述异常代码点获取模块用于分析所有异常日志文件中栈顶的前一层或以上堆栈。

根据本发明的又一个实施例,提供一种开发平台,所述开发平台包括如权上述的基于日志文件分析的代码检查系统。

本发明提供的基于日志文件分析的代码检查方法、系统及开发平台,对日志仓库中的所有异常日志文件进行分析以获取异常代码点,统计分析获取的异常代码点以获取易错代码点,IDE插件根据获取的易错代码点进行代码检查,自动分析日志文件的代码运行信息获取易错代码点并根据易错代码点进行针对性地代码检查,与现有通过软件开发者根据软件开发经验手动逐条检查和测试可能出错的代码方式相比,提高了软件代码检查的准确性、可靠性和工作效率,提升了软件开发平台的用户体验。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明一个实施例中基于日志文件分析的代码检查方法的流程示意图。

图2为本发明一个实施例中基于日志文件分析的代码检查方法中异常日志文件分析的示意图。

图3为本发明另一个实施例中基于日志文件分析的代码检查方法的流程示意图。

图4为本发明一个实施例中基于日志文件分析的代码检查系统的结构示意图。

图5为本发明另一个实施例中基于日志文件分析的代码检查系统的结构示意图。

图6为本发明又一个实施例中开发平台的结构示意图。

具体实施方式

下面结合附图和具体实施方式对本发明的技术方案作进一步更详细的描述。显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都应属于本发明保护的范围。

在本发明的描述中,需要理解的是,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连。对于本领域的普通技术人员而言,可以结合具体情况理解上述术语在本发明中的具体含义。此外,在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。

流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。

图1为本发明一个实施例中基于日志文件分析的代码检查方法的流程示意图。如图所示,所述基于日志文件分析的代码检查方法,包括:

步骤S101:获取日志仓库中的所有异常日志文件。

在软件项目开发过程中,为便于记录和追踪代码运行状态,会产生海量的日志文件。为了便于日志文件的存储和管理,通常将海量的日志文件存储在日志仓库中集中管理。在软件代码编写过程中,为了便于后续对所有异常日志文件进行实时的深入分析和价值挖掘,可在分布式处理系统提交任务请求的方式实时获取日志仓库中的所有异常日志文件,日志仓库可根据所述任务请求对存储的所有日志文件进行清洗操作并反馈,以获取到日志仓库中的所有异常日志文件。

步骤S102:对获取的日志仓库中的所有异常日志文件进行分析,以获取异常代码点。

在获取到日志仓库中的所有异常日志文件后,对获取的日志仓库中的所有异常日志文件进行分析,以获取异常代码点。参见图2,所述对获取的日志仓库中的所有异常日志文件进行分析,包括:

步骤S201:分析所有异常日志文件中栈顶的前一层或以上堆栈。

步骤S202:分析所有异常日志文件中的Exception。

步骤S203:分析所有异常日志文件中的预设特定日志条目。

在本实施例中,逐一分析所有异常日志文件中栈顶的前一层或以上堆栈、Exception和预设特定日志条目,针对异常日志文件中最容易出错的代码点进行针对性地分析,以获取当前软件代码中出现的和将来可能出现的异常代码点,通过异常日志实时分析异常代码点,无需软件开发者手动逐条检查和测试可能出错的代码,提高了软件代码检查的准确性、可靠性和工作效率,提升了软件开发的用户体验。

优选的,分析所有异常日志文件中栈顶的前三层堆栈为最佳的方案。

步骤S103:统计分析获取的异常代码点,以获取易错代码点。

在获取到异常代码点后,可根据异常代码点的类型统计分析获取的异常代码点,并将统计分析中出现频率较高的几个异常代码点作为易错代码点,统计分析出当前软件代码中最容易出错的易错代码点,以便后续对易错代码点进行针对性地代码检查,无需软件开发者根据软件开发经验手动逐条检查和测试可能出错的代码,提高了软件代码检查的准确性、可靠性和工作效率,提升了软件开发平台的用户体验。

步骤S104:IDE插件根据获取的易错代码点进行代码检查。

在获取到易错代码点后,IDE插件自动根据获取的易错代码点逐项进行代码检查,将当前代码开发过程中最容易出错的代码点进行针对性地重点检查,无需软件开发者根据软件开发经验手动逐条检查和测试可能出错的代码,可自动、方便快捷地进行代码检查,提高了软件代码检查的准确性、可靠性和工作效率,提升了软件开发的用户体验。

在本实施例的基于日志文件分析的代码检查方法中,对日志仓库中的所有异常日志文件进行分析以获取异常代码点,统计分析获取的异常代码点以获取易错代码点,IDE插件根据获取的易错代码点进行代码检查,自动分析日志文件的代码运行信息获取易错代码点并根据易错代码点进行针对性地代码检查,与现有通过软件开发者根据软件开发经验手动逐条检查和测试可能出错的代码方式相比,提高了软件代码检查的准确性、可靠性和工作效率,提升了软件开发平台的用户体验。

图3为本发明另一个实施例中基于日志文件分析的代码检查方法的流程示意图。如图所示,所述基于日志文件分析的代码检查方法,包括:

步骤S301:获取日志仓库中的所有异常日志文件。

步骤S302:对获取的日志仓库中的所有异常日志文件进行分析,以获取异常代码点。

步骤S303:统计分析获取的异常代码点,以获取易错代码点。

步骤S304:IDE插件根据获取的易错代码点进行代码检查。

步骤S305:当IDE插件根据获取的易错代码点进行代码检查发现错误代码时,弹窗提示发现的错误代码。

步骤S306:当IDE插件根据获取的易错代码点进行代码检查发现错误代码时,提示当前错误代码对应的易错代码点预设的代码修改建议信息。

在本实施例中,在上述实施例的基础上,当IDE插件根据获取的易错代码点进行代码检查发现错误代码时,弹窗提示发现的错误代码并提示当前错误代码对应的易错代码点预设的代码修改建议信息,可动态交互性地提醒软件开发者错误代码以及对应的修改建议,便于软件开发者根据实际代码情况和修改建议快速修改代码,提高了软件代码检查和修改的准确性、交互性和工作效率,提升了软件开发的用户体验。

图4为本发明一个实施例中基于日志文件分析的代码检查系统的结构示意图。如图所示,在上述方法实施例的基础上,所述基于日志文件分析的代码检查系统100,包括异常日志获取模块10、异常代码点获取模块20、易错代码点获取模块30和代码检查模块40。

在软件项目开发过程中,为便于记录和追踪代码运行状态,会产生海量的日志文件。为了便于日志文件的存储和管理,通常将海量的日志文件存储在日志仓库中集中管理。在软件代码编写过程中,为了便于后续对所有异常日志文件进行实时的深入分析和价值挖掘,所述异常日志获取模块10可在分布式处理系统提交任务请求的方式实时获取日志仓库中的所有异常日志文件,日志仓库可根据所述任务请求对存储的所有日志文件进行清洗操作并反馈所述异常日志获取模块10,以获取到日志仓库中的所有异常日志文件。

在所述异常日志获取模块10获取到日志仓库中的所有异常日志文件后,所述异常代码点获取模块20对所述异常日志获取模块10获取的日志仓库中的所有异常日志文件进行分析,以获取异常代码点。在本实施例中,所述异常代码点获取模块20逐一分析所有异常日志文件中栈顶的前一层或以上堆栈、Exception和预设特定日志条目,针对异常日志文件中最容易出错的代码点进行针对性地分析,以获取当前软件代码中出现的和将来可能出现的异常代码点,通过异常日志实时分析异常代码点,无需软件开发者手动逐条检查和测试可能出错的代码,提高了软件代码检查的准确性、可靠性和工作效率,提升了软件开发的用户体验。

优选的,分析所有异常日志文件中栈顶的前三层堆栈为最佳的方案。

在所述异常代码点获取模块20获取到异常代码点后,所述易错代码点获取模块30可根据异常代码点的类型统计分析获取的异常代码点,并将统计分析中出现频率较高的几个异常代码点作为易错代码点,统计分析出当前软件代码中最容易出错的易错代码点,以便后续对易错代码点进行针对性地代码检查,无需软件开发者根据软件开发经验手动逐条检查和测试可能出错的代码,提高了软件代码检查的准确性、可靠性和工作效率,提升了软件开发的用户体验。

在所述易错代码点获取模块30获取到易错代码点后,所述代码检查模块40控制IDE插件自动根据获取的易错代码点逐项进行代码检查,将当前代码开发过程中最容易出错的代码点进行针对性地重点检查,无需软件开发者根据软件开发经验手动逐条检查和测试可能出错的代码,可自动、方便快捷地进行代码检查,提高了软件代码检查的准确性、可靠性和工作效率,提升了软件开发的用户体验。

在本实施例的基于日志文件分析的代码检查系统100中,异常日志获取模块10获取日志仓库中的所有异常日志文件,异常代码点获取模块20对异常日志获取模块10获取的日志仓库中的所有异常日志文件进行分析以获取异常代码点,易错代码点获取模块30统计分析异常代码点获取模块20获取的异常代码点以获取易错代码点,代码检查模块40控制IDE插件根据易错代码点获取模块30获取的易错代码点进行代码检查,自动分析日志文件的代码运行信息获取易错代码点并根据易错代码点进行针对性地代码检查,与现有通过软件开发者根据软件开发经验手动逐条检查和测试可能出错的代码方式相比,提高了软件代码检查的准确性、可靠性和工作效率,提升了软件开发平台的用户体验。

图5为本发明另一个实施例中基于日志文件分析的代码检查系统的结构示意图。如图所示,所述基于日志文件分析的代码检查系统100,包括异常日志获取模块10、异常代码点获取模块20、易错代码点获取模块30、代码检查模块40、错误提示模块50和修改提示模块60。

在本实施例中,在上述实施例的基础上,当所述代码检查模块40控制IDE插件根据所述易错代码点获取模块30获取的易错代码点进行代码检查发现错误代码时,所述错误提示模块50弹窗提示发现的错误代码,所述修改提示模块60提示当前错误代码对应的易错代码点预设的代码修改建议信息,可动态交互性地提醒软件开发者错误代码以及对应的修改建议,便于软件开发者根据实际代码情况和修改建议快速修改代码,提高了软件代码检查和修改的准确性、交互性和工作效率,提升了软件开发平台的用户体验。

图6为本发明又一个实施例中开发平台的结构示意图。如图所示,所述开发平台200包括上述实施例中所述基于日志文件分析的代码检查系统100,通过所述基于日志文件分析的代码检查系统100自动分析日志文件的代码运行信息获取易错代码点并根据易错代码点进行针对性地代码检查,与现有软件开发平台通过软件开发者根据软件开发经验手动逐条检查和测试可能出错的代码方式相比,提高了所述开发平台200的软件代码检查的准确性、可靠性和工作效率,提升了开发平台200的用户体验。

应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。

在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。

尽管已经示出和描述了本发明的实施例,本领域的普通技术人员可以理解:在不脱离本发明的原理和宗旨的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由权利要求及其等同物限定。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1