CN102143008A - 用于数据中心的诊断故障事件的方法及装置 - Google Patents

用于数据中心的诊断故障事件的方法及装置 Download PDF

Info

Publication number
CN102143008A
CN102143008A CN2010101050029A CN201010105002A CN102143008A CN 102143008 A CN102143008 A CN 102143008A CN 2010101050029 A CN2010101050029 A CN 2010101050029A CN 201010105002 A CN201010105002 A CN 201010105002A CN 102143008 A CN102143008 A CN 102143008A
Authority
CN
China
Prior art keywords
service logic
daily record
journal file
data center
record segment
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
Application number
CN2010101050029A
Other languages
English (en)
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Priority to CN2010101050029A priority Critical patent/CN102143008A/zh
Priority to US13/013,925 priority patent/US8661291B2/en
Publication of CN102143008A publication Critical patent/CN102143008A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0709Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a distributed system consisting of a plurality of standalone computer nodes, e.g. clusters, client-server systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0727Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a storage system, e.g. in a DASD or network based storage system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0775Content or structure details of the error report, e.g. specific table structure, specific error fields
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/079Root cause analysis, i.e. error or fault diagnosis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3476Data logging

Abstract

公开了一种用于数据中心的诊断故障事件的方法,包括:监控在数据中心内是否发生故障事件;如果发生故障事件,则确定在发生故障事件的节点中正在执行的业务逻辑;基于与数据中心对应的管理模型,选择与该业务逻辑的执行过程有关的日志文件,其中管理模型反映数据中心的业务逻辑的部署和应用依赖性;以及根据所述日志文件,对故障事件进行诊断。该方法使用管理模型以选择与业务逻辑的执行过程有关的日志文件,并将业务逻辑的信息以及应用之间的依赖关系写入日志文件中,能够自动、快速、准确地对故障事件进行诊断。还公开了相应的用于数据中心的诊断故障事件的装置。

Description

