CN112612701B - 一种程序故障定位方法、装置、设备及可读存储介质 - Google Patents

一种程序故障定位方法、装置、设备及可读存储介质 Download PDF

Info

Publication number
CN112612701B
CN112612701B CN202011552900.9A CN202011552900A CN112612701B CN 112612701 B CN112612701 B CN 112612701B CN 202011552900 A CN202011552900 A CN 202011552900A CN 112612701 B CN112612701 B CN 112612701B
Authority
CN
China
Prior art keywords
target
program
printing
file
preset
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202011552900.9A
Other languages
English (en)
Other versions
CN112612701A (zh
Inventor
秦朝阳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Inspur Data Technology Co Ltd
Original Assignee
Beijing Inspur Data Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Inspur Data Technology Co Ltd filed Critical Beijing Inspur Data Technology Co Ltd
Priority to CN202011552900.9A priority Critical patent/CN112612701B/zh
Publication of CN112612701A publication Critical patent/CN112612701A/zh
Application granted granted Critical
Publication of CN112612701B publication Critical patent/CN112612701B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/366Software debugging using diagnostics
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种程序故障定位方法,该方法包括以下步骤:对接收到的程序故障定位请求进行解析,得到待故障定位的目标程序文件;获取目标程序文件对应的目标运行日志;按照目标程序文件中的预置打印语句对目标运行日志进行筛选操作,得到目标打印内容;根据目标打印内容进行程序故障定位。应用本发明所提供的程序故障定位方法,较大地提升了程序故障定位效率,提高了故障定位准确性。本发明还公开了一种程序故障定位装置、设备及存储介质,具有相应技术效果。

Description

一种程序故障定位方法、装置、设备及可读存储介质
技术领域
本发明涉及计算机应用技术领域,特别是涉及一种程序故障定位方法、装置、设备及计算机可读存储介质。
背景技术
在信息时代,每时每刻都有不计其数的应用程序在运行,为用户提供各式各样的服务。程序开发及运行过程中开发者与运维人员经常面临着不可预期的问题与程序故障,因此衍生出多种排除计算机程序或系统中故障(Debug)的方法与手段,排除计算机程序或系统中故障最重要的前提条件是进行程序故障定位。
现有的程序故障定位方式多数依赖于集成开发环境(Integrated DevelopmentEnvironment,IDE)进行调试,但是一部分程序受软硬件依赖或运行时环境限制无法在集成开发环境中进行调试运行,另外现代应用程序往往庞大且复杂,代码量数大,期间调用关系复杂,开发者难以理清其中脉路,导致程序故障定位效率低,故障定位准确性低。
综上所述,如何有效地解决现有的程序故障定位方式程序故障定位效率低,故障定位准确性低等问题,是目前本领域技术人员急需解决的问题。
发明内容
本发明的目的是提供一种程序故障定位方法,该方法较大地提升了程序故障定位效率,提高了故障定位准确性;本发明的另一目的是提供一种程序故障定位装置、设备及计算机可读存储介质。
为解决上述技术问题,本发明提供如下技术方案:
一种程序故障定位方法,包括:
对接收到的程序故障定位请求进行解析,得到待故障定位的目标程序文件;
获取所述目标程序文件对应的目标运行日志;
按照所述目标程序文件中的预置打印语句对所述目标运行日志进行筛选操作,得到目标打印内容;
根据所述目标打印内容进行程序故障定位。
在本发明的一种具体实施方式中,根据所述目标打印内容进行程序故障定位,包括:
对所述目标打印内容按照预设格式转换规则进行格式转换,得到目标格式数据;
根据所述目标格式数据进行图像绘制操作,得到目标图像;
根据所述目标图像进行程序故障定位。
在本发明的一种具体实施方式中,对所述目标打印内容按照预设格式转换规则进行格式转换,包括:
对所述目标打印内容按照进行json数据格式转换。
在本发明的一种具体实施方式中,根据所述目标格式数据进行图像绘制操作,包括:
根据所述目标格式数据进行时序图绘制操作。
在本发明的一种具体实施方式中,根据所述目标格式数据进行图像绘制操作,包括:
根据所述目标格式数据进行散点图绘制操作。
在本发明的一种具体实施方式中,按照所述目标程序文件中的预置打印语句对所述目标运行日志进行筛选操作,包括:
利用grep抓取命令按照所述预置打印语句对所述目标运行日志进行关键词过滤操作。
在本发明的一种具体实施方式中,所述目标程序文件添加所述预置打印语句的过程包括:
获取所述目标程序文件的目标后缀名;
根据所述目标后缀名确定所述目标程序文件所属的目标文件类型;
获取所述目标文件类型对应的目标代码结构和目标语法规则;
根据所述目标代码结构从所述目标程序文件中选取各打印语句注入位置,并根据所述目标语法规则生成所述预置打印语句;
将所述预置打印语句添加至各所述打印语句注入位置。
一种程序故障定位装置,包括:
文件获得模块,用于对接收到的程序故障定位请求进行解析,得到待故障定位的目标程序文件;
日志获取模块,用于获取所述目标程序文件对应的目标运行日志;
打印内容获得模块,用于按照所述目标程序文件中的预置打印语句对所述目标运行日志进行打印操作,得到目标打印内容;
故障定位模块,用于根据所述目标打印内容进行程序故障定位。
一种程序故障定位设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如前所述程序故障定位方法的步骤。
一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如前所述程序故障定位方法的步骤。
本发明所提供的程序故障定位方法,对接收到的程序故障定位请求进行解析,得到待故障定位的目标程序文件;获取目标程序文件对应的目标运行日志;按照目标程序文件中的预置打印语句对目标运行日志进行筛选操作,得到目标打印内容;根据目标打印内容进行程序故障定位。
由上述技术方案可知,通过在目标程序文件中预先设置打印语句,当需要对目标程序文件进行故障定位时,按照预置打印语句对目标程序文件对应的目标运行日志自动进行筛选,根据目标打印内容进行程序间调用关系分析,实现程序故障定位。较大地提升了程序故障定位效率,避免了对需打印内容的遗漏,提高了故障定位准确性。
相应的,本发明实施例还提供了与上述程序故障定位方法相对应的程序故障定位装置、设备和计算机可读存储介质,具有上述技术效果,在此不再赘述。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中程序故障定位方法的一种实施流程图;
图2为本发明实施例中程序故障定位方法的另一种实施流程图;
图3为本发明实施例中程序故障定位方法的另一种实施流程图;
图4为本发明实施例中一种程序故障定位装置的结构框图;
图5为本发明实施例中一种程序故障定位设备的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一:
参见图1,图1为本发明实施例中程序故障定位方法的一种实施流程图,该方法可以包括以下步骤:
S101:对接收到的程序故障定位请求进行解析,得到待故障定位的目标程序文件。
当需要进行程序故障定位时,向程序故障定位中心发送程序故障定位请求,程序故障定位请求中包含待故障定位的目标程序文件。程序故障定位中心接收程序故障定位请求,并对接收到的程序故障定位请求进行解析,得到待故障定位的目标程序文件。程序故障定位请求对应的目标程序文件可以为一个也可以为多个。
S102:获取目标程序文件对应的目标运行日志。
在程序开发及运行的过程中会生成相应的运行日志,预先对各程序文件对应的运行日志进行存储。在解析得到待故障定位的目标程序文件之后,获取目标程序文件对应的目标运行日志。
S103:按照目标程序文件中的预置打印语句对目标运行日志进行筛选操作,得到目标打印内容。
预先在目标程序文件中添加有预置打印语句,在获取到目标程序文件对应的目标运行日志之后,按照目标程序文件中的预置打印语句对目标运行日志进行筛选操作,得到目标打印内容。如可以通过类when-who-what正则表达式从目标运行日志获取目标打印内容,其中当前时间信息开头为“when”,使用当前识别的编程语言获取当前的时间;当前类别的信息为“who”,表示当前在哪一个类中,一般在同一个类中保持不变;当前操作信息开头为“what”,表示当前进行的行为。
S104:根据目标打印内容进行程序故障定位。
在通过按照目标程序文件中的预置打印语句对目标运行日志进行打印得到目标打印内容之后,根据目标打印内容进行程序故障定位。根据目标打印内容进行程序间调用关系分析,实现程序故障定位。较大地提升了程序故障定位效率,避免了对需打印内容的遗漏,提高了故障定位准确性。
本发明所提供的程序故障定位方法,通过在目标程序文件中预先设置打印语句,当需要对目标程序文件进行故障定位时,按照预置打印语句对目标程序文件对应的目标运行日志自动进行筛选,根据目标打印内容进行程序间调用关系分析,实现程序故障定位。较大地提升了程序故障定位效率,避免了对需打印内容的遗漏,提高了故障定位准确性。
需要说明的是,基于上述实施例一,本发明实施例还提供了相应的改进方案。在后续实施例中涉及与上述实施例一中相同步骤或相应步骤之间可相互参考,相应的有益效果也可相互参照,在下文的改进实施例中不再一一赘述。
实施例二:
参见图2,图2为本发明实施例中程序故障定位方法的另一种实施流程图,该方法可以包括以下步骤:
S201:获取目标程序文件的目标后缀名。
在对目标程序文件添加打印语句时,获取目标程序文件的目标后缀名。后缀名包括“.java”、“.scala”、“.cpp”等。
S202:根据目标后缀名确定目标程序文件所属的目标文件类型。
根据程序文件的后缀名可以识别程序文件对应的文件类型。在获取到目标程序文件的目标后缀名之后,根据目标后缀名确定目标程序文件所属的目标文件类型。如“.java”代表源码使用的是Java编程语言,“.scala”代表源码使用的是Scala编程语言,“.cpp”代表源码使用的是C++编程语言等。
S203:获取目标文件类型对应的目标代码结构和目标语法规则。
在确定目标程序文件所属的目标文件类型之后,获取目标文件类型对应的目标代码结构和目标语法规则。如根据识别的编程语言选择对应的解析器,解析器中根据该编程语言的特征语法识别源码中的类、方法、变量等特定代码结构,语法规则的主要信息包括当前时间、当前类别,当前操作。
S204:根据目标代码结构从目标程序文件中选取各打印语句注入位置,并根据目标语法规则生成预置打印语句。
在获取到目标文件类型对应的目标代码结构和目标语法规则之后,根据目标代码结构从目标程序文件中选取各打印语句注入位置,并根据目标语法规则生成预置打印语句。如在根据该编程语言的特征语法识别源码中的类、方法、变量等特定代码结构之后,在其下一行插入空行并将其行号标记出来,注入器在标记的行号位置,根据上下文内容使用编程语言对应的语法在在空行中填充一条打印语句。
以一段简单的Java代码为例说明,程序文件原始状态如下:
插入空行后的文件状态如下:
其中,[空行-行号x]字样仅为说明之用,实际上不写此类语句。以上插入了3行空行,空行行号分别为2、5、14。
S205:将预置打印语句添加至各打印语句注入位置。
在根据目标代码结构从目标程序文件中选取各打印语句注入位置,并根据目标语法规则生成预置打印语句之后,将预置打印语句添加至各打印语句注入位置。
承接上述举例,在行号分别为2、5、14的空行中注入Java的打印语句如下:
通过自动化的方法向源码中添加逐条的、规范的打印语句,降低了人工工作量,减少了点位疏漏。
S206:对接收到的程序故障定位请求进行解析,得到待故障定位的目标程序文件。
S207:获取目标程序文件对应的目标运行日志。
S208:利用grep抓取命令按照预置打印语句对目标运行日志进行关键词过滤操作,得到目标打印内容。
在获取到目标程序文件对应的目标运行日志之后,利用grep抓取命令按照预置打印语句对目标运行日志进行关键词过滤操作,得到目标打印内容。其中当前时间信息开头为“when”,使用当前识别的编程语言获取当前的时间;当前类别的信息为“who”,表示当前在哪一个类中,一般在同一个类中保持不变,如步骤S205中示例均为“TestMax”;当前操作信息开头为“what”,表示当前进行的行为,一般第一个行为是首次进入类,其他行为是使用某个方法。处理阶段可以根据数据情况将时间精简(所有时间均为同一日期的可以省略日期),如将2020-11-11 12:01:01省去日期处理为120101;将同一个类中的方法按出现顺序编号,例如依次出现了代码A类中的方法a,方法b,方法c,则表示为A-1,A-2,A-3,在坐标轴上以1、2、3即可表示。
grep抓取命令是Linux中很常用的命令,用于查找文件中符合条件的字符串,如果查到,会把文件的那一列显示出来。支持通配符,支持正则表达式,功能强大。
S209:对目标打印内容按照进行json数据格式转换,得到目标格式数据。
在打印得到目标打印内容之后,对目标打印内容按照进行json数据格式转换,得到易读的json格式的目标格式数据。
S210:根据目标格式数据进行时序图绘制操作,得到目标图像。
在对目标打印内容按照进行json数据格式转换,得到目标格式数据之后,根据目标格式数据进行时序图绘制操作,得到目标图像。
在进行时序图绘制时,可以将时间数据进行平滑处理,以平滑时间为横坐标轴,以方法顺序编号为纵坐标轴,用不同颜色或形状的图例表示不同类别的数据进行绘图,展示时间序列变化。时间平滑处理是指将时分秒数据转化为连续的自然数。例如两个数据有,12点整原写法为120000,12点1分1秒为120101,不做处理直接绘图时二者间隔为101单位,这时图形比例失真。平滑处理将120000,120101分别转化为0和61进行操作,以此类推。
S211:根据目标图像进行程序故障定位。
在进行时序图绘制操作,得到目标图像之后,根据目标图像进行程序故障定位。通过时序图可视化手段展示程序运行期间的调用关系,有助于理解程序运行逻辑,并更快定位问题所在,减少排除计算机程序或系统中故障的耗时。
实施例三:
参见图3,图3为本发明实施例中程序故障定位方法的另一种实施流程图,该方法可以包括以下步骤:
S301:获取目标程序文件的目标后缀名。
S302:根据目标后缀名确定目标程序文件所属的目标文件类型。
S303:获取目标文件类型对应的目标代码结构和目标语法规则。
S304:根据目标代码结构从目标程序文件中选取各打印语句注入位置,并根据目标语法规则生成预置打印语句。
S305:将预置打印语句添加至各打印语句注入位置。
S306:对接收到的程序故障定位请求进行解析,得到待故障定位的目标程序文件。
S307:获取目标程序文件对应的目标运行日志。
S308:利用grep抓取命令按照预置打印语句对目标运行日志进行关键词过滤操作,得到目标打印内容。
S309:对目标打印内容按照进行json数据格式转换,得到目标格式数据。
S310:根据目标格式数据进行散点图绘制操作,得到目标图像。
在对目标打印内容按照进行json数据格式转换,得到目标格式数据之后,根据目标格式数据进行散点图绘制操作,得到目标图像。
散点图可以以不同类别为横坐标,以时间为纵坐标,将方法作为点标签进行绘图,按顺序连接散点可观察不同类方法之间的调用关系。
S311:根据目标图像进行程序故障定位。
相应于上面的方法实施例,本发明实施例还提供了一种程序故障定位装置,下文描述的程序故障定位装置与上文描述的程序故障定位方法可相互对应参照。
参见图4,图4为本发明实施例中一种程序故障定位装置的结构框图,该装置可以包括:
文件获得模块41,用于对接收到的程序故障定位请求进行解析,得到待故障定位的目标程序文件;
日志获取模块42,用于获取目标程序文件对应的目标运行日志;
打印内容获得模块43,用于按照目标程序文件中的预置打印语句对目标运行日志进行筛选操作,得到目标打印内容;
故障定位模块44,用于根据目标打印内容进行程序故障定位。
本发明所提供的程序故障定位装置,通过在目标程序文件中预先设置打印语句,当需要对目标程序文件进行故障定位时,按照预置打印语句对目标程序文件对应的目标运行日志自动进行筛选,根据目标打印内容进行程序间调用关系分析,实现程序故障定位。较大地提升了程序故障定位效率,避免了对需打印内容的遗漏,提高了故障定位准确性。
在本发明的一种具体实施方式中,故障定位模块44包括:
数据格式转换子模块,用于对目标打印内容按照预设格式转换规则进行格式转换,得到目标格式数据;
图像绘制子模块,用于根据目标格式数据进行图像绘制操作,得到目标图像;
故障定位子模块,用于根据目标图像进行程序故障定位。
在本发明的一种具体实施方式中,数据格式转换子模块具体为对目标打印内容按照进行json数据格式转换的模块。
在本发明的一种具体实施方式中,图像绘制子模块具体为根据目标格式数据进行时序图绘制操作的模块。
在本发明的一种具体实施方式中,图像绘制子模块具体为根据目标格式数据进行散点图绘制操作的模块。
在本发明的一种具体实施方式中,打印内容获得模块43具体为利用grep抓取命令按照预置打印语句对目标运行日志进行关键词过滤操作的模块。
在本发明的一种具体实施方式中,该装置包括打印语句添加模块,打印语句添加模块包括:
文件后缀名获得子模块,用于获取目标程序文件的目标后缀名;
文件类型确定子模块,用于根据目标后缀名确定目标程序文件所属的目标文件类型;
结构及规则获取子模块,用于获取目标文件类型对应的目标代码结构和目标语法规则;
位置选取及语句生成子模块,用于根据目标代码结构从目标程序文件中选取各打印语句注入位置,并根据目标语法规则生成预置打印语句;
语句添加子模块,用于将预置打印语句添加至各打印语句注入位置。
相应于上面的方法实施例,参见图5,图5为本发明所提供的程序故障定位设备的示意图,该设备可以包括:
存储器51,用于存储计算机程序;
处理器52,用于执行上述存储器51存储的计算机程序时可实现如下步骤:
对接收到的程序故障定位请求进行解析,得到待故障定位的目标程序文件;获取目标程序文件对应的目标运行日志;按照目标程序文件中的预置打印语句对目标运行日志进行筛选操作,得到目标打印内容;根据目标打印内容进行程序故障定位。
对于本发明提供的设备的介绍请参照上述方法实施例,本发明在此不做赘述。
相应于上面的方法实施例,本发明还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时可实现如下步骤:
对接收到的程序故障定位请求进行解析,得到待故障定位的目标程序文件;获取目标程序文件对应的目标运行日志;按照目标程序文件中的预置打印语句对目标运行日志进行筛选操作,得到目标打印内容;根据目标打印内容进行程序故障定位。
该计算机可读存储介质可以包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
对于本发明提供的计算机可读存储介质的介绍请参照上述方法实施例,本发明在此不做赘述。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置、设备及计算机可读存储介质而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的技术方案及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

Claims (8)

1.一种程序故障定位方法,其特征在于,包括:
对接收到的程序故障定位请求进行解析,得到待故障定位的目标程序文件;
获取所述目标程序文件对应的目标运行日志;
按照所述目标程序文件中的预置打印语句对所述目标运行日志进行筛选操作,得到目标打印内容;其中,为所述目标程序文件添加所述预置打印语句的过程包括:获取所述目标程序文件的目标后缀名;根据所述目标后缀名确定所述目标程序文件所属的目标文件类型;获取所述目标文件类型对应的目标代码结构和目标语法规则;根据所述目标代码结构从所述目标程序文件中选取各打印语句注入位置,并根据所述目标语法规则生成所述预置打印语句;将所述预置打印语句添加至各所述打印语句注入位置;
根据所述目标打印内容进行程序故障定位;其中,所述根据所述目标打印内容进行程序故障定位具体包括:对所述目标打印内容按照预设格式转换规则进行格式转换,得到目标格式数据;根据所述目标格式数据进行图像绘制操作,得到目标图像;根据所述目标图像进行程序故障定位。
2.根据权利要求1所述的程序故障定位方法,其特征在于,对所述目标打印内容按照预设格式转换规则进行格式转换,包括:
对所述目标打印内容按照进行json数据格式转换。
3.根据权利要求2所述的程序故障定位方法,其特征在于,根据所述目标格式数据进行图像绘制操作,包括:
根据所述目标格式数据进行时序图绘制操作。
4.根据权利要求2所述的程序故障定位方法,其特征在于,根据所述目标格式数据进行图像绘制操作,包括:
根据所述目标格式数据进行散点图绘制操作。
5.根据权利要求1至4任一项所述的程序故障定位方法,其特征在于,按照所述目标程序文件中的预置打印语句对所述目标运行日志进行筛选操作,包括:
利用grep抓取命令按照所述预置打印语句对所述目标运行日志进行关键词过滤操作。
6.一种程序故障定位装置,其特征在于,包括:
文件获得模块,用于对接收到的程序故障定位请求进行解析,得到待故障定位的目标程序文件;
日志获取模块,用于获取所述目标程序文件对应的目标运行日志;
打印内容获得模块,用于按照所述目标程序文件中的预置打印语句对所述目标运行日志进行筛选操作,得到目标打印内容;其中,为所述目标程序文件添加所述预置打印语句的过程包括:获取所述目标程序文件的目标后缀名;根据所述目标后缀名确定所述目标程序文件所属的目标文件类型;获取所述目标文件类型对应的目标代码结构和目标语法规则;根据所述目标代码结构从所述目标程序文件中选取各打印语句注入位置,并根据所述目标语法规则生成所述预置打印语句;将所述预置打印语句添加至各所述打印语句注入位置;
故障定位模块,用于根据所述目标打印内容进行程序故障定位;其中,所述根据所述目标打印内容进行程序故障定位具体包括:对所述目标打印内容按照预设格式转换规则进行格式转换,得到目标格式数据;根据所述目标格式数据进行图像绘制操作,得到目标图像;根据所述目标图像进行程序故障定位。
7.一种程序故障定位设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至5任一项所述程序故障定位方法的步骤。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述程序故障定位方法的步骤。
CN202011552900.9A 2020-12-24 2020-12-24 一种程序故障定位方法、装置、设备及可读存储介质 Active CN112612701B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011552900.9A CN112612701B (zh) 2020-12-24 2020-12-24 一种程序故障定位方法、装置、设备及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011552900.9A CN112612701B (zh) 2020-12-24 2020-12-24 一种程序故障定位方法、装置、设备及可读存储介质

Publications (2)

Publication Number Publication Date
CN112612701A CN112612701A (zh) 2021-04-06
CN112612701B true CN112612701B (zh) 2024-02-23

Family

ID=75245264

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011552900.9A Active CN112612701B (zh) 2020-12-24 2020-12-24 一种程序故障定位方法、装置、设备及可读存储介质

Country Status (1)

Country Link
CN (1) CN112612701B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113392199A (zh) * 2021-06-17 2021-09-14 中国工商银行股份有限公司 关键字检索方法、关键字检索装置、电子设备及存储介质

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103383631A (zh) * 2012-05-03 2013-11-06 深圳市共进电子股份有限公司 调试打印机制的方法和系统
CN107463485A (zh) * 2017-06-26 2017-12-12 北京五八信息技术有限公司 基于方法栈的日志获取方法、装置和终端
CN108923989A (zh) * 2018-07-31 2018-11-30 深圳高新兴物联科技有限公司 车载无线通信模块的故障监控方法、监控终端与存储介质
CN109669842A (zh) * 2018-12-27 2019-04-23 中国移动通信集团江苏有限公司 日志调用方法、装置、设备及计算机存储介质
CN109885505A (zh) * 2019-03-21 2019-06-14 浪潮商用机器有限公司 一种故障定位的方法、系统及相关组件
CN110874279A (zh) * 2018-08-29 2020-03-10 阿里巴巴集团控股有限公司 故障定位方法、装置和系统
CN110941528A (zh) * 2019-11-08 2020-03-31 支付宝(杭州)信息技术有限公司 一种基于故障的日志埋点设置方法、装置及系统
CN111061584A (zh) * 2019-11-21 2020-04-24 浪潮电子信息产业股份有限公司 一种故障诊断方法、装置、设备及可读存储介质
CN111209135A (zh) * 2020-01-03 2020-05-29 深圳前海微众银行股份有限公司 一种日志处理方法及装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10387144B2 (en) * 2015-11-19 2019-08-20 Ca, Inc. Method and system for determining logging statement code coverage

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103383631A (zh) * 2012-05-03 2013-11-06 深圳市共进电子股份有限公司 调试打印机制的方法和系统
CN107463485A (zh) * 2017-06-26 2017-12-12 北京五八信息技术有限公司 基于方法栈的日志获取方法、装置和终端
CN108923989A (zh) * 2018-07-31 2018-11-30 深圳高新兴物联科技有限公司 车载无线通信模块的故障监控方法、监控终端与存储介质
CN110874279A (zh) * 2018-08-29 2020-03-10 阿里巴巴集团控股有限公司 故障定位方法、装置和系统
CN109669842A (zh) * 2018-12-27 2019-04-23 中国移动通信集团江苏有限公司 日志调用方法、装置、设备及计算机存储介质
CN109885505A (zh) * 2019-03-21 2019-06-14 浪潮商用机器有限公司 一种故障定位的方法、系统及相关组件
CN110941528A (zh) * 2019-11-08 2020-03-31 支付宝(杭州)信息技术有限公司 一种基于故障的日志埋点设置方法、装置及系统
CN111061584A (zh) * 2019-11-21 2020-04-24 浪潮电子信息产业股份有限公司 一种故障诊断方法、装置、设备及可读存储介质
CN111209135A (zh) * 2020-01-03 2020-05-29 深圳前海微众银行股份有限公司 一种日志处理方法及装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Built-in system test and fault location;G.R. McLeod;《Proceedings., International Test Conference》;20020806;全文 *
一种面向软件可靠性评估的故障注入机制的设计与实现;胡嘉伟;江建慧;;计算机辅助设计与图形学学报;20120615(06);全文 *

Also Published As

Publication number Publication date
CN112612701A (zh) 2021-04-06

Similar Documents

Publication Publication Date Title
US7805705B2 (en) Graphically depicting program code depth
CN110347598B (zh) 一种测试脚本生成方法、装置、服务器及存储介质
US8752020B2 (en) System and process for debugging object-oriented programming code leveraging runtime metadata
US20030131342A1 (en) Debugger with activity alert
Kuhn On extracting unit tests from interactive live programming sessions
CN112612701B (zh) 一种程序故障定位方法、装置、设备及可读存储介质
KR20140116438A (ko) 연산 순서의 그래픽 표현 기법
CN112181426B (zh) 一种汇编程序控制流路径检测方法及装置
KR20200071413A (ko) 학습용 데이터 생성 장치, 소스 코드 오류 분석 장치 및 방법
CN111026604B (zh) 一种日志文件解析方法及装置
CN109344083B (zh) 一种程序调试方法、装置、设备及可读存储介质
CN112861138A (zh) 软件安全性分析方法及分析装置、电子设备及存储介质
CN108132799B (zh) 过程间静态程序分析信息提取方法、装置及设备
Poole Debugging and testing
CN110533143B (zh) 生成电子卡片的方法与装置、存储介质及计算机设备
CN113805861A (zh) 基于机器学习的代码生成方法、代码编辑系统及存储介质
CN112148581A (zh) 代码规范检查方法、装置、系统及存储介质
CN112380133A (zh) 一种指令集模拟器利用功能库仿真的方法及装置
CN113971024B (zh) 接口管理方法、装置、电子设备以及可读存储介质
CN114816349B (zh) 一种自动化设备控制软件开发方法、系统和存储介质
CN113703769B (zh) 一种cli命令执行方法及相关装置
CN117406973B (zh) 一种交互式数据分析的方法及装置
CN115470229B (zh) 数据表处理方法、装置、电子设备及存储介质
CN110955433B (zh) 一种自动化部署脚本的生成方法及装置
CN117909234A (zh) 一种基于自然语言识别的移动端自动化测试方法及系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant