CN108089973A - 一种信息处理方法及设备 - Google Patents
一种信息处理方法及设备 Download PDFInfo
- Publication number
- CN108089973A CN108089973A CN201611043574.2A CN201611043574A CN108089973A CN 108089973 A CN108089973 A CN 108089973A CN 201611043574 A CN201611043574 A CN 201611043574A CN 108089973 A CN108089973 A CN 108089973A
- Authority
- CN
- China
- Prior art keywords
- error code
- error
- character array
- function
- string
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3604—Software analysis for verifying properties of programs
- G06F11/3612—Software analysis for verifying properties of programs by runtime analysis
Abstract
本发明实施例公开了一种信息处理方法及设备。所述方法包括:检测到错误事件时,通过添加函数设置表征所述错误事件的错误码,将所述错误码存储在通过特定数据结构表示的字符数组中;其中,所述错误码通过字符串表示;通过读取函数读取所述字符数组中的错误码,以分析所述错误码确定错误位置。
Description
技术领域
本发明涉及信息处理技术,具体涉及一种信息处理方法及设备。
背景技术
错误码设计是软件系统中常见的问题。传统软件中一般采用错误值枚举、全局的errno变量或setLastError/getLastError函数等方式设计错误码,但这些错误码的设计方式或具有不够直观、需要先获得错误码再通过查表的方式获得错误信息的缺陷;或是无法满足多错误记录的需求的缺陷。
发明内容
为解决现有存在的技术问题,本发明实施例提供了一种信息处理方法及设备。
为达到上述目的,本发明实施例的技术方案是这样实现的:
本发明实施例提供了一种信息处理方法,所述方法包括:
检测到错误事件时,通过添加函数设置表征所述错误事件的错误码,将所述错误码存储在通过特定数据结构表示的字符数组中;其中,所述错误码通过字符串表示;
通过读取函数读取所述字符数组中的错误码,以分析所述错误码确定错误位置。
上述方案中,所述通过添加函数设置表征所述错误事件的错误码,将所述错误码存储在通过特定数据结构表示的字符数组中,包括:
通过添加函数多次设置表征错误事件的错误码;将多条错误码按照对应的上下文关系存储在通过特定数据结构表示的字符数组中。
上述方案中,所述通过读取函数读取所述字符数组中的错误码,以分析所述错误码确定错误位置,包括:
通过读取函数依次读取所述字符数组中的多条错误码,按照所述多条错误码的上下文关系生成第一字符数组,以基于所述第一字符数组确定错误位置。
上述方案中,所述特定数据结构为链表-字符串(list-string)组合结构;所述将所述错误码存储在通过特定数据结构表示的字符数组中,包括:
通过所述添加函数引用string结构的方式传入错误码、以及调用list结构的方式将所述错误码添加至字符数组的尾部。
上述方案中,所述通过添加函数设置表征所述错误事件的错误码,将所述错误码存储在通过特定数据结构表示的字符数组中,包括:
通过添加函数获得用户输入的用于表征所述错误事件的字符串,将所述字符串存储在通过特定数据结构表示的字符数组中。
本发明实施例还提供了一种信息处理设备,所述设备包括:添加设置单元、存储单元和读取单元;其中,
所述添加设置单元,用于检测到错误事件时,通过添加函数设置表征所述错误事件的错误码,将所述错误码存储在通过特定数据结构表示的字符数组中;其中,所述错误码通过字符串表示;
所述存储单元,用于存储包含有错误码的字符数组;
所述读取单元,用于通过读取函数读取所述字符数组中的错误码,以分析所述错误码确定错误位置。
上述方案中,所述添加设置单元,用于通过添加函数多次设置表征错误事件的错误码;将多条错误码按照对应的上下文关系存储在通过特定数据结构表示的字符数组中。
上述方案中,所述读取单元,用于通过读取函数依次读取所述字符数组中的多条错误码,按照所述多条错误码的上下文关系生成第一字符数组,以基于所述第一字符数组确定错误位置。
上述方案中,所述特定数据结构为list-string组合结构;则所述添加设置单元,用于通过所述添加函数引用string结构的方式传入错误码、以及调用list结构的方式将所述错误码添加至字符数组的尾部。
上述方案中,所述添加设置单元,用于通过添加函数获得用户输入的用于表征所述错误事件的字符串,将所述字符串存储在通过特定数据结构表示的字符数组中。
本发明实施例提供的信息处理方法及设备,所述方法包括:检测到错误事件时,获得错误记录信息;通过添加函数设置表征所述错误记录信息的错误码,将所述错误码存储在通过特定数据结构表示的字符数组中;其中,所述错误码通过字符串表示;通过读取函数读取所述字符数组中的错误码,以分析所述错误码确定错误位置。采用本发明实施例的技术方案,采用字符串作为错误码,具有以下有益效果:1、直观,直接采用最接近自然语言的字符串记录错误,免去了查表翻译的过程,提升了错误定位的准确度以及错误问题的解决速度;2、降低了系统维护难度,从而降低了维护成本;3、提升了软件设计时错误码处理的自然性和编码时的流畅性,从而提升了软件生产效率。
附图说明
图1为本发明实施例的信息处理方法的一种流程示意图;
图2为本发明实施例的信息处理方法的另一种流程示意图;
图3为本发明实施例的信息处理设备的组成结构示意图;
图4为本发明实施例的信息处理设备的硬件组成结构示意图。
具体实施方式
发明人发现,现有的错误值枚举、全局的errno变量或setLastError/getLastError函数等错误码的设计方式均具有一定的弊端,例如:
1、错误值枚举的错误码设计方案,通常软件系统中集中或者分模块枚举每个错误码,当发生错误时,根据错误发生的场景设置相应的枚举值并返回给软件使用者,使用者根据其判断错误或者通过查表的方式获得错误信息。这种方式的缺陷在于:一是需要事先设计好枚举值,当软件发生重构、裁剪时,会造成原代码中使用的枚举值失效,然而因为存在向前版本兼容的问题,失效的枚举值不能轻易删除,从而带来维护上的成本;二是随着软件系统的不断增大,或者软件模块的更迭演进,枚举值可能耗尽。
2、全局的errno变量的错误码设计方案,软件系统中有一个全局的错误码变量errno可在系统的任意位置访问,发生错误时设置errno的值,检测错误时取出errno的值,再根据查表获得错误信息。本方案例如Linux系统,其错误代码示例如:
int error=errno;
printf(“connect error:%d”,error);
3、setLastError/getLastError函数的错误码设计方案,软件系统中设置的全局函数setLastError和getLastError可在系统的任意位置访问,发生错误时通过setLastError函数设置错误码,检查错误时通过getLastError函数取出错误码,再根据查表获得错误信息。本方案例如Window操作系统,其错误代码示例如:
int error=getLastError();
printf(“connect error:%d”,error);
上述第二种和第三种的错误码设计方式的缺陷在于:仅有一个错误记录位置,若记录多个错误时则会产生覆盖,仅会保留最后一次错误记录;另一方面,在多线程环境中,如果没有同步机制,则会造成访问冲突;如果使用同步锁,又会造成性能开销;第三方面,全局变量或函数会破坏软件封装性。
由此可见,上述三种错误码设计方式的共同缺陷在于:1、不够直观,都需要先获得错误码,再通过查表的方式获得错误信息;2、无法满足多错误记录的需求。
下面结合附图及具体实施例对本发明作进一步详细的说明。
本发明实施例提供了一种信息处理方法。图1为本发明实施例的信息处理方法的一种流程示意图;如图1所示,所述方法包括:
步骤101:检测到错误事件时,通过添加函数设置表征所述错误事件的错误码,将所述错误码存储在通过特定数据结构表示的字符数组中;其中,所述错误码通过字符串表示。
步骤102:通过读取函数读取所述字符数组中的错误码,以分析所述错误码确定错误位置。
本实施例的信息处理方法可应用在任何支持字符串操作、有错误码设计的设备中,所述设备可以是终端设备,例如个人计算机(PC,Personal Computer);所述设备也可以是网络服务器等。
本实施例中,首先需设计错误码存储的特定数据结构,本实施例中使用字符串作为错误码,则所述特定数据结构是字符数组;由于本实施例中需要记录多错误码,以及体现错误码之间的联系,作为一种实施方式,该特定数据结构可采用二维字符数组。
作为一种实施方式,所述特定数据结构可以为C++标准库中的链表-字符串(list-string)组合结构;所述list-string组合结构可表示为:std::list<std::string>errorStack。由于list结构和string结构具有自动伸缩的优点,因此无需提前设计错误码的最大程度和错误码的最大容纳个数,并且在添加或删除错误码时有较好的性能,因此,本实施例中优选list-string组合结构为所述特定数据结构。
当然,本发明实施例的特定数据结构不限于list-string组合,其他二维字符数组结构也可适用于本发明实施例,例如C语言的二维字符数组结构,该二维字符数组结构可表示为:char errorStack[200][200],但这种二维字符数组结构需要设置单条错误码的最大长度,以及可设置的错误码数量,例如上述数组结构中表示最大长度为200,最多可存储200个错误码。虽然上述二维字符数组结构在具体实现时可灵活设置单条错误码的最大长度以及错误码数量,但由于在初始阶段需限定单条错误码的最大长度以及错误码数量,不利于灵活扩展。再例如,C++标准库中的vector-string组合结构,所述vector-string组合结构可表示为:std::vector<std::string>errorStack。vector-string组合结构无需提前设计错误码的最大程度,vector结构和string结构具有自动伸缩的优点,也无需提前设计错误码的最大容纳数量,但缺点在于增加或删除错误码时对性能会产生较大影响。
基于上述具有特定数据结构的字符数组,本实施例的信息处理方法进一步设计如何访问所述字符数组的,具体可包括用于设置添加错误码的添加函数(例如表示为addError)以及用于读取错误码的读取函数(例如表示为dumpError);还可以包括用于恢复错误码设置对象到初始状态的初始化函数(例如表示为reset)。
具体的,本实施例中,以所述特定数据结构为list-string组合结构为例,则所述将所述错误码存储在通过特定数据结构表示的字符数组中,包括:通过所述添加函数引用string结构的方式传入错误码、以及调用list结构的方式将所述错误码添加至字符数组的尾部。
在实际应用中,预先设计C++类,例如可命名为ErrorStack或者其他名称,则在添加函数表示为addError时,通过addError设置并添加至字符数组可通过以下代码实现:
具体的,通过addError设置错误码时,错误码以引用string结构的方式传入、通过调用list结构的push_back方式将所述错误码添加至字符数组的尾部。
在本实施例中,所述通过添加函数设置表征所述错误事件的错误码,将所述错误码存储在通过特定数据结构表示的字符数组中,包括:通过添加函数获得用户输入的用于表征所述错误事件的字符串,将所述字符串存储在通过特定数据结构表示的字符数组中。
具体的,通过addError设置错误码时,错误码可通过基于用户输入操作获得的用于表征对应的错误事件的字符串表示;用户可采用接近自然语言的方式设置错误码。
作为一种示例,设置的错误码可通过英文字符的字符串表示,英文字符的字符串代码示例为:errorStack.addError(“ERROR:setInputMediaDescription mInMedia isempty!”);其中,“ERROR:setInputMediaDescription mInMedia is empty!”即为用户自定义输入的用于表示错误事件的错误码内容。
作为另一种示例,设置的错误码可通过中文字符的字符串表示,中文字符的字符串代码示例为:errorStack.addError(“ERROR:MediaType参数有误,请检查”);其中,“ERROR:MediaType参数有误,请检查”即为用户自定义输入的用于表示错误事件的错误码内容。
如上举例所示,本发明实施例的错误码具有灵活、易用的优点,并且用户不必提前设计错误码内容,只需要根据当时错误事件的产生场景设置表征错误事件的错误码,具有直观、高效的特点;由于不不需要提前设计错误码内容,当软件发生迭代或者修改时,可以任意修改或删除错误码,无需考虑向前兼容的问题。
本实施例中,通过读取函数读取所述字符数组中的错误码;以读取函数为dumpError、字符数组的数据结构采用list-string组合结构为例,则dumpError使用list结构的迭代器定位至list-string组合结构的头部,读取出存储的错误码,将读取的错误码生成一个新的string结构输出显示。
本发明实施例还提供了一种信息处理方法。图2为本发明实施例的信息处理方法的另一种流程示意图;如图2所示,所述方法包括:
步骤201:检测到错误事件时,通过添加函数多次设置表征错误事件的错误码;将多条错误码按照对应的上下文关系存储在通过特定数据结构表示的字符数组中;其中,所述错误码通过字符串表示。
步骤202:通过读取函数依次读取所述字符数组中的多条错误码,按照所述多条错误码的上下文关系生成第一字符数组,以基于所述第一字符数组确定错误位置。
区别于上一实施例,本实施例中,可通过调用添加函数(例如表示为addError)多次设置错误码,以及基于所述特定数据结构(具体为二维字符数组结构)可存储多条错误码;其中,存储的多条错误码之间具有对应的上下文关系,可模拟函数调用堆栈表示错误码之间的上下文。
相应的,通过读取函数(例如表示为dumpError)依次读取所述字符数组中的多条错误码,可使用list结构的迭代器定位至list-string组合结构的头部,依次读取出存储的每条错误码,基于存储时所具有的上下文关系将读取的错误码组织生成一个新的string结构(该string结构为第一字符数组)输出显示,以便于用户可基于显示的第一字符数组分析定位错误的发生位置。具体的,dumpError读取错误码的方式可参照如下代码所示:
作为一个示例,通过具体的示例模拟函数调用堆栈还原错误码上下文的代码示例为:
具体的,在实例化错误记录对象后,将该对象的指针作为参数之一传入各个函数;各函数的调用顺序依次是函数fun3调用函数fun2,函数fun2调用函数fun1;当函数fun1发生错误时,设置一条错误码“fun1:an error!”在字符数组中;当函数fun2检测到fun1返回错误值时,设置一条错误码“fun2:returned from fun1with error!”在字符数组中;当函数fun3检测到函数fun2返回错误值时,设置错误码“fun3:caught an error from fun2!”在字符数组中。在函数fun3调用完成后,从字符数组中读取错误码并输出,输出内容包括:
fun1:an error!
fun2:returned from fun1with error!
fun3:caught an error from fun2!
用户检测错误输出,可以明确看出函数调用关系是从函数fun1返回至函数fun2,再由函数fun2返回至函数fun3;通过匹配错误码内容,即可定位到相应的错误分支。
采用本发明实施例的信息处理方法,采用字符串作为错误码,采用具有自动伸缩优点二维字符数组结构用户错误码存储,存储的多个错误码之间能够表征上下文关系,具有以下优点:
1)直观,直接采用最接近人类自然语言的字符串记录错误,免去了查表翻译的过程;
2)易于维护,软件的重构、裁剪等不会带来向前兼容问题,降低了系统维护难度,从而降低了维护成本;
3)可以轻易地多点记录错误,满足了多错误码记录的需求,不会有耗尽问题;另一方面还实现了错误码的上下文关系的表示,便于用户快速进行错误定位,提升错误问题的解决速度以及错误定位的准确度;
4)没有全局变量或函数,不会破坏软件封装性;
5)没有全局变量或函数,不会产生错误码覆盖问题;
6)没有全局变量或函数,无需考虑线程同步问题。
本发明实施例还提供了一种信息处理设备。图3为本发明实施例的信息处理设备的组成结构示意图;如图3所示,所述设备包括:添加设置单元31、存储单元32和读取单元33;其中,
所述添加设置单元31,用于检测到错误事件时,通过添加函数设置表征所述错误事件的错误码,将所述错误码存储在通过特定数据结构表示的字符数组中;其中,所述错误码通过字符串表示;
所述存储单元32,用于存储包含有错误码的字符数组;
所述读取单元33,用于通过读取函数读取所述字符数组中的错误码,以分析所述错误码确定错误位置。
本实施例的信息处理设备可以是任何支持字符串操作、有错误码设计的设备,所述设备可以是终端设备,例如个人计算机(PC,Personal Computer);所述设备也可以是网络服务器等。
本实施例中,首先需设计错误码存储的特定数据结构,本实施例中使用字符串作为错误码,则所述特定数据结构是字符数组;由于本实施例中需要记录多错误码,以及体现错误码之间的联系,作为一种实施方式,该特定数据结构可采用二维字符数组。
作为一种实施方式,所述特定数据结构可以为C++标准库中的链表-字符串(list-string)组合结构;所述list-string组合结构可表示为:std::list<std::string>errorStack。由于list结构和string结构具有自动伸缩的优点,因此无需提前设计错误码的最大程度和错误码的最大容纳个数,并且在添加或删除错误码时有较好的性能,因此,本实施例中优选list-string组合结构为所述特定数据结构。
当然,本发明实施例的特定数据结构不限于list-string组合,其他二维字符数组结构也可适用于本发明实施例,例如C语言的二维字符数组结构,该二维字符数组结构可表示为:char errorStack[200][200],但这种二维字符数组结构需要设置单条错误码的最大长度,以及可设置的错误码数量,例如上述数组结构中表示最大长度为200,最多可存储200个错误码。虽然上述二维字符数组结构在具体实现时可灵活设置单条错误码的最大长度以及错误码数量,但由于在初始阶段需限定单条错误码的最大长度以及错误码数量,不利于灵活扩展。再例如,C++标准库中的vector-string组合结构,所述vector-string组合结构可表示为:std::vector<std::string>errorStack。vector-string组合结构无需提前设计错误码的最大程度,vector结构和string结构具有自动伸缩的优点,也无需提前设计错误码的最大容纳数量,但缺点在于增加或删除错误码时对性能会产生较大影响。
基于上述具有特定数据结构的字符数组,本实施例的信息处理方法进一步设计如何访问所述字符数组的,具体可包括用于设置添加错误码的添加函数(例如表示为addError)以及用于读取错误码的读取函数(例如表示为dumpError);还可以包括用于恢复错误码设置对象到初始状态的初始化函数(例如表示为reset)。
作为一种实施方式,当所述特定数据结构为list-string组合结构时;则所述添加设置单元31,用于通过所述添加函数引用string结构的方式传入错误码、以及调用list结构的方式将所述错误码添加至字符数组的尾部。
具体的,所述添加设置单元31通过addError设置错误码时,错误码以引用string结构的方式传入、通过调用list结构的push_back方式将所述错误码添加至字符数组的尾部。
本实施例中,所述添加设置单元31,用于通过添加函数获得用户输入的用于表征所述错误事件的字符串,将所述字符串存储在通过特定数据结构表示的字符数组中。
具体的,所述添加设置单元31通过addError设置错误码时,错误码可通过基于用户输入操作获得的用于表征对应的错误事件的字符串表示;用户可采用接近自然语言的方式设置错误码。
作为一种示例,设置的错误码可通过英文字符的字符串表示,英文字符的字符串代码示例为:errorStack.addError(“ERROR:setInputMediaDescription mInMedia isempty!”);其中,“ERROR:setInputMediaDescription mInMedia is empty!”即为用户自定义输入的用于表示错误事件的错误码内容。
作为另一种示例,设置的错误码可通过中文字符的字符串表示,中文字符的字符串代码示例为:errorStack.addError(“ERROR:MediaType参数有误,请检查”);其中,“ERROR:MediaType参数有误,请检查”即为用户自定义输入的用于表示错误事件的错误码内容。
本实施例中,所述读取单元33通过读取函数读取所述字符数组中的错误码;以读取函数为dumpError、字符数组的数据结构采用list-string组合结构为例,则dumpError使用list结构的迭代器定位至list-string组合结构的头部,读取出存储的错误码,将读取的错误码生成一个新的string结构输出显示。
本领域技术人员应当理解,本发明实施例的信息处理设备中各处理单元的功能,可参照前述信息处理方法的相关描述而理解,本发明实施例的信息处理设备中各处理单元,可通过实现本发明实施例所述的功能的模拟电路而实现,也可以通过执行本发明实施例所述的功能的软件在智能终端上的运行而实现。
本发明实施例还提供了一种信息处理设备。如图3所示,所述设备包括:添加设置单元31、存储单元32和读取单元33;其中,
所述添加设置单元31,用于检测到错误事件时,通过添加函数多次设置表征错误事件的错误码;将多条错误码按照对应的上下文关系存储在通过特定数据结构表示的字符数组中;其中,所述错误码通过字符串表示;
所述存储单元32,用于存储包含有错误码的字符数组;
所述读取单元33,用于通过读取函数依次读取所述字符数组中的多条错误码,按照所述多条错误码的上下文关系生成第一字符数组,以基于所述第一字符数组确定错误位置。
区别于上一实施例,本实施例中,所述添加设置单元31可通过调用添加函数(例如表示为addError)多次设置错误码,以及所述存储单元32基于所述特定数据结构(具体为二维字符数组结构)可存储多条错误码;其中,存储的多条错误码之间具有对应的上下文关系,可模拟函数调用堆栈表示错误码之间的上下文。
相应的,所述读取单元33通过读取函数(例如表示为dumpError)依次读取所述字符数组中的多条错误码,可使用list结构的迭代器定位至list-string组合结构的头部,依次读取出存储的每条错误码,基于存储时所具有的上下文关系将读取的错误码组织生成一个新的string结构(该string结构为第一字符数组)输出显示,以便于用户可基于显示的第一字符数组分析定位错误的发生位置。
本领域技术人员应当理解,本发明实施例的信息处理设备中各处理单元的功能,可参照前述信息处理方法的相关描述而理解,本发明实施例的信息处理设备中各处理单元,可通过实现本发明实施例所述的功能的模拟电路而实现,也可以通过执行本发明实施例所述的功能的软件在智能终端上的运行而实现。
在本发明实施例中,所述信息处理设备中的添加设置单元31和读取单元33,在实际应用中可由所述信息处理设备中的中央处理器(CPU,Central Processing Unit)、数字信号处理器(DSP,Digital Signal Processor)或可编程门阵列(FPGA,Field-Programmable Gate Array)实现;所述信息处理设备中的存储单元32,在实际应用中可由所述信息处理设备的存储器实现。
图4为本发明实施例的信息处理设备的硬件组成结构示意图;信息处理设备作为硬件实体的一个示例如图4所示,包括处理器41、存储介质42以及至少一个外部通信接口43;所述处理器41、存储介质42以及外部通信接口43均通过总线44连接。
这里需要指出的是:以上涉及信息处理设备的描述,与上述方法描述是类似的,同方法的有益效果描述,不做赘述。对于本发明信息处理设备实施例中未披露的技术细节,请参照本发明方法实施例的描述。
本领域内的技术人员应明白,本发明的实施例可提供为方法、设备、或计算机程序产品。因此,本发明可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
Claims (10)
1.一种信息处理方法,其特征在于,所述方法包括:
检测到错误事件时,通过添加函数设置表征所述错误事件的错误码,将所述错误码存储在通过特定数据结构表示的字符数组中;其中,所述错误码通过字符串表示;
通过读取函数读取所述字符数组中的错误码,以分析所述错误码确定错误位置。
2.根据权利要求1所述的方法,其特征在于,所述通过添加函数设置表征所述错误事件的错误码,将所述错误码存储在通过特定数据结构表示的字符数组中,包括:
通过添加函数多次设置表征错误事件的错误码;将多条错误码按照对应的上下文关系存储在通过特定数据结构表示的字符数组中。
3.根据权利要求2所述的方法,其特征在于,所述通过读取函数读取所述字符数组中的错误码,以分析所述错误码确定错误位置,包括:
通过读取函数依次读取所述字符数组中的多条错误码,按照所述多条错误码的上下文关系生成第一字符数组,以基于所述第一字符数组确定错误位置。
4.根据权利要求1所述的方法,其特征在于,所述特定数据结构为链表-字符串list-string组合结构;所述将所述错误码存储在通过特定数据结构表示的字符数组中,包括:
通过所述添加函数引用string结构的方式传入错误码、以及调用list结构的方式将所述错误码添加至字符数组的尾部。
5.根据权利要求1所述的方法,其特征在于,所述通过添加函数设置表征所述错误事件的错误码,将所述错误码存储在通过特定数据结构表示的字符数组中,包括:
通过添加函数获得用户输入的用于表征所述错误事件的字符串,将所述字符串存储在通过特定数据结构表示的字符数组中。
6.一种信息处理设备,其特征在于,所述设备包括:添加设置单元、存储单元和读取单元;其中,
所述添加设置单元,用于检测到错误事件时,通过添加函数设置表征所述错误事件的错误码,将所述错误码存储在通过特定数据结构表示的字符数组中;其中,所述错误码通过字符串表示;
所述存储单元,用于存储包含有错误码的字符数组;
所述读取单元,用于通过读取函数读取所述字符数组中的错误码,以分析所述错误码确定错误位置。
7.根据权利要求6所述的设备,其特征在于,所述添加设置单元,用于通过添加函数多次设置表征错误事件的错误码;将多条错误码按照对应的上下文关系存储在通过特定数据结构表示的字符数组中。
8.根据权利要求7所述的设备,其特征在于,所述读取单元,用于通过读取函数依次读取所述字符数组中的多条错误码,按照所述多条错误码的上下文关系生成第一字符数组,以基于所述第一字符数组确定错误位置。
9.根据权利要求6所述的设备,其特征在于,所述特定数据结构为链表-字符串list-string组合结构;则所述添加设置单元,用于通过所述添加函数引用string结构的方式传入错误码、以及调用list结构的方式将所述错误码添加至字符数组的尾部。
10.根据权利要求6所述的设备,其特征在于,所述添加设置单元,用于通过添加函数获得用户输入的用于表征所述错误事件的字符串,将所述字符串存储在通过特定数据结构表示的字符数组中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611043574.2A CN108089973A (zh) | 2016-11-23 | 2016-11-23 | 一种信息处理方法及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611043574.2A CN108089973A (zh) | 2016-11-23 | 2016-11-23 | 一种信息处理方法及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108089973A true CN108089973A (zh) | 2018-05-29 |
Family
ID=62171652
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611043574.2A Pending CN108089973A (zh) | 2016-11-23 | 2016-11-23 | 一种信息处理方法及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108089973A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109445770A (zh) * | 2018-10-16 | 2019-03-08 | 武汉斗鱼网络科技有限公司 | 一种错误码的处理方法、装置、介质及设备 |
CN113328895A (zh) * | 2021-06-21 | 2021-08-31 | 河北幸福消费金融股份有限公司 | 错误码管理系统、异常定位方法和存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102810091A (zh) * | 2011-05-31 | 2012-12-05 | 捷达世软件(深圳)有限公司 | 监控数据管理方法及系统 |
US20150106663A1 (en) * | 2013-10-15 | 2015-04-16 | Sas Institute Inc. | Hash labeling of logging messages |
CN106021358A (zh) * | 2016-05-10 | 2016-10-12 | 深圳云之家网络有限公司 | 一种异常信息记录方法及系统 |
-
2016
- 2016-11-23 CN CN201611043574.2A patent/CN108089973A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102810091A (zh) * | 2011-05-31 | 2012-12-05 | 捷达世软件(深圳)有限公司 | 监控数据管理方法及系统 |
US20150106663A1 (en) * | 2013-10-15 | 2015-04-16 | Sas Institute Inc. | Hash labeling of logging messages |
CN106021358A (zh) * | 2016-05-10 | 2016-10-12 | 深圳云之家网络有限公司 | 一种异常信息记录方法及系统 |
Non-Patent Citations (1)
Title |
---|
LIZS: ""C++实现一个简单的异常日志记录类"", 《HTTPS://WWW.CNBLOGS.COM/LIZS/P/3642208.HTML》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109445770A (zh) * | 2018-10-16 | 2019-03-08 | 武汉斗鱼网络科技有限公司 | 一种错误码的处理方法、装置、介质及设备 |
CN113328895A (zh) * | 2021-06-21 | 2021-08-31 | 河北幸福消费金融股份有限公司 | 错误码管理系统、异常定位方法和存储介质 |
CN113328895B (zh) * | 2021-06-21 | 2023-08-29 | 河北幸福消费金融股份有限公司 | 错误码管理系统、异常定位方法和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230094191A1 (en) | Scalable execution tracing for large program codebases | |
US10621068B2 (en) | Software code debugger for quick detection of error root causes | |
KR101840905B1 (ko) | 상태 기계 격자에서의 카운터 동작 | |
US10198425B2 (en) | Methods and apparatus for reusing report design components and templates | |
US9459989B2 (en) | Method and apparatus for reverse debugging source code using causal analysis | |
KR20150052125A (ko) | 상태 기계 엔진들에서의 지시 삽입 | |
CN111198868B (zh) | 一种智能分库实时数据迁移方法和装置 | |
US20100251227A1 (en) | Binary resource format and compiler | |
CN109471851A (zh) | 数据处理方法、装置、服务器和存储介质 | |
US9542111B2 (en) | Writable clone data structure | |
US9563635B2 (en) | Automated recognition of patterns in a log file having unknown grammar | |
CN108089973A (zh) | 一种信息处理方法及设备 | |
US20200334208A1 (en) | Rule-based collections of subset(s) of metadata in response to a trigger event occurring | |
CN114048415A (zh) | 表单生成方法及装置、电子设备和计算机可读存储介质 | |
WO2020073200A1 (zh) | 调试程序的方法和系统 | |
CN114218013A (zh) | 搜索方法、装置、电子设备存储介质 | |
JP7208222B2 (ja) | データレコード内のフォーマットを動的に定義する技術 | |
CN108536583B (zh) | 自动化测试的断言方法、装置、计算机设备及存储介质 | |
CN112380142A (zh) | 接口文档管理方法、装置和测试设备 | |
CN111008195A (zh) | 一种数据库空闲空间管理方法、系统、终端及存储介质 | |
US20170364400A1 (en) | Method for debugging static memory corruption | |
WO2020065960A1 (ja) | 情報処理装置、制御方法、及びプログラム | |
CN110263303B (zh) | 文本修改历史的追溯方法及装置 | |
JP2005327192A (ja) | ハードウエア設計システムおよびその方法 | |
CN111046841A (zh) | 一种PowerPoint文件的文字提取方法、系统、终端及存储介质 |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180529 |
|
RJ01 | Rejection of invention patent application after publication |