用于数据中心的诊断故障事件的方法及装置
技术领域
本发明涉及故障诊断技术,具体地,涉及在数据中心(尤其是分布式数据中心)中使用的诊断故障事件的方法及相应的装置。
背景技术
在数据中心中,事件管理在整个数据中心管理中占据了很大的比重。随着数据中心规模的扩大,驻留有各种应用、服务、操作系统等的物理机可能分布在不同的地理位置。在这种情况下,远程事件管理也成为数据中心管理的重要部分。当在数据中心中发生故障事件时,需要进行故障事件的诊断,从而提供相应的故障解决方案。
在现有的诊断故障事件的方法中,数据中心的管理员采用“试验检查”的方法,根据日志文件对数据中心的每一个应用、服务等进行检查以找出故障事件的原因。然而,作为数据中心的用户,数据中心的管理员不能完全知道数据中心中业务的部署以及应用之间和服务之间的依赖关系,这样,容易造成故障事件诊断的效率低下、耗时长、甚至不能准确地确定故障原因等问题。另外,对于分布式数据中心,由于物理机可能位于不同的地理位置,因此,也在一定程度上导致故障事件诊断的时间较长。
另外,当数据中心发生故障事件时,如果数据中心的拓扑发生变化,例如产生了新的虚拟机等,则也容易产生诊断错误的情况。
因此,需要提出一种在数据中心中自动、准确、快速地诊断故障事件的技术方案。
发明内容
本发明正是鉴于上述技术问题而提出的,其目的在于提供一种用于数据中心的诊断故障事件的方法及其装置,其能够自动、快速、准确地诊断故障事件。
根据本发明的第一个方面,提供一种用于数据中心的诊断故障事件的方法,包括:监控在所述数据中心内是否发生故障事件;如果发生故障事件,则确定在发生所述故障事件的节点中正在执行的业务逻辑;基于与所述数据中心对应的管理模型,选择与所述业务逻辑的执行有关的日志文件,其中所述管理模型反映所述数据中心的业务逻辑的部署和应用依赖性;以及根据所述日志文件,对所述故障事件进行诊断。
根据本发明的另一个方面,提供一种用于数据中心的诊断故障事件的装置,包括:故障事件监控模块,用于监控在所述数据中心内是否发生故障事件;业务逻辑确定模块,用于在发生故障事件时,确定在发生所述故障事件的节点中正在执行的业务逻辑;日志文件选择模块,用于基于与所述数据中心对应的管理模型,选择与所述业务逻辑的执行过程有关的日志文件,其中所述管理模型反映所述数据中心的业务逻辑的部署和应用依赖性;以及诊断模块,用于根据所述日志文件,对所述故障事件进行诊断。
附图说明
图1是根据本发明的一个实施例的用于诊断故障事件的方法的流程图;
图2是在本发明的实施例中使用的数据中心的管理模型的一个例子的示意图;
图3是用于说明图1所示的用于诊断故障事件的方法的例子的示意图;
图4是根据本发明的一个实施例的用于诊断故障事件的装置的示意性框图。
具体实施方式
相信通过以下结合附图对本发明的具体实施例的详细描述,本发明的上述和其它目的、特征和优点将会更加明显。
图1是根据本发明的一个实施例的用于诊断故障事件的方法的流程图。下面结合附图,对本实施例进行详细描述。
在本实施例中,“业务逻辑”代表能够完成某个任务的一个或多个独立应用的组合;“应用”代表用于某一应用目的的处理,可以采用例如软件等形式;“服务”代表用于支持应用的执行的功能。因此,在数据中心中,一个业务逻辑可涉及一个或多个应用、一个或多个服务、一个或多个操作系统以及一个或多个物理机。
如图1所示,在步骤S101,在业务逻辑的执行期间,在执行该业务逻辑的各个节点的日志文件中标识与该业务逻辑的执行过程对应的日志片断。在数据中心中,当某个业务逻辑被执行时,在该业务逻辑所涉及的各个应用、服务、操作系统等节点将执行相关的处理。业务逻辑有若干业务单元,这些业务单元通常被部署在不同的节点上。业务逻辑的执行过程按照一定的顺序陆续经过各个业务单元和相应的节点。当业务逻辑的执行过程到达某个节点时,运行事先注入该节点的代码,并在规定的时刻写日志。在本实施例中,除了记录业务逻辑在该节点的执行过程的有关信息之外,还对所记录的信息(日志片断)进行标识以区别与不同业务逻辑的执行过程对应的信息。在一个实施例中,通过将业务逻辑的标识符写入对应的日志片断中来标识日志片断。具体地,当在某个节点运行与业务逻辑有关的代码时,该业务逻辑的标识符被缓存在该节点中,然后,在写日志的时刻,业务逻辑的标识符被读出并写入相应的日志片断中。
这样,通过步骤S101,业务逻辑的信息可被动态地写入各个节点的日志文件中,从而各个应用之间和/或服务之间的依赖关系也可相应地通过日志文件体现。
本领域的普通技术人员应当理解,上述步骤S101是关于日志文件的处理,其并不必须包含在本实施例的方法中。
在步骤S105,监控在数据中心内是否发生故障事件。通常,当数据中心的某个应用、服务器、网络设备等发生故障时,会产生相应的事件报告或告警。因此,通过监控是否产生事件报告或告警,可以监控故障事件的发生。
如果发生故障事件,则在步骤S110,确定在发生该故障事件的节点中正在执行的业务逻辑。故障事件的节点可以是例如应用、服务器、网络设备等。
然后,在步骤S115,基于与数据中心对应的管理模型,选择与在步骤S110中确定的业务逻辑的执行过程有关的日志文件,其中,管理模型反映数据中心的业务逻辑的部署和应用依赖性。
在本实施例中,管理模型是在部署数据中心时建立的,其可包含以下的信息:
1)业务逻辑部署链,其对于数据中心内的每个业务逻辑,记录与该业务逻辑相关的节点,这些节点包括应用、服务、操作系统和物理机;该业务逻辑部署链反映了数据中心的业务逻辑的部署情况;以及
2)应用依赖链,其记录应用之间和/或服务之间的依赖关系,反映数据中心内的应用依赖性。
进一步地,管理模型还可以反映数据中心的物理拓扑结构,在这种情况下,管理模型还包含以下信息:3)拓扑链,其记录数据中心的物理拓扑结构,包括物理机及其所在的地理位置。
通过这样的管理模型,能够全面地反映数据中心的业务逻辑的部署、依赖关系以及物理拓扑结构。
图2示意性地给出了可在本实施例中使用的数据中心的管理模型的一个例子。为了清楚起见,只示出了数据中心的一个业务逻辑的情况。如图2所示,该业务逻辑可包含至少一个应用;该至少一个应用可部署在至少一个服务上或者直接部署在至少一个操作系统上,也可以依赖至少一个其它应用;该至少一个服务可部署在至少一个操作系统上,也可以依赖至少一个其它服务;该至少一个操作系统可部署在至少一个物理机上;该至少一个物理机可位于至少一个地理位置。在图2中,还示出了在物理机上虚拟化有至少一个虚拟机,而该至少一个虚拟机可部署在至少一个操作系统上。在图2所示的管理模型中,物理机和地理位置的关系反映了数据中心的物理拓扑结构,其余节点之间的关系反映了数据中心的业务逻辑的部署和依赖关系。
在管理模型包含业务逻辑部署链和应用依赖链的情况下,在步骤S115中,首先,基于管理模型中的业务逻辑部署链,获取与业务逻辑的执行过程相关的节点,即相关的应用、服务、操作系统和物理机,并获取这些节点的日志文件。然后,对于所获取的相关应用的每一个,遍历管理模型中的应用依赖链,以获取该应用所依赖的其它应用和/或服务,并获取这些其它应用和/或服务的日志文件。然后,对于这些其它应用的每一个,基于业务逻辑部署链,获取与该其它应用相关的节点,并获取这些节点的日志文件。这样,通过以上步骤,可以找到所有与在步骤S110中确定的业务逻辑的执行过程相关的日志文件。
进一步地,在管理模型还包含拓扑链的情况下,还对拓扑链进行遍历,以确定数据中心的物理拓扑结构是否改变。当确定物理拓扑结构发生了变化时,将导致该变化的节点写入专门记录物理拓扑变化的日志文件。
然后,在步骤S120,根据所选择的日志文件,对故障事件进行诊断。
在本实施例中,首先从所选择的日志文件中获取与所需业务逻辑的执行过程对应的日志片断。通常,在日志文件中记录了与对应节点相关的所有业务逻辑在该节点的执行过程的有关信息,并且如前所述,业务逻辑的标识符也被写入了日志文件中,因此,与各个业务逻辑的执行过程有关的信息(日志片断)可通过业务逻辑的标识符进行识别。这样,对于每一个日志文件,可根据业务逻辑的标识符,从该日志文件中获取对应的日志片断。
接着,对所获取的日志片断进行排序,从而获得日志片断的序列。在本实施例中,可以将日志片断按照业务逻辑的执行顺序进行排序。然后,对于排序后的日志片断,检查每一个日志片断以找出错误日志片断。在一个实施例中,比较每一个日志片断与存储在对应节点上的正确日志片断,如果该日志片断与正确日志片断不同,则将该日志片断确定为错误日志片断。
可选地,在另一个实施例中,在每一个日志片断中查找异常关键字,如果某个日志片断存在异常关键字,则将该日志片断确定为错误日志片断。
应当指出,对于本领域的普通技术人员来说,也可以使用其它方法确定错误日志片断。
此外,还可以进一步根据所确定的错误日志片断,确定故障事件的根原因。在本实施例中,可以基于预先确定的规则,分析错误日志片断,从而确定故障事件的根原因。
通常,用于诊断故障原因的规则被存储在数据库中。规则可以例如是:将日志片断的序列中最后一个错误日志片断确定为故障事件的根原因;如果错误日志片断表示“URL资源不可得”(错误代码为http 404),则将该错误日志片断确定为根原因;如果错误日志片断表示“服务不可得”(错误代码为http 500),则分析随后的错误日志片断;等等。实际上,本领域的普通技术人员容易知道,可以使用现有的专家诊断系统确定故障事件的根原因。
通过以上描述可以看出,本实施例的诊断故障事件的方法使用与数据中心对应的管理模型选择与业务逻辑的执行过程有关的日志文件,由于管理模型反映了数据中心的部署和应用依赖性,因此能够自动、快速地对故障事件进行诊断。,并进一步地,通过将业务逻辑的信息以及应用之间的依赖关系写入日志文件中并提供错误日志片断的序列以进行根原因的分析,能够快速、准确地确定故障事件的根原因。
图3示意性地示出了用于说明图1所示的用于诊断故障事件的方法的例子,其中图3(a)示出了业务逻辑的层结构和执行顺序,图3(b)示出了相关的日志文件,图3(c)示出了所获得的相关日志片断的序列。
如图3(a)所示,业务逻辑按照物理机-虚拟机1-WAS服务器-应用1-物理机-虚拟机2-数据库2的执行顺序被执行。在执行期间,该业务逻辑的标识符被写入各个节点的日志文件中。如果在HTTP服务器发生故障事件,则首先根据管理模型,找到与该业务逻辑的执行过程有关的日志文件,如图3(b)所示,日志文件Log 1、Log 2和Log 3分别来自应用1、WAS服务器和数据库2。然后,根据该业务逻辑的标识符,从这些日志文件中获取相关的日志片断,并按照业务逻辑的执行顺序进行排序,所得到的日志片断的序列如图3(c)所示。依次检查这些日志片断,以得到错误日志片断,其中,Http服务器的错误日志片断为“HTTP 500”,表示“Http请求不可得”,WAS服务器的错误日志片断表示“交易回滚”,应用1的错误日志片断表示“连接错误”,数据库2的错误日志片断表示“表空间满错误”,AIX操作系统的错误日志片断表示“文件系统满错误”。然后,根据这些错误日志片断,确定故障事件的根原因。,在上述错误日志片断的序列中,首先是“HTTP 500”,根据在前面所述的规则,此时需要进一步分析随后的错误日志片断,这样,最终确定故障事件的根原因是“文件系统满错误”。
在同一个发明构思下,图4是根据本发明的一个实施例的用于诊断故障事件的装置400的示意性框图。下面结合附图,对本实施例进行详细描述,其中对于与前面实施例相同的部分,适当省略其说明。
如图4所示,本实施例的用于诊断故障事件的装置400包括:标识模块401,其在业务逻辑的执行期间,在执行该业务逻辑的各个节点的日志文件中标识与该业务逻辑的执行过程对应的日志片断;故障事件监控模块402,其监控在数据中心内是否发生故障事件;业务逻辑确定模块403,其在故障事件监控模块402监控到发生故障事件时,确定在发生故障事件的节点中正在执行的业务逻辑;日志文件选择模块404,其基于与数据中心对应的管理模型,选择与业务逻辑确定模块403所确定的业务逻辑的执行过程有关的日志文件,其中管理模型反映对应的数据中心的业务逻辑的部署和应用依赖性;以及诊断模块405,其根据所选择的日志文件,对故障事件进行诊断。
在本实施例的装置400中,在业务逻辑的执行期间,标识模块401在执行该业务逻辑的各个节点的日志文件中对与该业务逻辑的执行过程有关的日志片断进行标识。如前所述,为了使业务逻辑以及应用之间和/或服务之间的依赖关系被写入日志文件中,当执行业务逻辑时,在该业务逻辑所涉及的应用/服务等节点,除了在日志文件中写入与执行过程有关的信息外,还通过标识模块401对这些信息(日志片断)进行标识。在一个实施例中,标识模块401可包括标识符写入单元4011,用于将业务逻辑的标识符写入对应的日志片断中。具体地,业务逻辑的标识符首先被缓存在节点中,然后在写日志的时刻被标识符写入单元4011写入该节点的日志文件的相应日志片断中。
应当理解,虽然在此为方便说明,将标识模块401包含在本实施例的装置400中,但是本领域的普通技术人员应当理解,该标识模块401用于执行对日志文件的处理,其并不必须包含在该装置400中。
故障事件监控模块402可通过监控事件报告的接收或故障告警的产生,监控数据中心内故障事件的发生。在故障事件监控模块402监控到发生故障事件时,业务逻辑确定模块403确定在发生故障事件的节点中正在执行的业务逻辑,然后由日志文件选择模块404根据与数据中心对应的管理模型,选择与所确定的业务逻辑的执行过程有关的日志文件。
如前所述,管理模型反映了对应数据中心的业务逻辑的部署、应用依赖性和物理拓扑结构,其可包含业务逻辑部署链、应用依赖链和拓扑链,其中,业务逻辑部署链记录与数据中心内每个业务逻辑相关的节点,包括应用、服务、操作系统和物理机,应用依赖链记录应用之间和/或服务之间的依赖关系,拓扑链则记录数据中心的物理拓扑结构,即物理机及其所在的地理位置。因此,本实施例的装置400还可以包括模型建立模块,其用于在部署数据中心时,建立该数据中心的管理模型。
在管理模型只包含业务逻辑部署链和应用依赖链的情况下,在日志文件选择模块404中,节点获取单元4041基于管理模型中的业务逻辑部署链,获取与业务逻辑相关的节点,并由日志文件获取单元4042获取这些节点的日志文件。接着,对于所获取的与业务逻辑相关的节点中的每一个应用,由遍历单元4043遍历管理模型中的应用依赖链,以获取该应用所依赖的其它应用和/或服务,并由日志文件获取单元4042获取其它应用和/或服务的日志文件。然后,对于所获取的其它应用的每一个,由节点获取单元4041基于管理模型中的业务逻辑部署链,获取与上述其它应用的每一个相关的节点。然后,由日志文件获取单元4042获取这些节点的日志文件。
在管理模型还包含拓扑链的情况下,遍历单元4041还将遍历拓扑链,以确定数据中心的物理拓扑结构是否变化。当确定数据中心的物理拓扑结构发生变化时,由日志文件选择模块404中的写入单元4044将导致该变化的节点写入用于记录物理拓扑结构的变化的日志文件中。
当通过日志文件选择模块404选择了与业务逻辑有关的日志文件后,诊断模块405根据这些日志文件,进行故障事件的诊断。
在诊断模块405中,日志片断获取单元4051从这些日志文件中获取与业务逻辑的执行过程对应的日志片断。在本实施例中,日志片断获取单元4051对于每一个日志文件,根据业务逻辑的标识符,从该日志文件中获取与业务逻辑的执行过程对应的日志片断。然后,排序单元4052按照业务逻辑的执行顺序,对所获取的日志片断进行排序。
对于排序后的日志片断,检查单元4053检查这些日志片断以找出错误日志片断。在一个实施例中,在检查单元4053中,比较单元比较每一个日志片断与存储在对应节点上的正确日志片断,并由确定单元将与对应的正确日志片断不同的日志片断确定为错误日志片断。在另一个实施例中,在检查单元4053中,查找单元在每一个日志片断中查找异常关键字,然后确定单元将存在异常关键字的日志片断确定为错误日志片断。当然,本领域的普通技术人员容易知道,还可以采用其它方式确定错误日志片断。
此外,在诊断模块405中还可以包括原因确定单元4054,其根据检查单元4053所找出的错误日志片断,确定故障事件的根原因。在本实施例中,原因确定单元4054基于预先确定的规则分析错误日志片断,以确定故障事件的根原因。实际上,原因确定单元4054可以采用现有的专家诊断系统。
应当指出,本实施例的用于数据中心的诊断故障事件的装置400在操作上能够实现如图1所示的用于数据中心的诊断故障事件的方法。
进一步地,本实施例的装置400可以设置在数据中心内。另外,本实施例的装置400也可以与数据中心分开地设置,此时,其中的写入模块401和故障事件监控模块402被设置在数据中心内,故障事件监控模块402可通过各种形式的通信与业务逻辑确定模块403连接。
以上所公开的实施例的用于数据中心的诊断故障事件的方法可以在软件、硬件、或软件和硬件的结合中实现。硬件部分可以利用专用逻辑来实现。例如,上述实施例中的用于数据中心的诊断故障事件的装置及其各个组成部分可以由诸如超大规模集成电路或门阵列、诸如逻辑芯片、晶体管等的半导体、或者诸如现场可编程门阵列、可编程逻辑设备等的可编程硬件设备的硬件电路实现,也可以用由各种类型的处理器执行的软件实现,也可以由上述硬件电路和软件的结合实现。软件部分可以存储在存储器中,由适当的指令执行系统,例如微处理器、个人计算机(PC)或大型机来执行。
以上虽然通过示例性的实施例详细描述了本发明的用于数据中心的诊断故障事件的方法及其装置,但是以上这些实施例并不是穷举的,本领域技术人员可以在本发明的精神和范围内实现各种变化和修改。因此,本发明并不限于这些实施例,本发明的范围仅由所附的权利要求限定。

Claims (26)

1.一种用于数据中心的诊断故障事件的方法,包括:
监控在所述数据中心内是否发生故障事件;
如果发生故障事件,则
确定在发生所述故障事件的节点中正在执行的业务逻辑;
基于与所述数据中心对应的管理模型,选择与所述业务逻辑的执行过程有关的日志文件,其中所述管理模型反映所述数据中心的业务逻辑的部署和应用依赖性;以及
根据所述日志文件,对所述故障事件进行诊断。
2.根据权利要求1所述的方法,还包括:
在部署所述数据中心时,建立对应的管理模型;
其中,所述管理模型包含:
业务逻辑部署链,其对于所述数据中心内的每个业务逻辑,记录与该业务逻辑相关的节点,所述节点包括应用、服务、操作系统和物理机;以及
应用依赖链,其记录应用之间和/或服务之间的依赖关系。
3.根据权利要求2所述的方法,其中,所述选择与所述业务逻辑的执行过程有关的日志文件的步骤包括:
基于所述业务逻辑部署链,获取与所述业务逻辑相关的节点;
获取与所述业务逻辑相关的节点的日志文件;
对于与所述业务逻辑相关的节点中的应用,遍历所述应用依赖链,以获取所述应用所依赖的其它应用和/或服务;
获取所述其它应用和/或服务的日志文件;
对于所述其它应用,基于所述业务逻辑部署链,获取与所述其它应用相关的节点;以及
获取与所述其它应用相关的日志文件。
4.根据权利要求3所述的方法,其中,所述管理模型还包含:拓扑链,其记录所述数据中心的物理拓扑结构,所述物理拓扑结构包括物理机及其所在的地理位置;
所述选择与所述业务逻辑的执行过程有关的日志文件的步骤还包括:
遍历所述拓扑链,以确定所述数据中心的物理拓扑结构是否变化;以及
将导致所述变化的节点写入用于记录所述物理拓扑结构的变化的日志文件。
5.根据权利要求1所述的方法,其中,所述根据所述日志文件对所述故障事件进行诊断的步骤包括:
从所选择的日志文件中获取与所述业务逻辑的执行过程对应的日志片断;
对所述日志片断进行排序;以及
检查所述日志片断以找出错误日志片断。
6.根据权利要求5所述的方法,其中,所述根据所述日志文件对所述故障事件进行诊断的步骤还包括:
根据所述错误日志片断,确定所述故障事件的根原因。
7.根据权利要求5或6所述的方法,还包括:
在业务逻辑的执行期间,在执行该业务逻辑的各个节点的日志文件中标识与该业务逻辑的执行过程对应的日志片断。
8.根据权利要求7所述的方法,其中,所述在执行该业务逻辑的各个节点的日志文件中标识与该业务逻辑的执行过程对应的日志片断的步骤包括:
将业务逻辑的标识符写入对应的日志片断中。
9.根据权利要求8所述的方法,其中,所述从所选择的日志文件中获取与所述业务逻辑的执行过程对应的日志片断的步骤包括:
对于每一个日志文件,根据所述业务逻辑的标识符,从该日志文件中获取对应的日志片断。
10.根据权利要求5或6所述的方法,其中,所述对所述日志片断进行排序的步骤包括:
将所述日志片断按照所述业务逻辑的执行顺序进行排序。
11.根据权利要求5或6所述的方法,其中,所述检查所述日志片断以找出错误日志片断的步骤包括:
比较所述日志片断的每一个与存储在对应节点上的正确日志片断;以及
将与对应的正确日志片断不同的日志片断确定为错误日志片断。
12.根据权利要求5或6所述的方法,其中,所述检查所述日志片断以找出错误日志片断的步骤包括:
在所述日志片断中查找异常关键字;以及
将存在异常关键字的日志片断确定为错误日志片断。
13.根据权利要求6所述的方法,其中,所述确定所述故障事件的根原因的步骤包括:
基于预先确定的规则,分析所述错误日志片断,以确定所述故障事件的根原因。
14.一种用于数据中心的诊断故障事件的装置,包括:
故障事件监控模块,用于监控在所述数据中心内是否发生故障事件;
业务逻辑确定模块,用于在发生故障事件时,确定在发生所述故障事件的节点中正在执行的业务逻辑;
日志文件选择模块,用于基于与所述数据中心对应的管理模型,选择与所述业务逻辑的执行过程有关的日志文件,其中所述管理模型反映所述数据中心的业务逻辑的部署和应用依赖性;以及
诊断模块,用于根据所述日志文件,对所述故障事件进行诊断。
15.根据权利要求14所述的装置,还包括:模型建立模块,用于在部署所述数据中心时,建立对应的管理模型;
其中,所述管理模型包含:
业务逻辑部署链,其对于所述数据中心内的每个业务逻辑,记录与该业务逻辑相关的节点,所述节点包括应用、服务、操作系统和物理机;以及
应用依赖链,其记录应用之间和/或服务之间的依赖关系。
16.根据权利要求15所述的装置,其中,所述日志文件选择模块包括:
遍历单元,用于遍历所述应用依赖链,以获取某个应用所依赖的其它应用和/或服务;
节点获取单元,用于基于所述业务逻辑部署链,获取与所述业务逻辑相关的节点,以及获取与所述其它应用相关的节点;以及
日志文件获取单元,用于获取所述节点的日志文件,以及获取所述其它应用和/或服务的日志文件。
17.根据权利要求16所述的装置,其中,所述管理模型还包含:拓扑链,其记录所述数据中心的物理拓扑结构,所述物理拓扑结构包括物理机及其所在的地理位置;
所述遍历单元还用于遍历所述拓扑链,以确定所述数据中心的物理拓扑结构是否变化;
所述日志文件选择模块还包括:写入单元,用于将导致所述变化的节点写入用于记录所述物理拓扑结构的变化的日志文件。
18.根据权利要求14所述的装置,其中,所述诊断模块包括:
日志片断获取单元,用于从所选择的日志文件中获取与所述业务逻辑的执行过程对应的日志片断;
排序单元,用于对所述日志片断进行排序;以及
检查单元,用于检查所述日志片断以找出错误日志片断。
19.根据权利要求18所述的装置,其中,所述诊断模块还包括:
原因确定单元,用于根据所述错误日志片断,确定所述故障事件的根原因。
20.根据权利要求18或19所述的装置,还包括:
标识模块,用于在业务逻辑的执行期间,在执行该业务逻辑的各个节点的日志文件中标识与该业务逻辑的执行过程对应的日志片断。
21.根据权利要求20所述的装置,其中,所述标识模块包括:
标识符写入单元,用于将业务逻辑的标识符写入对应的日志片断中。
22.根据权利要求21所述的装置,其中,所述日志片断获取单元进一步被配置为对于每一个日志文件,根据所述业务逻辑的标识符,从该日志文件中获取对应的日志片断。
23.根据权利要求18或19所述的装置,其中,所述排序单元进一步被配置为将所述日志片断按照所述业务逻辑的执行顺序进行排序。
24.根据权利要求18或19所述的装置,其中,所述检查单元包括:
比较单元,用于比较所述日志片断的每一个与存储在对应的节点上的正确日志片断进行匹配;以及
确定单元,用于将与对应的正确日志片断不同的日志片断确定为错误日志片断。
25.根据权利要求18或19所述的装置,其中,所述检查单元包括:
查找单元,用于在所述日志片断中查找异常关键字;以及
确定单元,用于将存在异常关键字的日志片断确定为错误日志片断。
26.根据权利要求19所述的装置,其中,所述原因确定单元进一步被配置为基于预先确定的规则分析所述错误日志片断,以确定所述故障事件的根原因。
CN2010101050029A 2010-01-29 2010-01-29 用于数据中心的诊断故障事件的方法及装置 Pending CN102143008A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN2010101050029A CN102143008A (zh) 2010-01-29 2010-01-29 用于数据中心的诊断故障事件的方法及装置
US13/013,925 US8661291B2 (en) 2010-01-29 2011-01-26 Diagnosing a fault incident in a data center

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2010101050029A CN102143008A (zh) 2010-01-29 2010-01-29 用于数据中心的诊断故障事件的方法及装置

Publications (1)

Publication Number Publication Date
CN102143008A true CN102143008A (zh) 2011-08-03

Family

ID=44342677

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2010101050029A Pending CN102143008A (zh) 2010-01-29 2010-01-29 用于数据中心的诊断故障事件的方法及装置

Country Status (2)

Country Link
US (1) US8661291B2 (zh)
CN (1) CN102143008A (zh)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103377118A (zh) * 2012-04-23 2013-10-30 腾讯科技(深圳)有限公司 一种测试Flash引擎的方法及装置
CN104077328A (zh) * 2013-03-29 2014-10-01 百度在线网络技术(北京)有限公司 MapReduce分布式系统的作业诊断方法及设备
WO2016107425A1 (zh) * 2014-12-31 2016-07-07 华为技术有限公司 基于数据中心的故障分析方法和装置
CN106909550A (zh) * 2015-12-22 2017-06-30 中国移动通信集团吉林有限公司 一种数据处理系统和方法
CN106980627A (zh) * 2016-01-18 2017-07-25 中兴通讯股份有限公司 日志内容的显示方法及装置
CN106998255A (zh) * 2016-01-22 2017-08-01 腾讯科技(深圳)有限公司 一种反馈处理服务器、网络系统以及反馈处理方法
CN108885574A (zh) * 2016-03-29 2018-11-23 微软技术许可有限责任公司 用于监视和报告设计、编译和运行时的性能和正确性问题的系统
CN108880847A (zh) * 2017-05-16 2018-11-23 北京微影时代科技有限公司 一种定位故障的方法及装置
CN109213773A (zh) * 2017-07-06 2019-01-15 阿里巴巴集团控股有限公司 一种在线故障的诊断方法、装置及电子设备
CN109947614A (zh) * 2018-11-28 2019-06-28 阿里巴巴集团控股有限公司 多机房依赖监控方法、装置、设备及计算机可读存储介质
CN110401550A (zh) * 2018-04-24 2019-11-01 贵州白山云科技股份有限公司 客户异常的自动化诊断方法、装置、存储介质及计算设备
CN111897787A (zh) * 2020-06-17 2020-11-06 航天信息股份有限公司 一种面向业务逻辑实现日志输出的方法及装置

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9152487B2 (en) * 2011-09-30 2015-10-06 Microsoft Technology Licensing, Llc Service outage details in an error message
WO2013074090A1 (en) * 2011-11-15 2013-05-23 Hewlett-Packard Development Company, L.P. Mobilized sensor system
US10263836B2 (en) 2014-03-24 2019-04-16 Microsoft Technology Licensing, Llc Identifying troubleshooting options for resolving network failures
US9946614B2 (en) 2014-12-16 2018-04-17 At&T Intellectual Property I, L.P. Methods, systems, and computer readable storage devices for managing faults in a virtual machine network
JP6306499B2 (ja) * 2014-12-25 2018-04-04 クラリオン株式会社 障害情報提供サーバ、障害情報提供方法
JP6820473B2 (ja) * 2017-01-18 2021-01-27 富士通株式会社 影響範囲特定プログラム、影響範囲特定方法、および影響範囲特定装置
CN109710439B (zh) * 2018-12-12 2023-01-24 百度在线网络技术(北京)有限公司 故障处理方法和装置
CN109933798B (zh) * 2019-03-22 2023-11-03 中国银联股份有限公司 一种审计日志分析方法及装置
CN112416634B (zh) * 2019-08-22 2023-04-07 中移(苏州)软件技术有限公司 一种文件处理方法、装置及存储介质
CN110515758B (zh) * 2019-08-27 2023-03-31 北京博睿宏远数据科技股份有限公司 一种故障定位方法、装置、计算机设备及存储介质
CN110888755B (zh) * 2019-11-15 2023-04-11 亚信科技(中国)有限公司 一种微服务系统异常根因节点的查找方法及装置
CN110932910B (zh) * 2019-12-05 2022-08-16 锐捷网络股份有限公司 一种软件故障的日志记录方法及装置
CN112419094B (zh) * 2020-08-12 2024-03-29 国网江西省电力有限公司信息通信分公司 配电物联网数据产品构建方法、装置及可读存储介质
CN112235638B (zh) * 2020-10-10 2023-04-25 深圳创维-Rgb电子有限公司 异常信息定位方法、系统、服务器及存储介质
CN112559280B (zh) * 2020-12-04 2023-08-22 国网安徽省电力有限公司信息通信分公司 基于数据中台的数据全链路监控方法
CN113220907B (zh) * 2021-06-10 2024-04-05 京东科技控股股份有限公司 业务知识图谱的构建方法及装置、介质、电子设备
CN114374600A (zh) * 2021-12-27 2022-04-19 浪潮通信信息系统有限公司 一种基于大数据的网络运维方法、装置、设备及产品
US11645142B1 (en) * 2022-01-13 2023-05-09 International Business Machines Corporation Use sequential set index for root cause location and problem verification
US20240086302A1 (en) * 2022-09-07 2024-03-14 Hitachi, Ltd. Connectivity management device, system, method

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7096459B2 (en) * 2002-09-11 2006-08-22 International Business Machines Corporation Methods and apparatus for root cause identification and problem determination in distributed systems
US7263632B2 (en) 2003-05-07 2007-08-28 Microsoft Corporation Programmatic computer problem diagnosis and resolution and automated reporting and updating of the same
WO2005093607A1 (en) 2004-02-27 2005-10-06 Ebay Inc. Method and system to monitor a diverse heterogeneous application environment
US7949739B2 (en) 2004-03-12 2011-05-24 Emc Corporation Method and apparatus for determining causality mapping of distributed systems
US20060117091A1 (en) 2004-11-30 2006-06-01 Justin Antony M Data logging to a database
CN101146304B (zh) 2006-09-11 2011-04-06 中兴通讯股份有限公司 基于业务处理流程的日志记录方法和装置
CN100555240C (zh) 2007-01-16 2009-10-28 国际商业机器公司 用于诊断应用程序的方法和系统
US8046358B2 (en) 2007-02-16 2011-10-25 Ge Healthcare Context-based information retrieval
US8332690B1 (en) * 2008-06-27 2012-12-11 Symantec Corporation Method and apparatus for managing failures in a datacenter
US7996719B2 (en) * 2008-10-24 2011-08-09 Microsoft Corporation Expressing fault correlation constraints
US8392760B2 (en) * 2009-10-14 2013-03-05 Microsoft Corporation Diagnosing abnormalities without application-specific knowledge

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103377118B (zh) * 2012-04-23 2017-07-25 腾讯科技(深圳)有限公司 一种测试Flash引擎的方法及装置
CN103377118A (zh) * 2012-04-23 2013-10-30 腾讯科技(深圳)有限公司 一种测试Flash引擎的方法及装置
CN104077328A (zh) * 2013-03-29 2014-10-01 百度在线网络技术(北京)有限公司 MapReduce分布式系统的作业诊断方法及设备
CN104077328B (zh) * 2013-03-29 2019-05-24 百度在线网络技术(北京)有限公司 MapReduce分布式系统的作业诊断方法及设备
CN105812170B (zh) * 2014-12-31 2019-01-18 华为技术有限公司 基于数据中心的故障分析方法和装置
WO2016107425A1 (zh) * 2014-12-31 2016-07-07 华为技术有限公司 基于数据中心的故障分析方法和装置
CN105812170A (zh) * 2014-12-31 2016-07-27 华为技术有限公司 基于数据中心的故障分析方法和装置
US10831630B2 (en) 2014-12-31 2020-11-10 Huawei Technologies Co., Ltd. Fault analysis method and apparatus based on data center
CN106909550A (zh) * 2015-12-22 2017-06-30 中国移动通信集团吉林有限公司 一种数据处理系统和方法
CN106980627A (zh) * 2016-01-18 2017-07-25 中兴通讯股份有限公司 日志内容的显示方法及装置
CN106998255B (zh) * 2016-01-22 2020-01-10 腾讯科技(深圳)有限公司 一种反馈处理服务器、网络系统以及反馈处理方法
CN106998255A (zh) * 2016-01-22 2017-08-01 腾讯科技(深圳)有限公司 一种反馈处理服务器、网络系统以及反馈处理方法
CN108885574A (zh) * 2016-03-29 2018-11-23 微软技术许可有限责任公司 用于监视和报告设计、编译和运行时的性能和正确性问题的系统
CN108885574B (zh) * 2016-03-29 2022-04-01 微软技术许可有限责任公司 用于监视和报告设计、编译和运行时的性能和正确性问题的系统
CN108880847A (zh) * 2017-05-16 2018-11-23 北京微影时代科技有限公司 一种定位故障的方法及装置
CN109213773A (zh) * 2017-07-06 2019-01-15 阿里巴巴集团控股有限公司 一种在线故障的诊断方法、装置及电子设备
CN109213773B (zh) * 2017-07-06 2023-02-10 阿里巴巴集团控股有限公司 一种在线故障的诊断方法、装置及电子设备
CN110401550A (zh) * 2018-04-24 2019-11-01 贵州白山云科技股份有限公司 客户异常的自动化诊断方法、装置、存储介质及计算设备
CN109947614A (zh) * 2018-11-28 2019-06-28 阿里巴巴集团控股有限公司 多机房依赖监控方法、装置、设备及计算机可读存储介质
CN111897787A (zh) * 2020-06-17 2020-11-06 航天信息股份有限公司 一种面向业务逻辑实现日志输出的方法及装置

Also Published As

Publication number Publication date
US8661291B2 (en) 2014-02-25
US20110191630A1 (en) 2011-08-04

Similar Documents

Publication Publication Date Title
CN102143008A (zh) 用于数据中心的诊断故障事件的方法及装置
US8151248B1 (en) Method and system for software defect management
US7788205B2 (en) Using stochastic models to diagnose and predict complex system problems
US8667334B2 (en) Problem isolation in a virtual environment
CN108959059B (zh) 一种测试方法以及测试平台
US8661125B2 (en) System comprising probe runner, monitor, and responder with associated databases for multi-level monitoring of a cloud service
US11386154B2 (en) Method for generating a graph model for monitoring machinery health
US11323463B2 (en) Generating data structures representing relationships among entities of a high-scale network infrastructure
CN111382023B (zh) 代码故障定位方法、装置、设备及存储介质
CN102053906A (zh) 用于收集程序运行时信息的系统和方法
US11429574B2 (en) Computer system diagnostic log chain
CN110716539B (zh) 一种故障诊断分析方法和装置
EP2113874A1 (en) Method and system for monitoring computer-implemented processes
CN111108481B (zh) 故障分析方法及相关设备
US20100251029A1 (en) Implementing self-optimizing ipl diagnostic mode
KR101830936B1 (ko) 데이터베이스와 애플리케이션을 위한 웹기반 성능개선 시스템
CN115248782B (zh) 一种自动化测试方法、装置及计算机设备
CN116016270A (zh) 一种交换机测试管理方法、装置、电子设备和存储介质
CN114676198A (zh) 一种面向多模数据库的基准评测系统及其构建方法
CN115185907A (zh) 一种前端资源管理方法、装置、设备以及存储介质
CN114915643A (zh) 铁路信号集中监测系统的配置方法、装置、设备及介质
CN113392006A (zh) 一种使用capsys监控自动化测试日志的方法及设备
CN115599621A (zh) 微服务异常诊断方法、装置、设备及存储介质
CN114937316B (zh) 一种软件故障检测方法、装置、设备及介质
Buga et al. Adopting Formal Approaches for Monitoring Sensors of Intercloud Systems

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20110803