具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。
为解决传统的监控方式监控不到通过逻辑分析未发现或者未考虑到的情况,以及由于传统的监控方式需要大量的人力资源去监控全部的逻辑指标,造成监控效率低下的问题,本发明提供的系统监控方法及装置中,随后通过对系统中的数据进行整理,利用建立的网络模型来全面描述复杂的收银支付系统,并通过建立的网络流量模型描述收银支付系统中的数据在收银支付系统中的交互,最后通过本发明实施例中提供的智能分析中心进行数据分析,得出分析结论。实施例中以支付宝收银支付系统为例进行说明,其具体内容如下:
首先,整理数据。
通过采集用户在一定时间段(如30天)内在支付宝收银台支付系统的交易明细,整理得到包括:用户ID(identification,身份识别号)、订单号(trade_no)、业务类型(biz_id)、每笔交易使用的收银台类型(cashier_type)、用户交互所处的页面(formname)、用户使用的操作系统(system)、收银台版本号(version)及错误码(errorcode)等日志信息。
这里采集到的数据主要是系统中的各维度信息(即交易的属性),例如:业务类型、交易来源、支付银行渠道、收银台类型、交互所处页面、错误码、操作系统、收银台版本号等,上述为常用的分析维度,但本发明实施例中不仅仅局限于上述提及到的维度,可以自由扩充。维度越多,分析得越精准,但是分析时间越长。因此需要对常用维度进行分析能够在速度和精准度中取到折中,可以根据具体情况设定。
其次,建立网络模型。
建立网络通用模型是为了替代传统监控方式中,经过业务分析产生大量逻辑指标进行监控的方案。第一、本发明建立后的网络模型能够用有限的参数全面地描述复杂的收银支付系统。而传统的监控方案里面,需要用大量的逻辑指标但只能描述部分支付的状态,但这并不能够达到对支付系统的全面描述。第二、本发明实施例中提供的网络模型并不随着业务和系统的变更产生变化,而传统的监控方案在新增业务和系统变更时需要增加逻辑指标。第三、由于本发明实施例中提供的网络模型的通用性和参数较少,网络模型可以自动化生成。这使得本发明提供的监控方式通用性和兼容性更好,能够自适应跟踪业务和系统的变化,而不需要更变算法和模型。
在收集完收银支付系统的各维度数据后,需要建立一个通用的模型对系统进行状态描述。这里采用的是行为流网络模型(这个模型是通用的,与业务系统无关)。由于收银支付系统日益更新,埋点(即网络节点)行为不断更变,为了减少人工修改模型的成本,本发明实施例中采用一种自动化的网络模型建立方式。其中,本发明提供的实施例中自动化的网络模型建立方式包括:
1、按照订单号(trade_no)中用户的行为时间(也即日志时间logtime)的前后顺序进行自动化排序,获得用户对于该笔订单的操作次序(rnk)。其中,rnk代表用户的该笔订单是第rnk操作。
2、通过rnk的前后顺序,以编号rnk-1的行为数据为前节点,以编号为rnk的行为数据为后节点建立网络链路。也即每一条链路代表用户前一次操作页面(preform)到后一次操作页面(formname)的交互链路。
3、将链路存储在数据库中,完成了基于链路的网络模型的建立。
上述定义好的行为流的网络模型描述是明细行为数据,也即某笔订单用户从什么页面到达什么页面并且发生了什么样的事情(如选中了银行渠道、使用了什么样的服务、收银系统是什么)。个体的行为是千变万化的,但是大数据下,群体行为是稳定的。因此要建立群体的网络流量模型来描述收银支付系统。一旦这个模型发生异动,根据大数定理,群体必定受到影响,从而捕捉系统的数据异常。
网络流量模型是对上述网络模型的统计描述。传统的监控方式是在人为逻辑分析后产生相应的统计量。而本发明实施例中提供的网络流量模型用仅有的一个统计量(流量,也即流经支付宝收银支付系统各个网络链路的各个维度的流量)替换了原来大量的逻辑统计量。因为这个方案仅仅采用一个统计指标,规避了传统监控中的各种率、量、比例的指标,降低了模型的维护成本、提高了模型的兼容性和全面性。更不需要针对不同的逻辑指标设计不同的分析方案。
网络流量模型按照用户的交互流程和遇到的错误码粒度经行建模。也即按照前一页面(preform)、后一页面(formname)、错误码(errorcode)、交易来源(trade_from)等维度进行统计最后得到preform、formname、errorcode、trade_from、cnt的统计。也即在网络链路(preform、formname)上,遇到错误码errorcode的次数为cnt次。
最后,建立智能分析中心。
基于上述对支付收银系统的通用描述模型(不参杂业务和系统逻辑),对网络建立大面积自动化监控分析成为可能。而传统的监控使用了大量的逻辑指标,分析需要根据业务理解作出判断,产生分析算法,因此较难产生大规模自动化定位和分析。另外,本发明实施例中建立的上述模型描述支付系统的模型是通用的且不含业务逻辑的,不需要针对每个监控维度设立不同的逻辑分析方案。因此,智能分析中心是在新的网络模型和网络流量模型基础上的自动化分析方案。它抽象和集成了相关算法,使得监控和分析更加全面和自动化。并且传统的监控方式,要针对特定的指标抽象出特定的分析方法,只有分析师预期下的异常情况才可能被发现。而本发明实施例中提供的智能分析中心可以全盘扫描,无需预先设计,就能够发现很多不在预期中出现的异常问题。
智能分析中心是在网络模型和网络流量模型基础上进行异常分析的过程。它包括了判决、评估、定位和打印等4个过程。其中,判决负责判定网络流量模型中有无异常的网络流量(数据异常),也即是否某个给定维度上的某个链路上发生异常的错误。评估主要是评定异常量的大小以决定是否进行分析。定位是负责对数据异常(也即流量异常)进行分析,定位是什么业务维度或者系统维度出现问题导致的异常。最后输出异常结果并报警。
如图1所示,可以将智能分析中心看做一个监控系统,该智能分析中心的框架如下:判决神经元是判决功能的函数集合,负责判定某个维度或者大盘数据(流量)有无异常;评估神经元是评估功能的函数集合,负责判断影响力大小;维度神经元负责分析是否是某个维度出现了问题导致的异常,解释异常原因。它将数据异常翻译成业务或者系统异常;打印中心负责输出分析结论。
为了详细说明图1中智能分析中心如何对系统的维度数据进行判决、评估、定位及打印出结果。在本发明提供的一示例性实施例中,如图2所示,本发明提供了一种系统监控方法,该方法可以包括如下步骤:
在步骤S210中,获取测试维度数据。
以支付宝收银支付系统为例,这里的维度数据,是根据支付交易过程中的属性进行划分,如业务类型、交易来源、交易来源、支付银行渠道、收银台类型、交互所处的页面、产生的错误码、操作系统标识及收银台版本号等都是常用的分析维度,但本发明实施例中的维度数据并不局限于此,可以根据需要自由扩充,维度越多,分析得愈加准确。
需要说明的是,用户可以根据实际的需要,选择所需测试维度下的维度数据,或者对系统中所有维度下的维度数据进行测试,以判断其是否为异常维度数据,如果是异常维度数据,那么还可以计算该异常维度数据的影响力。
在步骤S220中,计算测试维度数据的异常概率。
在确定了所需测试的测试维度数据之后,需要计算该测试维度数据的异常概率。该测试数据的异常概率是通过与历史基准数据进行比较得到的,从统计学上来说,为该测试维度数据的当前水平相比历史基准水平所占历史波动的比例。
在步骤S230中,当测试维度数据的异常概率大于预设概率时,确定测试维度数据为异常维度数据。
结合图1,本发明实施例中通过判决神经元计算得到测试维度数据的异常概率,而判决神经元没有与任何的业务和系统理解相关联,仅仅就输入的测试维度数据与历史基准数据的进行比较判断测试维度数据的异常概率。那么在该测试维度数据的异常概率大于预先设置的预设概率时,就可以判断该测试维度数据为异常维度数据。
需要说明的是,测试维度数据中可能包括很多数据,如该测试维度数据中包括子维度数据等,一旦测试维度数据中有部分或全部的数据的异常概率超过预设概率,那么就可以确定该测试维度数据为异常测试维度数据。
在步骤S240中,计算异常维度数据的影响力值。
结合图1,评估神经元是在判决神经元判断某个维度数据d(可能为空,为空时代表不区分细化维度的大盘网络流量模型)有数据异常的情况下,判断异常的影响力大小。评估影响力一般和某个KPI(Key Performance Indicatiors)逻辑指标进行绑定,如交易成功率。示例性的,以支付订单支付中断率为例,今日订单支付中断率与昨日订单支付中断率之差为异常维度数据的影响力值,该影响力值可以为正,可以为负,也可以为零;当该影响力值为正值时,说明该异常维度数据对支付交易形成消极影响;当该影响力值为负值时,说明该异常维度数据对支付交易形成积极影响;当该影响力值为零时,说明该异常维度数据对支付交易没有影响。
在步骤S250中,当影响力值大于预设阈值时,确定异常维度数据为目标异常维度数据。
在异常维度数据的影响力值大于设定的预设阈值时,说明该异常维度数据对支付系统造成的负面影响不可忽视,应当作为目标异常维度数据进行进一步分析其造成的原因。
由于传统监控方式通常通过逻辑指标的抽象,提炼出相关的逻辑指标,如该逻辑指标是短信验证成功率和支付成功率等。然后通过对这些逻辑指标的监控,来发现异常和定位异常。但是传统的系统监控方式通常存在下述的缺点:
1、传统监控方式中在提炼逻辑指标时需要大量的逻辑分析为前提,这对于大面积机器化自动化的监控应用造成困难。对于一个系统的每一个可能出现的业务异常或者系统异常都需要设立独立的逻辑指标,一旦一个逻辑指标发生异常,能够快速找出异常原因。但是对于如支付宝收银台等如此复杂的系统,抽象出这些独立无关联的逻辑指标及管理这些逻辑指标是非常困难的。
2、基于很难抽象出和管理所有可能的逻辑指标,并通过这些逻辑指标确定出各个业务或者系统的异常,因此基于逻辑指标的监控相对来说会有较大的死角,即对于事前防控的问题能够快速发现,但对于事前没有设立逻辑指标的问题无法及时发现,造成监控死角。
3、由于传统的监控方式在发现异常后,由于逻辑指标不够细化,仍需要分析师介入分析异常维度,这样需要耗费大量的人力资源。
因此,本发明提供了一种自动化的监控方式,抽象和固化分析师的分析逻辑成为实现对复杂收银系统监控的重要前提和基础。在这个基础上,本发明能够快速发现用户体验问题,定位系统或者业务问题,然后改善体验。通过在支付宝收银台支付系统上测试,可以得出发明与传统的监控方式可以有如下区别:
通过上述本发明提供的监控方式及对传统监控方式的对比,使得本发明提供的系统监控方法,可以产生如下有益效果:
本发明提供的系统监控方法,通过获取所需测试的测试维度数据,并计算该测试维度数据的异常概率,在该测试维度数据的异常概率大于预设概率时,可以确定该测试维度数据为异常维度数据;然后计算该异常维度数据的影响力值,在该异常维度数据的影响力值大于预设阈值时,可以确定该异常维度数据为目标异常维度数据。由于该目标异常维度数据为异常概率和影响力均较大,说明该目标异常维度数据可能是造成系统的异常运行的关键因素,需要将该目标异常维度数据从系统的众多维度数据中提取出来做出进一步的判断,进而确定造成系统异常的原因。
为了详细阐述如何获取测试维度数据,作为图2方法的细化,如图3所示,在本发明提供的又一实施例中,步骤S210还可以包括如下步骤:
在步骤S211中,采集系统中的交易数据。
以支付宝收银台支付系统为例,在该系统正常运行过程中,实时都会产生大量的交易数据,根据实际需要,可以采集一定时间段内的交易数据,如到某一时刻起30天内系统中的交易数据。
在步骤S212中,获取交易数据的属性信息。
这里的属性信息可以是业务类型、交易来源、支付银行渠道、收银台类型、交互所处页面、错误码、操作系统及收银台版本号等等。
在步骤S213中,根据属性信息将交易数据分为不同的维度数据。
根据上述较大数据的属性信息,将这些交易数据分为对应在不同属性信息下的维度数据。
在步骤S214中,选取不同的维度数据中所需测试的维度数据作为测试维度数据。
可以根据在对系统监控过程中实际的需要,选取当前所需测试的维度数据作为测试维度数据。示例性的,在对系统进行监控的过程中,有些维度数据需要优先测试,那么可以将这些当前需要测试的维度数据作为测试维度数据。
为了详细阐述如何计算测试维度数据的异常概率,作为图2方法的细化,如图4所示,在本发明提供的又一实施例中,测试数据包括:错误码;步骤S220还可以包括如下步骤:
在步骤S221中,获取预先建立的历史基准库中测试维度数据对应的基准均值和样本方差。
历史基准库是指基于网络流量模型中的系统的历史状态,是所需测试的测试维度数据进行比较的基准。历史基准库刻画的网络流量通过均值和样本方差两个通用指标来进行衡量。假设某个交易来源i的某条链路(从前一页preform j到后一页formname k)到目前为止历史T天的发生错误码e在纬度d(这里的维度是指更加细化的维度,比如某个银行渠道、某个收银台的或者某个版本的系统等。在纬度d可以为空,也即不指定特定维度,为考察大盘交易的行为情况)的序列为
那么交易来源i的链路(j→k)发生错误码e在纬度d的基准均值为:
基准均值代表历史流量的平均水平。
相应的样本方差为样本方差代表历史流量的波动性大小。
其中,上述基准均值和样本方差公式中的cnt表示错误码e出现的次数,并且cnt、N、T、i、j、k、e和d均为整数,其含义分别为上述所述。
在步骤S222中,获取测试维度数据出现错误码的次数。
错误码出现的次数为上述中的cnt的值。
在步骤S223中,根据基准均值、样本方差和错误码的次数,计算测试维度数据在历史波动中所占的波动比例。
可以结合图1,通过判决神经元判决测试维度数据在该维度下的数据异常程度,假定在交易来源i的链路(j→k)发生错误码e下的纬度d的历史基准库(基准均值和样本方差)已经获取到。此外,假设当天交易来源i的链路(j→k)发生错误码e下的纬度d的错误次数为那么采用t分布检验法判定纬度d是否异常的判定方式如下:
计算t检验量其统计学意义标识目前的水平相当有历史基准水平所占历史波动的比例,tijked越大,其测试维度数据的异常可能性越大。
在步骤S224中,根据波动比例确定测试维度数据的异常概率。
根据t分布概率表,查自由度为T-1的t检验量为tijked的概率为Pijked。该概率Pijked为描述数据异常程度的异常概率,即Pijked为测试维度数据的异常概率。
判决神经元没有任何的业务和系统理解,仅仅就输入的数据和历史数据进行比较从而判断数据的概率大小。假定系统设定的阈值为P,那么Pijked≥P判定为异常。P越高,系统越不灵敏,准确率越高;P越低,系统越灵敏,准确率越低。
结合图1,评估神经元是在判决神经元判断某个维度d(可能为空,为空时代表不区分细化维度的大盘网络流量模型)有数据异常的情况下,即该维度d为异常维度数据时,通过评估神经元判断该异常情况对系统造成的影响力大小。评估影响力一般和某个KPI逻辑指标进行绑定,如交易成功率。以成功率为例,说明评估神经元判定规则。因此,作为图2方法的细化,在本发明提供的又一实施例中,如图5所示,步骤S240还可以包括如下步骤:
在步骤S241中,获取当日订单中断支付的订单量、当日订单总量、前一日订单中断支付的订单量和前一日订单总量。
在步骤S242中,根据当日订单中断支付的订单量和当日订单总量,确定出当日订单中断的订单比例。
在步骤S243中,根据前一日订单中断支付的订单量和前一日订单总量,确定出前一日订单中断的订单比例。
在步骤S244中,根据当日订单中断的订单比例和出前一日订单中断的订单比例,确定出测试维度数据的影响力值。
上述步骤S241至步骤S244中,假设已经检测出来在交易来源i的链路(j→k)纬度d发生错误码e数据异常。假设历史从当日(n=0)到前一日(n=1)交易来源i的链路(j→k)纬度d因为错误e造成订单中断支付的订单量是前一日和当日的总订单量分别为tcnt1和tcnt0。那么交易来源i的链路(j→k)在纬度d发生的错误码e对成功率变化的影响力为:
其中,Δ表示影响力值,也即因错误码造成的订单无法完成的(流失)的比例之差也就是对成功率的影响力。前一日中断订单量通过来表示,当日中断订单量通过来表示,前一日订单总量通过tcnt1来表示,当日订单总量通过tcnt0来表示。
评估神经元可以对系统中各种不同维度下的错误码的对成功率的影响力进行评估。
通过本发明上述实施例中提供的系统监控方法,在对系统中各维度数据进行监控过程中,通过对系统中各所需测试的测试维度数据的测试,可以很好的将系统中出现的异常概率较高,且影响力较大的目标异常维度数据检测出来。然而,在系统出现异常的情况下,且检测出的目标异常维度数据较多时,由于各维度间关联可能较为紧密,而一旦某一维度数据出现异常,也可能导致相关的其他维度数据出现异常。因此,需要对检测出的这些目标异常维度数据做出进一步的分析,确定出造成异常的确切原因,即具体是哪个维度造成的系统出现异常。
由于系统中不同维度的维度数据关联性较为紧密,如某一维度中的维度数据出现异常,相关联的其他维度中的维度数据也可能出现异常。因此,在上述确定出系统中出现的所有目标异常维度数据之后,为了确定出造成系统出现异常的真正原因,还需对确定出的所有目标异常维度数据进行进一步的分析判断。由于维度中的维度数据还可以包括更具体的子维度数据,因此,需要提取出目标异常维度数据中子维度数据进行分析。作为图2方法的细化,在本发明提供的又一实施例中,如图6所示,该方法还可以包括如下步骤:
在步骤S260中,提取目标异常维度数据中的子维度数据。
以支付宝收银台支付系统为例,由于不同维度中的维度数据又可以通过交叉产生不同的子维度数据,在确定出某维度中的维度数据为目标异常维度数据时,如果目标异常维度数据为多个,为了找出造成系统出现数据异常的真正原因,还需要对目标异常维度数据中的子维度数据进行进一步的分析。
在步骤S270中,确定子维度数据中目标异常子维度数据占目标异常维度数据的比例。
在获取到子维度中的子维度数据后,可以依据上述实施例中提供的计算测试维度数据的异常概率、计算影响力的算法,来确定某一子维度数据是否为目标异常子维度数据。即先计算所需测试的子维度数据的异常概率,当该异常概率大于某一预设的概率时,在计算该子维度数据的影响力值,当该影响力值大于某一预设数值时,就可以确定该测试子维度数据为目标异常子维度数据。通过确定出所有目标异常子维度数据的数量,就可以确定子维度数据中目标异常子维度数据占目标异常维度数据的比例。
在步骤S280中,当子维度数据中目标异常子维度数据占目标异常维度数据的比例大于预设比例时,确定目标异常维度数据对应的维度为非异常维度。
示例性的,仍旧以支付宝收银台支付系统为例,由于收银台的细化业务和系统维度(D)很多,比如银行渠道、收银台类型、操作系统、行业池等。每一个维度下面有若干的枚举值(d),比如银行渠道下面有中国银行渠道、建设银行渠道等,行业池下面有数娱行业、实物B2C行业等。
每一个维度Di都会有一个维度神经元进行控制。例如,在大盘的数据出现数据异常时,每一个维度神经元启动负责检查所属名下的维度是否出现异常。
示例性的:当天交易来源i的链路(j→k)发生错误码e下经过判决神经元的判定为异常,而且经过评估神经元评估对成功率有重大影响。那么各个台业务和系统维度分别开始自查。维度Di的神经元准备好数据,去咨询判决神经元当的情况下数据是否异常。
在维度神经元Di最终获知其名下的NDi(共Ni个枚举值)个维度出现异常。其中,维度神经元Di最终获知其名下的NDi的Ni个枚举值相当于Ni个子维度。每个子维度下对应有子维度数据。
维度神经元Di判定是不是普遍异常,也即时认为是所有的维度出现异常。其中可以设定为90%。业务可以根据不同的维度特性,设定不同的阈值。阈值越高,对该维度的预警要求越高。阈值越低,对该维度的预警要求越低。
如果维度神经元被判定其名下的枚举维度普遍异常,那么说明不是他自身的问题。维度神经元Di通知维度交叉中心并不是自己的问题。
如果维度神经元判定其名下的枚举值不是普遍异常,而是某几个维度出现异常。那么维度神经元告诉维度交叉中心是什么具体的业务或者系统维度(也即d)出现了问题。示例性的,在支付宝收银台支付系统中,用户可以通过支付宝将银行上一定数额的资金支付给商家。如,该商家可以是日常用户经常使用的美团网、大众点评及饿了么等网上商家;银行可以是中国银行、工商银行或者招商银行等。
例如,在用户在通过中国银行向美团网支付的过程中出现了数据异常,并且美团网和中国银行都出现了异常数据,为了进一步判断是美团网出现了问题,还是中国银行出现了问题,抑或二者都有问题。由于美团网和中国银行每天都包括很多的交易数据,例如,美团网的交易数据中,包括不同用户产生的交易订单数据,这些交易订单数据中包括正常交易数据和异常交易数据,如果这些正常交易数据中与中国银行无关,而异常交易数据与中国银行有关,那么很可能说明是中国银行出现了问题。
维度交叉中心会根据各个维度神经元提供的自检判定结果,在限定异常维度(也即每个维度神经元返回的异常维度枚举值d)的情况下,将准备好的数据去咨询评估神经元。
通过各个维度神经元排查,I个维度神经元Di(i=1,…,I)发现其名下子集di∈Di1部分数据异常,而Di2部分数据正常。维度交叉神经元需要排查其本质原因是Di1造成的还是Dj1(i,j=1,…,I)部分造成的。于是,维度神经元将数据分成4块,维度Di1∩Dj1,Di2∩Dj1,Di1∩Dj2,Di2∩Dj2.(其中Di1∩Dj1表示交易属性或者维度同时满足Di1,Dj1的数据部分),将4部分数据交给判决和评估神经元按照上诉方法判断。可以得到以下结果:
A)Di2∩Dj1部分结果异常,Di1∩Dj2部分结果异常,那么是Di1合并Dj1维度共同造成。
B)Di2∩Dj1部分结果正常,Di1∩Dj2部分结果异常,那么是Di1维度造成。
C)Di2∩Dj1部分结果异常,Di1∩Dj2部分结果正常,那么是Di2维度造成。
对于两个异常维度的交叉检验标记为函数Dij=f(Di1,Dj1),也即输入异常维度Di,Dj得到异常结果Dij(Dij可以是Di1,Dj1,或者Di1合并Dj1)
神经元交叉检验过程需要进行I-1次,也即。D11和D21的检验结果形成新的异常维度f(D11,D21)和D31进行交叉检验。直至所有维度都交叉检验结束,得到最终结果
D=f(……f(f(D11,D21),D31)……,DI1)
评估神经元会通知维度交叉中心出现异常的维度D和错误码对成功率的影响力是多大。
维度交叉中心会通知打印中心输出异常(包括什么业务或者系统问题、影响面如对成功率多广),并进行预警。
本发明提供的系统监控方法,通过获取所需测试的测试维度数据,并计算该测试维度数据的异常概率,在该测试维度数据的异常概率大于预设概率时,可以确定该测试维度数据为异常维度数据;然后计算该异常维度数据的影响力值,在该异常维度数据的影响力值大于预设阈值时,可以确定该异常维度数据为目标异常维度数据。由于该目标异常维度数据为异常概率和影响力均较大,说明该目标异常维度数据可能是造成系统的异常运行的关键因素,需要将该目标异常维度数据从系统的众多维度数据中提取出来做出进一步的判断,进而确定造成系统异常的原因。
并且通过本发明实施例中提供的系统监控方法,在监控的维度数据中测试维度数据的过程中,通过计算测试维度数据中的异常概率和影响力值,确定出目标异常维度数据。如果多个维度中的维度数据均为目标异常维度数据,为了确定造成系统异常的原因,进一步对目标异常维度数据中的子维度数据进行判断,其判断过程仍旧以计算该子维度数据的异常概率和影响力值来确定出出现异常的子维度数据,进而找出造成系统出现数据异常的原因。
通过以上的方法实施例的描述,所属领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:只读存储器(ROM)、随机存取存储器(RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
另外,作为对上述各实施例的实现,本发明实施例还提供了一种系统监控装置,如图7所示,该装置包括:测试维度数据获取单元10、异常概率计算单元20、异常维度数据确定单元30、影响力值计算单元40和目标异常维度数据确定单元50,其中,
测试维度数据获取单元10,用于获取测试维度数据;
异常概率计算单元20,用于计算所述测试维度数据的异常概率;
异常维度数据确定单元30,用于在所述测试维度数据的异常概率大于预设概率时,确定所述测试维度数据为异常维度数据;
影响力值计算单元40,用于计算所述异常维度数据的影响力值;
目标异常维度数据确定单元50,用于在所述影响力值大于预设阈值时,确定所述异常维度数据为目标异常维度数据。
在本发明又一实施例中,基于图7,如图8所示,所述测试维度数据获取单元10,包括:交易数据采集模块11、属性信息获取模块12、维度数据划分模块13和测试维度数据选取模块14,其中,
交易数据采集模块11,用于采集所述系统中的交易数据;
属性信息获取模块12,用于获取所述交易数据的属性信息;
维度数据划分模块13,用于根据所述属性信息将所述交易数据分为不同的维度数据;
测试维度数据选取模块14,用于选取所述不同的维度数据中所需测试的维度数据作为测试维度数据。
在本发明又一实施例中,基于图7,如图9所示,所述测试数据包括:错误码;所述异常概率计算单元20,包括:均值和方差获取模块21、次数获取模块22、波动比例计算模块23和异常概率计算模块24,其中,
均值和方差获取模块21,用于获取预先建立的历史基准库中所述测试维度数据对应的基准均值和样本方差;
次数获取模块22,用于获取所述测试维度数据出现所述错误码的次数;
波动比例计算模块23,用于根据所述基准均值、所述样本方差和所述错误码的次数,计算所述测试维度数据在历史波动中所占的波动比例;
异常概率计算模块24,用于根据所述波动比例确定所述测试维度数据的异常概率。
在本发明又一实施例中,基于图7,如图10所示,所述影响力值计算单元40,包括:订单总量获取模块41、第一订单比例确定模块42、第二订单比例确定模块43和影响力值确定模块44,其中,
订单总量获取模块41,用于获取当日订单中断支付的订单量、当日订单总量、前一日订单中断支付的订单量和前一日订单总量;
第一订单比例确定模块42,用于根据所述当日订单中断支付的订单量和当日订单总量,确定出当日订单中断的订单比例;
第二订单比例确定模块43,用于根据所述前一日订单中断支付的订单量和前一日订单总量,确定出前一日订单中断的订单比例;
影响力值确定模块44,用于根据所述当日订单中断的订单比例和所述出前一日订单中断的订单比例,确定出所述测试维度数据的影响力值。
在本发明又一实施例中,基于图7,如图11所示,该装置还可以包括:
子维度数据提取单元60,用于提取所述目标异常维度数据中的子维度数据;
目标异常子维度数据比例确定单元70,用于确定所述子维度数据中目标异常子维度数据占所述目标异常维度数据的比例;
非异常维度确定单元80,用于在所述子维度数据中目标异常子维度数据占所述目标异常维度数据的比例大于预设比例时,确定所述目标异常维度数据对应的维度为非异常维度。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
可以理解的是,本发明可用于众多通用或专用的计算系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。
本发明可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本发明,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本申请旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本发明未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。