一种实现对功能模块代码问题快速定位的方法及装置与流程

文档序号:24187783发布日期:2021-03-09 14:10阅读:101来源:国知局
一种实现对功能模块代码问题快速定位的方法及装置与流程

1.本发明属于软件问题定位技术领域,具体涉及一种实现对功能模块代码问题快速定位的方法及装置。


背景技术:

2.在产品的开发过程中,很多重要的代码功能模块在产品运行过程中极易出现问题。所以,对于这种重要的、易出错的并且独立的功能模块问题的快速定位,即如何开发一个很好的日志系统对问题进行根因定位显得极其重要。现有的日志记录方法是在容易出问题的关键点进行记录,但这种方式经过较长运行时间后,往往有效的日志信息会被覆盖掉,研发人员针对日志进行分析,不会得到有用信息,问题也就不会得到解决,而且这种方式记录的日志没有起到效果,可有可无。
3.此为现有技术的不足,因此,针对现有技术中的上述缺陷,提供一种实现对功能模块代码问题快速定位的方法及装置,是非常有必要的。


技术实现要素:

4.针对现有技术的上述现有基于日志定位软件问题的方式导致有效日志被覆盖,导致问题不会得到解决的缺陷,本发明提供一种实现对功能模块代码问题快速定位的方法及装置,以解决上述技术问题。
5.第一方面,本发明提供一种实现对功能模块代码问题快速定位的方法,包括如下步骤:
6.s1.对软件各功能模块代码执行过程采用覆盖方式进行日志记录,并根据日志记录以功能模块为单位生成日志校验码;
7.s2.实时监控软件各功能模块代码执行过程的日志校验码,当日志校验码异常时,将异常日志校验码对应日志记录进行远程备份,存储异常日志记录;
8.s3.根据异常日志记录对软件各功能模块的代码问题进行定位。通过覆盖方式进行日志记录,可对每个功能模块代码执行过程进行全方位详细记录,而不必担心存储问题,避免有用日志记录信息的缺失;通过日志校验码对异常日志记录进行识别备份,保证异常日志记录不会被覆盖掉。
9.进一步地,步骤s1具体步骤如下:
10.s11.对软件各功能模块代码进行分析,分别对各功能模块提取出典型参数;
11.s12.软件各功能模块代码按照设定顺序依次执行;
12.s13.按照各功能模块代码执行顺序采用覆盖方式进行日志记录,并将日志记录根据对应功能模块的典型参数,生成日志校验码。将各功能模块冗余出现问题的关键点参数设定为典型参数;各功能模块的日志记录的存储是有空间限制的,尤其是全方位详细的日志记录占用空间更大,通常情况下,日志记录是没有用的,所以采用覆盖方式进行记录,日志记录是否异常的判定通过日志校验码进行。
13.进一步地,步骤s13具体步骤如下:
14.s131.定位正在执行的软件功能模块代码;
15.s132.判断进行日志存储的磁盘是否已满;
16.若是,设置新的日志记录覆盖原有日志记录,进入步骤s133;
17.若否,进入步骤s133;
18.s133.对正在执行的软件功能模块代码进行日志记录,并根据典型参数为日志记录生成日志校验码。
19.进一步地,步骤s2具体步骤如下:
20.s21.实时监控正在执行的软件功能模块代码的日志校验码,判断日志校验码是否正常;
21.若是,进入步骤s23;
22.若否,进入步骤s22;
23.s22.判定当前日志记录为异常日志,对异常日志进行日志快照,并将日志快照同步到远端服务器的数据库;
24.s23.判断软件各功能模块是否执行完毕;
25.若是,进入步骤s3;
26.若否,执行下一个软件功能模块代码,返回步骤s131。对于通过日志校验码判定为异常的日志记录,需要追加保存到远端服务器的数据库,以便于后期进行功能模块问题定位。
27.进一步地,步骤s11中,根据需求对各功能模块提取出的典型参数,生成预设日志码;
28.步骤s21中,将日志校验码与预设日志码进行比较,判断日志校验码是否正常。而日志校验码是否异常是要与提前设好的预设日志码进行比较,预设日志码是根据典型参数正确的情形进行设置的,因此通过比较日志校验码与预设日志码可以判断出日志记录是否异常。
29.进一步地,步骤s3具体步骤如下:
30.s31.从远端服务器的数据库中提取出日志快照;
31.s32.定位日志快照对应的软件异常功能模块代码,分析异常功能模块代码的典型参数信息。对远端服务器存储的日志快照进行还原,从而定位出异常功能模块代码及其存在问题的关键参数点。
32.第二方面,本发明提供一种实现对功能模块代码问题快速定位的装置,包括:
33.覆盖日志记录及校验码生成模块,用于对软件各功能模块代码执行过程采用覆盖方式进行日志记录,并根据日志记录以功能模块为单位生成日志校验码;
34.校验码监控模块,用于实时监控软件各功能模块代码执行过程的日志校验码,当日志校验码异常时,将异常日志校验码对应日志记录进行远程备份,存储异常日志记录;
35.功能模块问题定位模块,用于根据异常日志记录对软件各功能模块的代码问题进行定位。
36.进一步地,覆盖日志记录及校验码生成模块包括:
37.典型参数提取单元,用于对软件各功能模块代码进行分析,分别对各功能模块提
取出典型参数;
38.代码执行单元,用于设置软件各功能模块代码按照设定顺序依次执行;
39.日志记录及校验码生成单元,用于按照各功能模块代码执行顺序采用覆盖方式进行日志记录,并将日志记录根据对应功能模块的典型参数,生成日志校验码。
40.进一步地,校验码监控模块包括:
41.日志校验码监控单元,用于实时监控正在执行的软件功能模块代码的日志校验码,判断日志校验码是否正常;
42.日志快照单元,用于日志校验码异常时,判定当前日志记录为异常日志,对异常日志进行日志快照,并将日志快照同步到远端服务器的数据库;
43.软件执行判断单元,用于判断软件各功能模块是否执行完毕;
44.软件功能模块代码继续执行单元,用于软各功能模块未执行完毕时,执行下一个软件功能模块代码,重复进行日志记录及日志校验码生成。
45.进一步地,功能模块问题定位模块包括:
46.日志快照提取单元,用于从远端服务器的数据库中提取出日志快照;
47.典型参数信息分析单元,用于定位日志快照对应的软件异常功能模块代码,分析异常功能模块代码的典型参数信息。
48.本发明的有益效果在于,
49.本发明提供的实现对功能模块代码问题快速定位的方法及装置,能够详细的记录一个功能模块代码的整个运行流程,对于后期的问题定位有很大帮助;对于详细日志,日志以覆盖的方式进行,节约了系统空间,而异常情况,做简单的日志快照功能,并将其异常日志的日志快照保存下来同步到远端服务器,从而避免了日志瀑布将其有用信息冲掉,同时在系统发生问题时,日志不会丢失。
50.此外,本发明设计原理可靠,结构简单,具有非常广泛的应用前景。
51.由此可见,本发明与现有技术相比,具有突出的实质性特点和显著的进步,其实施的有益效果也是显而易见的。
附图说明
52.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
53.图1是本发明的方法流程示意图一;
54.图2是本发明的方法流程示意图二;
55.图3是本发明的系统示意图;
56.图中,1-覆盖日志记录及校验码生成模块;1.1-典型参数提取单元;1.2-代码执行单元;1.3-日志记录及校验码生成单元;2-校验码监控模块;2.1-日志校验码监控单元;2.2-日志快照单元;2.3-软件执行判断单元;2.4-软件功能模块代码继续执行单元;3-功能模块问题定位模块;3.1-日志快照提取单元;3.2-典型参数信息分析单元。
具体实施方式
57.为了使本技术领域的人员更好地理解本发明中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
58.实施例1:
59.如图1所示,本发明提供一种实现对功能模块代码问题快速定位的方法,包括如下步骤:
60.s1.对软件各功能模块代码执行过程采用覆盖方式进行日志记录,并根据日志记录以功能模块为单位生成日志返校验码;
61.s2.实时监控软件各功能模块代码执行过程的日志校验码,当日志校验码异常时,将异常日志校验码对应日志记录进行远程备份,存储异常日志记录;
62.s3.根据异常日志记录对软件各功能模块的代码问题进行定位。
63.实施例2:
64.如图2所示,本发明提供一种实现对功能模块代码问题快速定位的方法,包括如下步骤:
65.s1.对软件各功能模块代码执行过程采用覆盖方式进行日志记录,并根据日志记录以功能模块为单位生成日志校验码;具体步骤如下:
66.s11.对软件各功能模块代码进行分析,分别对各功能模块提取出典型参数;
67.s12.软件各功能模块代码按照设定顺序依次执行;
68.s13.按照各功能模块代码执行顺序采用覆盖方式进行日志记录,并将日志记录根据对应功能模块的典型参数,生成日志校验码;具体步骤如下:
69.s131.定位正在执行的软件功能模块代码;
70.s132.判断进行日志存储的磁盘是否已满;
71.若是,设置新的日志记录覆盖原有日志记录,进入步骤s133;
72.若否,进入步骤s133;
73.s133.对正在执行的软件功能模块代码进行日志记录,并根据典型参数为日志记录生成日志校验码;
74.s2.实时监控软件各功能模块代码执行过程的日志校验码,当日志校验码异常时,将异常日志校验码对应日志记录进行远程备份,存储异常日志记录;具体步骤如下:
75.s21.实时监控正在执行的软件功能模块代码的日志校验码,判断日志校验码是否正常;
76.若是,进入步骤s23;
77.若否,进入步骤s22;
78.s22.判定当前日志记录为异常日志,对异常日志进行日志快照,并将日志快照同步到远端服务器的数据库;
79.s23.判断软件各功能模块是否执行完毕;
80.若是,进入步骤s3;
81.若否,执行下一个软件功能模块代码,返回步骤s131;
82.s3.根据异常日志记录对软件各功能模块的代码问题进行定位;具体步骤如下:
83.s31.从远端服务器的数据库中提取出日志快照;
84.s32.定位日志快照对应的软件异常功能模块代码,分析异常功能模块代码的典型参数信息。
85.在某些实施例中,步骤s11中,根据需求对各功能模块提取出的典型参数,生成预设日志码;
86.步骤s21中,将日志校验码与预设日志码进行比较,判断日志校验码是否正常。
87.实施例3:
88.如图3所示,本发明提供一种实现对功能模块代码问题快速定位的装置,包括:
89.覆盖日志记录及校验码生成模块1,用于对软件各功能模块代码执行过程采用覆盖方式进行日志记录,并根据日志记录以功能模块为单位生成日志校验码;覆盖日志记录及校验码生成模块1包括:
90.典型参数提取单元1.1,用于对软件各功能模块代码进行分析,分别对各功能模块提取出典型参数;
91.代码执行单元1.2,用于设置软件各功能模块代码按照设定顺序依次执行;
92.日志记录及校验码生成单元1.3,用于按照各功能模块代码执行顺序采用覆盖方式进行日志记录,并将日志记录根据对应功能模块的典型参数,生成日志校验码;
93.校验码监控模块2,用于实时监控软件各功能模块代码执行过程的日志校验码,当日志校验码异常时,将异常日志校验码对应日志记录进行远程备份,存储异常日志记录;校验码监控模块2包括:
94.日志校验码监控单元2.1,用于实时监控正在执行的软件功能模块代码的日志校验码,判断日志校验码是否正常;
95.日志快照单元2.2,用于日志校验码异常时,判定当前日志记录为异常日志,对异常日志进行日志快照,并将日志快照同步到远端服务器的数据库;
96.软件执行判断单元2.3,用于判断软件各功能模块是否执行完毕;
97.软件功能模块代码继续执行单元2.4,用于软各功能模块未执行完毕时,执行下一个软件功能模块代码,重复进行日志记录及日志校验码生成;
98.功能模块问题定位模块3,用于根据异常日志记录对软件各功能模块的代码问题进行定位;功能模块问题定位模块3包括:
99.日志快照提取单元3.1,用于从远端服务器的数据库中提取出日志快照;
100.典型参数信息分析单元3.2,用于定位日志快照对应的软件异常功能模块代码,分析异常功能模块代码的典型参数信息。
101.尽管通过参考附图并结合优选实施例的方式对本发明进行了详细描述,但本发明并不限于此。在不脱离本发明的精神和实质的前提下,本领域普通技术人员可以对本发明的实施例进行各种等效的修改或替换,而这些修改或替换都应在本发明的涵盖范围内/任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1