分布式系统的监控方法和装置与流程

文档序号:18028908发布日期:2019-06-28 22:26阅读:277来源:国知局
本说明书一个或多个实施例涉及计算机领域,尤其涉及分布式系统的监控方法和装置。
背景技术
::系统/软件/网站/平台等在运行过程中,高可用性是其非常重要的一个健壮性指标之一,保持持续对外提供高度可用的特性和状态,是衡量一个系统好坏非常重要的一点。而实际过程中,会因为各种各样的主客观原因(比如代码缺陷、网络故障、服务器硬件故障等),导致系统(或软件等)发生各种各样的高可用方面的问题,比如中央处理器(centralprocessingunit,cpu)飙升、频繁垃圾回收(garbagecollection,gc)等问题。这个时候最需要的是能第一时间识别并精细化定位到是哪方面的高可用问题,以便进行第一时间的应急恢复,来避免系统的可用性持续受损。分布式系统:支持分布式处理的软件系统,是在由通信网络互联的多处理机体系结构上执行任务的系统。它包括分布式操作系统、分布式程序设计语言及其编译(解释)系统、分布式文件系统和分布式数据库系统等。分布式系统为由多个单机构成的集群。当前对于分布式系统的监控方法有两类:一类监控方法是只提供业务异动监控,这类监控解决方案能做到业务发生异动了通过信息预警出来,但这类业务监控更多是从业务变化的角度进行的异动感知,如果是因为高可用方面的问题引发的话,不能精准的定位到问题根源,带来系统人员接收到预警后,还需要结合一些其他信息再进一步分析问题的源头,增加了问题排查和应急的耗时。另一类监控方法是对于系统的部分高可用指标进行检测,基本上监控的都是集群平均异动,而有时候并不会所有单机一起发生异动,而只是其中个别单机发生了问题,这个时候集群整体的平均结果来看,异动的量级是极小的,不会触发到预警,导致问题无法被发现。并且,因为单机的数目很多以及链路比较复杂,当发生问题后,很难精准的定位到是哪个单机的哪个高可用指标发生了异动,无法做到快速定位。因此,希望能有改进的方案,能够及时发现高可用问题并精准定位问题点,以促进快速应急恢复。技术实现要素:本说明书一个或多个实施例描述了一种分布式系统的监控方法和装置,能够及时发现高可用问题并精准定位问题点,以促进快速应急恢复。第一方面,提供了一种分布式系统的监控方法,所述分布式系统为由多个单机构成的集群,方法包括:获取所述分布式系统在当前预设时间周期内的多项高可用指标数据,所述多项高可用指标数据包括,各单机的多项单机高可用指标数据,以及集群的多项集群高可用指标数据;获取当前预设时间周期内的每项高可用指标对应的异动衡量函数;分别利用对应的所述异动衡量函数,评估当前预设时间周期内的每项高可用指标数据,得到每项高可用指标数据是否需要预警的结果。在一种可能的实施方式中,所述获取所述分布式系统在当前预设时间周期内的多项高可用指标数据,包括:获取所述分布式系统在当前预设时间周期内的日志;针对同一来源地址的所述日志按照预设模型进行解析,得到所述各单机的多项单机高可用指标数据。进一步地,其中,所述获取所述分布式系统在当前预设时间周期内的多项高可用指标数据,还包括:对所述各单机的多项单机高可用指标数据按照预设算法进行运算,确定所述集群的多项集群高可用指标数据。进一步地,其中,所述日志包括运行性能日志和/或基础服务日志。进一步地,其中,所述运行性能日志包括cpu的使用情况数据、负荷情况数据、内存使用情况数据和gc次数数据中的至少一项;所述高可用指标包括cpu的使用情况参数、负荷情况参数、内存使用情况参数和gc参数中的至少一项。进一步地,其中,所述基础服务日志包括接口方法调用耗时、接口方法调用结果、数据库操作的接口方法耗时和数据库操作的接口方法结果中的至少一项;所述高可用指标包括接口方法调用耗时参数、接口方法调用结果参数、数据库操作的接口方法耗时参数和数据库操作的接口方法结果参数中的至少一项。在一种可能的实施方式中,其中,所述异动衡量函数通过以下方式确定:对所述当前预设时间周期之前的至少一个预设时间周期内获取的所述多项高可用指标数据分别进行统计分析,确定所述当前预设时间周期的每项高可用指标对应的指标基线公式;根据所述当前预设时间周期的每项高可用指标对应的指标基线公式,确定所述当前预设时间周期的每项高可用指标对应的异动衡量函数。进一步地,其中,所述对所述当前预设时间周期之前的至少一个预设时间周期内获取的所述多项高可用指标数据分别进行统计分析,确定所述当前预设时间周期的每项高可用指标对应的指标基线公式,包括:假定所述当前预设时间周期之前的至少一个预设时间周期内获取的所述多项高可用指标数据按照正态分布,根据数值分布的概率确定所述当前预设时间周期的每项高可用指标对应的指标基线公式。进一步地,其中,所述根据所述当前预设时间周期的每项高可用指标对应的指标基线公式,确定所述当前预设时间周期的每项高可用指标对应的异动衡量函数,包括:根据所述当前预设时间周期的每项高可用指标对应的指标基线公式,以及所述当前预设时间周期的每项高可用指标与上一个预设时间周期的每项高可用指标的环比比值,和/或同比比值,确定所述当前预设时间周期的每项高可用指标对应的异动衡量函数。在一种可能的实施方式中,其中,所述方法还包括:对所述多项高可用指标数据以及每项高可用指标数据是否需要预警的结果分别按照集群维度和单机维度进行信息聚合,组装成预警信息报文;根据所述预警信息报文对应的单机或集群,将所述预警信息报文以预设方式发送给与该单机或集群对应的预设终端。进一步地,其中,所述预设方式包括以下一种或多种方式:即时通信(instantmessaging,im)通知、短信和电话。第二方面,提供了一种分布式系统的监控装置,所述分布式系统为由多个单机构成的集群,装置包括:第一获取单元,用于获取所述分布式系统在当前预设时间周期内的多项高可用指标数据,所述多项高可用指标数据包括,各单机的多项单机高可用指标数据,以及集群的多项集群高可用指标数据;第二获取单元,用于获取当前预设时间周期内的每项高可用指标对应的异动衡量函数;评估单元,用于分别利用所述第二获取单元获取的对应的所述异动衡量函数,评估当前预设时间周期内的每项高可用指标数据,得到每项高可用指标数据是否需要预警的结果。第三方面,提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行第一方面的方法。第四方面,提供了一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现第一方面的方法。通过本说明书实施例提供的方法和装置,所述分布式系统为由多个单机构成的集群,首先获取所述分布式系统在当前预设时间周期内的多项高可用指标数据,所述多项高可用指标数据包括,各单机的多项单机高可用指标数据,以及集群的多项集群高可用指标数据,然后获取当前预设时间周期内的每项高可用指标对应的异动衡量函数,再分别利用对应的所述异动衡量函数,评估当前预设时间周期内的每项高可用指标数据,得到每项高可用指标数据是否需要预警的结果。由上可见,本说明书实施例中不仅获取了集群的多项集群高可用指标数据,而且获取了各单机的多项单机高可用指标数据,并且根据异动衡量函数判断每项高可用指标数据是否需要预警(即是否发生异动),其中,不同的预设时间周期或不同项的高可用指标均可能对应不同的异动衡量函数,通过对分布式系统的高可用指标的精细化监控,从而能够及时发现高可用问题并精准定位问题点,以促进快速应急恢复。附图说明为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。图1为本说明书披露的一个实施例的实施场景示意图;图2示出根据一个实施例的分布式系统的监控方法流程图;图3示出根据一个实施例的分布式系统的监控方法具体实现示意图;图4示出根据一个实施例的分布式系统的监控装置的示意性框图。具体实施方式下面结合附图,对本说明书提供的方案进行描述。图1为本说明书披露的一个实施例的实施场景示意图。该实施场景涉及对于分布式系统的监控,其中,所述分布式系统为由多个单机构成的集群。参见图1,分布式系统11为由单机a、单机b、单机c和单机d构成的集群,用户通过终端12(例如,手机、平板或个人电脑等)来访问或使用该分布式系统11,可以理解的是,集群中包括的单机的数目可以根据实际需求确定,图中所示单机的数目仅为举例说明。在一个分布式系统中,一组独立的计算机(即单机)展现给用户的是一个统一的整体,就好像是一个系统似的。系统拥有多种通用的物理和逻辑资源,可以动态的分配任务,分散的物理和逻辑资源通过计算机网络实现信息交换。系统中存在一个以全局的方式管理计算机资源的分布式操作系统。通常,对用户来说,分布式系统只有一个模型或范型。在操作系统之上有一层软件中间件(middleware)负责实现这个模型。分布式操作系统是以全局方式管理系统资源的,它可以为用户任意调度网络资源,并且调度过程是“透明”的。当用户提交一个作业时,分布式操作系统能够根据需要在系统中选择最合适的处理器(即单机),将用户的作业提交到该处理程序,在处理器完成作业后,将结果传给用户。在这个过程中,用户并不会意识到有多个处理器的存在,这个系统就像是一个处理器一样。需要说明的是,本说明书实施例中,分布式系统:支持分布式处理的软件系统,是在由通信网络互联的多处理机体系结构上执行任务的系统。它不仅包括分布式操作系统,还包括分布式程序设计语言及其编译(解释)系统、分布式文件系统和分布式数据库系统等。本说明书实施例中,对于分布式系统的监控,主要是针对分布式系统的高可用性的监控,通过对集群的以及单机的多种指标的监控,来判断各项指标是否发生异动,也就是说,判断各项指标是否需要预警,通过对分布式系统的高可用指标的精细化监控,从而能够及时发现高可用问题并精准定位问题点,以促进快速应急恢复。图2示出根据一个实施例的分布式系统的监控方法流程图,所述分布式系统为由多个单机构成的集群,例如图1中所示的分布式系统11。如图2所示,该实施例中分布式系统的监控方法包括以下步骤:步骤21,获取所述分布式系统在当前预设时间周期内的多项高可用指标数据,所述多项高可用指标数据包括,各单机的多项单机高可用指标数据,以及集群的多项集群高可用指标数据;步骤22,获取当前预设时间周期内的每项高可用指标对应的异动衡量函数;步骤23,分别利用对应的所述异动衡量函数,评估当前预设时间周期内的每项高可用指标数据,得到每项高可用指标数据是否需要预警的结果。下面描述以上各个步骤的具体执行方式。首先在步骤21,获取所述分布式系统在当前预设时间周期内的多项高可用指标数据,所述多项高可用指标数据包括,各单机的多项单机高可用指标数据,以及集群的多项集群高可用指标数据。其中,当前预设时间周期可以理解为预警周期,上述预警周期可以根据需求设定,例如,将预警周期设定为5分钟、半小时或一天等。在一个示例中,获取所述分布式系统在当前预设时间周期内的日志;针对同一来源地址的所述日志按照预设模型进行解析,得到所述各单机的多项单机高可用指标数据。可以理解的是,所述日志为分布式系统中每个单机记录的日志,日志的来源地址能够标识出该日志对应的单机,从而可以将单机高可用指标数据与单机对应起来,便于后续针对每个单机分析单机高可用指标数据是否为异动值,以及是否需要预警。在一个示例中,对所述各单机的多项单机高可用指标数据按照预设算法进行运算,确定所述集群的多项集群高可用指标数据。其中,上述预设算法可以但不限于对各单机的一项单机高可用指标数据求平均值、求最小值或求最大值。如表一所示为本说明书实施例提供的一种单机的单机高可用指标数据与集群的集群高可用指标数据的对应关系表。表一:单机高可用指标数据与集群高可用指标数据的对应关系表参照表一,以分布式系统为由单机a、单机b、单机c和单机d组成的集群为例,在获取各单机的一项高可用指标的高可用指标数据后,通过求最大值得到集群的该项高可用指标的高可用指标数据。其中,表一中,以上述预设算法为求最大值为例,其他的算法也是类似,在此不做赘述。在一个示例中,所述日志包括运行性能日志和/或基础服务日志。进一步地,所述运行性能日志包括cpu的使用情况数据、负荷情况数据、内存使用情况数据和gc次数数据中的至少一项;所述高可用指标包括cpu的使用情况参数、负荷情况参数、内存使用情况参数和gc参数中的至少一项。进一步地,所述基础服务日志包括接口方法调用耗时、接口方法调用结果、数据库操作的接口方法耗时和数据库操作的接口方法结果中的至少一项;所述高可用指标包括接口方法调用耗时参数、接口方法调用结果参数、数据库操作的接口方法耗时参数和数据库操作的接口方法结果参数中的至少一项。需要说明的是,上述预警周期通常大于日志的记录周期,例如,日志每分钟记录一次,而预警周期为5分钟,在这种情况下,在一个预警周期内,日志记录了一项高可用指标的多个高可用指标数据。为了便于分析,可以针对这多个高可用指标数据作出进一步的处理,例如,求最大值,求最小值,或求平均值,将处理后得到的一个高可用指标数据作为该预警周期内的该项高可用指标的高可用指标数据,后续判断是否出现异动值可以针对该处理后得到的一个高可用指标数据进行判断。如表二所示为本说明书实施例提供的一种日志记录的高可用指标数据与预警周期的待评估高可用指标数据的对应关系表。表二:日志的高可用指标数据与待评估高可用指标数据的对应关系表参照表二,以一个预警周期内单机a中的日志记录的cpu使用情况参数值为例,在获取该预警周期内的一项高可用指标的多个高可用指标数据后,通过求平均值得到待评估的该项高可用指标的高可用指标数据。其中,表二中,以上述预设算法为求平均值为例,其他的算法也是类似,在此不做赘述。然后在步骤22,获取当前预设时间周期内的每项高可用指标对应的异动衡量函数。本说明书实施例中,可以通过对历史数据的分析得到所述异动衡量函数,可以采用离线方式进行上述分析,也可以采用在线方式进行上述分析。其中,离线计算:离线计算就是在计算开始前已知所有输入数据,输入数据不会产生变化,且在解决一个问题后就要立即得出结果的前提下进行的计算。在大数据中属于数据的计算部分,在该部分中与离线计算对应的则是实时计算。可以理解的是,对于每个单机或集群的每项高可用指标需要分别确定异动衡量函数。在一个示例中,所述异动衡量函数通过以下方式确定:对所述当前预设时间周期之前的至少一个预设时间周期内获取的所述多项高可用指标数据分别进行统计分析,确定所述当前预设时间周期的每项高可用指标对应的指标基线公式;根据所述当前预设时间周期的每项高可用指标对应的指标基线公式,确定所述当前预设时间周期的每项高可用指标对应的异动衡量函数。具体地,可以假定所述当前预设时间周期之前的至少一个预设时间周期内获取的所述多项高可用指标数据按照正态分布,根据数值分布的概率确定所述当前预设时间周期的每项高可用指标对应的指标基线公式。例如,采用3sigma算法来进行上述计算。其中,上述指标基线公式可以理解为区间阈值,该区间阈值用于限定高可用指标的正常值所属的区间范围。本说明书实施例中,可以通过判断高可用指标数据是否落入上述区间范围,来确定该高可用指标数据是否为异动值,相应的是否需要预警。此外,除了依据上述指标基线公式之外,还可以结合其他条件来确定高可用指标数据是否为异动值。在一个示例中,根据所述当前预设时间周期的每项高可用指标对应的指标基线公式,以及所述当前预设时间周期的每项高可用指标与上一个预设时间周期的每项高可用指标的环比比值,和/或同比比值,确定所述当前预设时间周期的每项高可用指标对应的异动衡量函数。其中,环比比值为两个相邻时间段内的同一项高可用指标的高可用指标数据的比值,上述时间段可以为预设时间周期,例如,所述当前预设时间周期的每项高可用指标与上一个预设时间周期的每项高可用指标的比值。其中,同比比值为两个相邻时间段内的相同子区间的同一项高可用指标的高可用指标数据的比值,上述时间段可以天,上述子区间可以为预设时间周期,例如,今天的所述当前预设时间周期的每项高可用指标与昨天的处于同一时间段的预设时间周期的每项高可用指标的比值。在一个示例中,可以预先设定环比比值的环比阈值和同比比值的同比阈值,通过高可用指标数据与指标基线公式的比较,环比比值与环比阈值的比较,以及同比比值与同比阈值的比较,综合确定该高可用指标数据是否为异动值,以及是否需要预警。最后在步骤23,分别利用对应的所述异动衡量函数,评估当前预设时间周期内的每项高可用指标数据,得到每项高可用指标数据是否需要预警的结果。可以理解的是,当高可用指标数据被判断为异动值时,则该项高可用指标数据需要预警,否则不需要预警。在一个示例中,在步骤23之后,对所述多项高可用指标数据以及每项高可用指标数据是否需要预警的结果分别按照集群维度和单机维度进行信息聚合,组装成预警信息报文;根据所述预警信息报文对应的单机或集群,将所述预警信息报文以预设方式发送给与该单机或集群对应的预设终端。其中,所述预设方式包括以下一种或多种方式:即时通信(instantmessaging,im)通知、短信和电话。可以理解的是,每个单机或集群可能由不同的人员来维护或管理,本说明书实施例中,可以实现预警信息报文的区别化分发,更容易被用户关注到,从而提升用户体验。此外,可以在存在需要预警的高可用指标数据时,才组装上述预警信息报文,并进行报文的分发,达到故障提醒的效果;或者,也可以不管是否存在需要预警的高可用指标数据,均组装上述预警信息报文,并进行报文的分发,以达到用户对各项指标的时时监控。通过本说明书实施例提供的方法,所述分布式系统为由多个单机构成的集群,首先获取所述分布式系统在当前预设时间周期内的多项高可用指标数据,所述多项高可用指标数据包括,各单机的多项单机高可用指标数据,以及集群的多项集群高可用指标数据,然后获取当前预设时间周期内的每项高可用指标对应的异动衡量函数,再分别利用对应的所述异动衡量函数,评估当前预设时间周期内的每项高可用指标数据,得到每项高可用指标数据是否需要预警的结果。由上可见,本说明书实施例中不仅获取了集群的多项集群高可用指标数据,而且获取了各单机的多项单机高可用指标数据,并且根据异动衡量函数判断每项高可用指标数据是否需要预警(即是否发生异动),其中,不同的预设时间周期或不同项的高可用指标均可能对应不同的异动衡量函数,通过对分布式系统的高可用指标的精细化监控,从而能够及时发现高可用问题并精准定位问题点,以促进快速应急恢复。图3示出根据一个实施例的分布式系统的监控方法具体实现示意图,所述分布式系统为由多个单机构成的集群,例如图1中所示的分布式系统11。如图3所示,该实施例中分布式系统的监控方法主要通过如下模块来实现:模块31,用于实时元数据采集。其中,上述元数据包括集群高可用元数据和单机高可用元数据。一方面,基于实时数据平台的高可用元数据搜集整合,以获得单机高可用元数据。本说明书实施例中,可以采用目前行业类提供的多种的实时数据平台,通过在服务器上安装客户端(client),然后定时秒级从服务器上将更新的日志传输到数据分析平台。通过实时数据平台搜集原始日志信息,日志信息包括服务器的运行性能日志,如cpu、load、内存、gc情况等,也包括系统运行的基础服务日志,如接口方法的调用耗时和结果,数据库操作dao的接口方法耗时和结果。在一个示例中,可以通过对单机高可用元数据进行预设运算,以获得集群高可用元数据。另一方面,除了通过搜集日志的方式获得元数据外,也可以通过现存的其他监控平台,来获得集群方面的部分高可用数据,可以降低新获取数据的成本。模块32,用于实时数据建模。本说明书实施例中,模块32包括数据分析平台,对于从模块31得到的数据流,经过数据过滤、数据聚合和数据建模等一项或多项处理,将处理后的数据传递给离线数仓进行离线备份,或者将处理后的数据传递给模块34中的生产数据库(database,db),以使模块34对实时数据进行指标异动检测。由于模块31收集过来的日志信息一般都是原始的日志信息,这个时候需要对这些日志进行基础的建模,得到对应的高可用指标基于时间轴的数据流。举例来说,原始接口数据可能是这样的:2018-03-30t14:55:15.538+0800:2.987:[cms-concurrent-mark-start]2018-03-30t14:55:15.541+e800:2.991:[cms-concurrent-mark:0.003/0.003secs][times:user=0.02sys=0.00,real=0.00secs]2018-03-30t14:55:15.541+0800:2.991:[cms-concurrent-preclean-start]2018-03-30t14:55:15.559+0800:3.009:[cms-concurrent-preclean:0.e18/0.018secs][times:user=0.11sys=0.00,real=e.e2secs]2018-03-30t14:55:15.559+e8ee:3.ee9:[cms-concurrent-abortable-preclean-start]那么,数据建模需要基于日志的来源地址,结合这部分日志进行建模得到如下信息:appname-1-1,2018-03-3014:55,gc,1其中,appname-1-1代表服务器名,2018-03-3014:55代表时间,gc代表高可用指标(这里是gc次数),1代表高可用指标的数值,即高可用指标数据。然后将每分钟、每台服务器的日志分别按上述模型进行解析,即可以得到基于时间轴的高可用指标数据流。按照上述过程,将一个系统的所有高可用指标,均按此方式进行信息获取并数据建模解析,即可得到完整的精细化高可用指标数据。其中,数据过滤和数据聚合均为本领域常用技术术语,在此不再进行解释说明。模块33,用于获得高可用指标基线。因为各个指标的数据趋势和量级都是不一样的,且同一指标的不同系统,对应的数据结果和趋势也是不一样的,如果基于人工经验的方式设置异动预警阈值的话,工作量会非常大,而且随着时间的变化会变的不精准,所以这里采用基于算法的历史数据分析,来得到下一时刻的异动衡量函数,来智能化的得到最终是否应该预警的结果;实现上,将实时数据得到的所有数据全部写入到离线数仓,通过常用的异动检测算法对离线数据进行分析而得到指标基线公式,同时将该动态公式实时回写到生产db。其中,在选择异动衡量函数时,考虑到高可用指标的一大特点是,数据整体的趋势是比较稳定的,所以这里可以选用经典异动检测算法3sigma算法对离线数据进行基线计算。模块34,可称为高可用异动检测引擎,用于根据生产db中的实时数据和动态基线进行指标异动检测,并通过预警模块进行预警。在拿到实时数据平台建模后的基于时间轴的高可用指标数据和基于离在线数据建模得到的高空用指标基线公式后,循环将单系统的所有高可用指标数据作为高空用指标基线公式的输入,得到最终的预警标志位(是或非),最终得到所有高可用指标数据和是否需要预警的结果。引擎将这些指标分别按集群维度和单机维度进行各项高可用指标结果的信息聚合,组装成预警信息报文,以im通知、短信、电话等方式推送给对应的人员。信息聚合通知方式类似如下:高可用精细化监控平台-aappname详情集群指标:(表格)指标|当前异动值|稳定参考值|是否异动cpu|81|23|否loadl...fgctair-xx-成功率tair-xx-耗时接口-方法-成功率接口-方法-耗时dal-耗时dao-数据源-成功率dao-数据源-耗时基于上述机制,可做到系统管理人员在系统发生高可用异动的时候,精准的收到集群和单机各维度的精细化结果预警信息。本方案的实现,通过实时在线数据平台的优势,实时的获取到了系统的所有高可用指标的源数据,同时对各项指标进行建模后,能够得到集群和单机的所有指标信息;另,通过异动检测算法的投入,降低预警阈值设置成本和提升精准度;最后通过信息的聚合,可做到系统人员在系统发生高可用异动的时候,精准的收到集群和单机各维度的精细化聚合结果,而不是零散的多个单项预警信息,方便精准定位,降低预警成本。根据另一方面的实施例,还提供一种分布式系统的监控装置,所述分布式系统为由多个单机构成的集群。图4示出根据一个实施例的分布式系统的监控装置的示意性框图。如图4所示,该装置400包括:第一获取单元41,用于获取所述分布式系统在当前预设时间周期内的多项高可用指标数据,所述多项高可用指标数据包括,各单机的多项单机高可用指标数据,以及集群的多项集群高可用指标数据;第二获取单元42,用于获取当前预设时间周期内的每项高可用指标对应的异动衡量函数;评估单元43,用于分别利用所述第二获取单元42获取的对应的所述异动衡量函数,评估当前预设时间周期内的每项高可用指标数据,得到每项高可用指标数据是否需要预警的结果。可选地,作为一个实施例,所述第一获取单元41,具体用于获取所述分布式系统在当前预设时间周期内的日志;针对同一来源地址的所述日志按照预设模型进行解析,得到所述各单机的多项单机高可用指标数据。进一步地,所述第一获取单元41,还用于对所述各单机的多项单机高可用指标数据按照预设算法进行运算,确定所述集群的多项集群高可用指标数据。进一步地,所述第一获取单元41获取的所述日志包括运行性能日志和/或基础服务日志。进一步地,所述运行性能日志包括cpu的使用情况数据、负荷情况数据、内存使用情况数据和gc次数数据中的至少一项;所述高可用指标包括cpu的使用情况参数、负荷情况参数、内存使用情况参数和gc参数中的至少一项。进一步地,所述基础服务日志包括接口方法调用耗时、接口方法调用结果、数据库操作的接口方法耗时和数据库操作的接口方法结果中的至少一项;所述高可用指标包括接口方法调用耗时参数、接口方法调用结果参数、数据库操作的接口方法耗时参数和数据库操作的接口方法结果参数中的至少一项。可选地,作为一个实施例,所述装置还包括:确定单元,用于通过以下方式确定所述第二获取单元42获取的异动衡量函数:对所述当前预设时间周期之前的至少一个预设时间周期内获取的所述多项高可用指标数据分别进行统计分析,确定所述当前预设时间周期的每项高可用指标对应的指标基线公式;根据所述当前预设时间周期的每项高可用指标对应的指标基线公式,确定所述当前预设时间周期的每项高可用指标对应的异动衡量函数。进一步地,所述确定单元,具体用于假定所述当前预设时间周期之前的至少一个预设时间周期内获取的所述多项高可用指标数据按照正态分布,根据数值分布的概率确定所述当前预设时间周期的每项高可用指标对应的指标基线公式。进一步地,所述确定单元,具体用于根据所述当前预设时间周期的每项高可用指标对应的指标基线公式,以及所述当前预设时间周期的每项高可用指标与上一个预设时间周期的每项高可用指标的环比比值,和/或同比比值,确定所述当前预设时间周期的每项高可用指标对应的异动衡量函数。可选地,作为一个实施例,所述装置还包括:预警单元,用于对所述第一获取单元41获取的多项高可用指标数据以及所述评估单元43得到的每项高可用指标数据是否需要预警的结果分别按照集群维度和单机维度进行信息聚合,组装成预警信息报文;根据所述预警信息报文对应的单机或集群,将所述预警信息报文以预设方式发送给与该单机或集群对应的预设终端。进一步地,所述预设方式包括以下一种或多种方式:im通知、短信和电话。通过本说明书实施例提供的装置,所述分布式系统为由多个单机构成的集群,首先由第一获取单元41获取所述分布式系统在当前预设时间周期内的多项高可用指标数据,所述多项高可用指标数据包括,各单机的多项单机高可用指标数据,以及集群的多项集群高可用指标数据,然后由第二获取单元42获取当前预设时间周期内的每项高可用指标对应的异动衡量函数,再由评估单元43分别利用对应的所述异动衡量函数,评估当前预设时间周期内的每项高可用指标数据,得到每项高可用指标数据是否需要预警的结果。由上可见,本说明书实施例中不仅获取了集群的多项集群高可用指标数据,而且获取了各单机的多项单机高可用指标数据,并且根据异动衡量函数判断每项高可用指标数据是否需要预警(即是否发生异动),其中,不同的预设时间周期或不同项的高可用指标均可能对应不同的异动衡量函数,通过对分布式系统的高可用指标的精细化监控,从而能够及时发现高可用问题并精准定位问题点,以促进快速应急恢复。根据另一方面的实施例,还提供一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行结合图2或图3所描述的方法。根据再一方面的实施例,还提供一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现结合图2或图3所描述的方法。本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1