CN108572905B - 一种基于分布式计算的监控方法及系统 - Google Patents
一种基于分布式计算的监控方法及系统 Download PDFInfo
- Publication number
- CN108572905B CN108572905B CN201810367728.6A CN201810367728A CN108572905B CN 108572905 B CN108572905 B CN 108572905B CN 201810367728 A CN201810367728 A CN 201810367728A CN 108572905 B CN108572905 B CN 108572905B
- Authority
- CN
- China
- Prior art keywords
- data
- baseline
- index data
- monitoring index
- monitoring
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3006—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3065—Monitoring arrangements determined by the means or processing involved in reporting the monitored data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
- G06F18/232—Non-hierarchical techniques
- G06F18/2321—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
- G06F18/23213—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Quality & Reliability (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Artificial Intelligence (AREA)
- Probability & Statistics with Applications (AREA)
- Mathematical Physics (AREA)
- Testing And Monitoring For Control Systems (AREA)
- Alarm Systems (AREA)
Abstract
本申请公开了一种基于分布式计算的监控方法,包括,采集历史监控指标数据,基于聚类算法将所述历史监控指标数据分类为分类历史监控指标数据,基于所述分类历史监控指标数据生成基线数据,采集目标监控指标数据,基于与所述目标监控指标数据相匹配的基线数据对所述目标监控指标数据进行监控。本申请提供了一种基于分布式计算的监控方法,与现有技术相比无需人为介入,即可自动基于历史数据生成告警基线,从而得到更精准的基线,使得监控系统的告警更加精确。
Description
技术领域
本申请涉及系统监控技术领域,尤其涉及一种基于分布式计算的监控方法及系统。
背景技术
在系统的运维中,监控系统起着非同小可的作用,而判定系统正常运行与否并给予运维人员主要参考依据的是监控系统的告警。因此,为了确保应用系统安全平稳的运行,建立一套有效且智能的监控系统是必不可少的。在监控系统中,首先我们需要分辨出能够反映应用系统是否正常运行的标准,然后将其量化成具体的监控指标,设定参考值并形成告警规则,再将指标值和参考值联机进行对比,如果指标值超出了设置的参考值范围,则产生告警并通知相关人员以便及时发现和处理问题。
现有监控装置在告警策略上仍然有很多人为的介入,这些因素使得整个监控体系存在主观的猜想与推断,导致告警的准确性降低,比如运维人员根据经验获知节假日的交易量普遍高于平时的工作日,因此在节假日时,将基线人为拉高,设置更宽的告警范围等,这些方式导致基线是人为修改的,并不是真正计算得到。此外所使用的数据过滤规则也比较简单,容易导致基线的失真。且随着监控指标的增多,计算量的增长也会使得现有监控装置存在负载能力不够的问题。
因此,如何保证监控系统中指标的告警基线的精准度成为了本领域技术人员亟需解决。
发明内容
有鉴于此,本申请提供了一种基于分布式计算的监控方法,与现有技术相比无需人为介入,即可自动基于历史数据生成告警基线,从而得到更精准的基线,使得监控系统的告警更加精确。
本申请提供了一种基于分布式计算的监控方法,包括:
采集历史监控指标数据;
基于聚类算法将所述历史监控指标数据分类为分类历史监控指标数据;
基于所述分类历史监控指标数据生成基线数据;
采集目标监控指标数据;
基于与所述目标监控指标数据相匹配的基线数据对所述目标监控指标数据进行监控。
优选地,还包括:
当所述历史监控指标数据中存在数据缺失时,采用数据平滑处理生成缺失的数据。
优选地,所述采用数据平滑处理生成缺失的数据包括:
取缺失的数据的相邻时间点的数据计算平均值,所述平均值即为所述缺失数据的值。
优选地,所述采用数据平滑处理生成缺失的数据包括:
获取一个新的数据代替缺失的数据。
优选地,所述基于所述分类历史监控指标数据生成基线数据包括:
基于所述分类历史监控指标数据计算正常指标判断条件;
基于所述正常指标判断条件过滤所述分类历史监控指标数据中的异常点;
基于过滤后的分类历史监控指标数据生成基线数据。
一种基于分布式计算的监控系统,包括第一指标采集模块、分类模块、基线生成模块、第二指标采集模块及监控模块,其中:
所述第一指标采集模块用于采集历史监控指标数据;
所述分类模块用于基于聚类算法将所述历史监控指标数据分类为分类历史监控指标数据;
所述基线生成模块用于基于所述分类历史监控指标数据生成基线数据;
所述第二指标采集模块用于采集目标监控指标数据;
所述监控模块用于基于与所述目标监控指标数据相匹配的基线数据对所述目标监控指标数据进行监控。
优选地,还包括数据平滑模块,其中:
所述数据平滑模块用于当所述历史监控指标数据中存在数据缺失时,采用数据平滑处理生成缺失的数据。
优选地,所述采用数据平滑处理生成缺失的数据包括:
取缺失的数据的相邻时间点的数据计算平均值,所述平均值即为所述缺失数据的值。
优选地,所述采用数据平滑处理生成缺失的数据包括:
获取一个新的数据代替缺失的数据。
优选地,所述基线生成模块包括,判断条件计算单元、过滤单元及基线生成单元,其中:
所述判断条件计算单元用于基于所述分类历史监控指标数据计算正常指标判断条件;
所述过滤单元用于基于所述正常指标判断条件过滤所述分类历史监控指标数据中的异常点;
所述基线生成单元用于基于过滤后的分类历史监控指标数据生成基线数据。
综上所述,本申请公开了一种基于分布式计算的监控方法,包括,采集历史监控指标数据,基于聚类算法将所述历史监控指标数据分类为分类历史监控指标数据,基于所述分类历史监控指标数据生成基线数据,采集目标监控指标数据,基于与所述目标监控指标数据相匹配的基线数据对所述目标监控指标数据进行监控。本申请提供了一种基于分布式计算的监控方法,与现有技术相比无需人为介入,即可自动基于历史数据生成告警基线,从而得到更精准的基线,使得监控系统的告警更加精确。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请公开的一种基于分布式计算的监控方法的实施例1的流程图;
图2为本申请公开的一种基于分布式计算的监控方法的实施例2的流程图;
图3为本申请公开的一种基于分布式计算的监控方法的实施例3的流程图;
图4为本申请公开的一种基于分布式计算的监控系统的实施例1的结构示意图;
图5为本申请公开的一种基于分布式计算的监控系统的实施例2的结构示意图;
图6为本申请公开的一种基于分布式计算的监控系统的实施例3的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
如图1所示,为本申请公开的一种基于分布式计算的监控方法的实施例1的流程图,包括:
S101、采集历史监控指标数据;
本文中的监控系统包括监控信息系统各项指标数据的监控系统。监控的指标包括包括CPU使用率、内存使用量、交易的吞吐量或每秒交易量(TPS)、交易成功率、平均响应时间等。从数据库或者接口获取历史监控指标数据,例如被监控指标数据与数据监控频率等相关参数。在获取到历史监控指标数据后,还需要将历史监控指标数据的时间做规范化处理。本申请中,可以对历史监控指标数据进行预处理,并存储在分布式数据库中,再利用分布式数据库中存储的历史监控指标数据进行后续步骤。
S102、基于聚类算法将历史监控指标数据分类为分类历史监控指标数据;
计算基线的第一步是将不同日期的历史数据进行聚类。一些交易系统在工作日与节假日的交易量是有明显区别的,如果将这两种日期类型的数据混合在一起进行基线计算,那么得到的基线一定是不精确的,例如在节假日时,下基线太低,这可能导致被监控系统发生问题交易量下降时无法发出告警,相应的,工作日时,上基线会过高。因此这两种类别的日期需要各自单独计算基线,不能混合。我们采用聚类的方法,本申请使用K-Means算法来实现。将已有的历史数据进行聚类,初始我们将类别分为两类,根据得到的聚类结果判断这种分类是否可以接受,如果效果不好再尝试加入其他的分类(比如增加双十一双十二等交易量会激增的特定类别)。每个系统由于功能不同,再加上监控的指标也不同,因此需要根据情况来设置K-Means方法的分类。此外,在分类之后,需要从基线参数配置中获取样本空间大小及其它参数用来进行后续的基线计算。
S103、基于分类历史监控指标数据生成基线数据;
对分类历史监控指标数据进行取最大值与最小值即可获得某一时刻的上基线点与下基线点,将这些点连接起来就得到了上下基线。由于动态基线是由许多的点连接组成的,因此基线计算可以看成是这些时间点上的数值计算。我们将这些点的数值计算分发到不同的计算节点上去完成,然后再汇聚到一起就可以组成整条基线了。
S104、采集目标监控指标数据;
调用当前的需要被监控的指标信息,即目标监控指标数据。
S105、基于与目标监控指标数据相匹配的基线数据对目标监控指标数据进行监控;
因为之前的步骤中进行了分类,因此,此处对目标监控指标数据进行监控,需要调用相同类别的基线来进行。首先需要将目标监控指标数据与基线进行匹配,找到匹配的基线后,再根据基线与预先设置的告警策略对目标监控指标数据进行监控。
此外,在本申请中,完成基线计算后,可以将基线进行数据持久化,使得到的基线得以保存。
在系统的运维中,监控系统起着非同小可的作用,而判定系统正常运行与否并给予运维人员主要参考依据的是监控系统的告警。因此,为了确保应用系统安全平稳的运行,建立一套有效且智能的监控系统是必不可少的。在监控系统中,首先我们需要分辨出能够反映应用系统是否正常运行的标准,然后将其量化成具体的监控指标,设定参考值并形成告警规则,再将指标值和参考值联机进行对比,如果指标值超出了设置的参考值范围,则产生告警并通知相关人员以便及时发现和处理问题。
根据运维经验,应用系统可被量化的监控指标有很多,从资源层面有CPU使用率、内存使用量、磁盘使用空间、数据库连接数等,从业务层面上有交易的吞吐量或每秒交易量(TPS)、交易成功率、平均响应时间等。一般情况下CPU使用率只要低于某个预警值就可以正常运转不影响工作比如90%,那么我们就可以简单的设置一条针对CPU使用率的告警规则,即:CPU大于90%则告警;而例如每秒交易量这类指标是带有业务属性的,比如某些系统凌晨的交易量几乎为零,上午和下午业务发生的高峰期间交易量会达到峰值,午间休息时略有下降,营业时间结束后交易量会逐步降低,对于此类指标值在一天内从0到峰值都是正常取值范围内的监控指标,就不能简单的制定告警规则为低于某值来预警指标值突降等情况了。不仅如此,随着现在应用的数量增加,需要监控的指标也越来越多,基线的计算量变得十分庞大。
目前业界已有针对不同的指标使用不同的告警策略的方案,如CPU使用率采用单一阈值策略,一天中的交易量使用动态基线策略,波动告警策略,这种混合策略已经比以前使用单一告警策略的方式精准了许多,但是在策略上仍然有很多人为的介入,这些因素使得整个监控体系依然存在着运维人的主观判断,比如运维人员根据经验获知节假日的交易量普遍高于平时的工作日,因此在节假日时,将基线人为拉高,设置更宽的告警范围等。如何获得更客观更精确的告警已经成为了目前业内主要的关注点。
本申请提供了一种基于分布式计算的监控方法,与现有技术相比无需人为介入,即可自动基于历史数据生成告警基线,从而得到更精准的基线,使得监控系统的告警更加精确。
本申请首先对历史数据进行聚类,通过数据自身的规律来实现分组,达到工作日、非工作日及其他特殊日期采用不同基线进行监控的效果,最大程度上避免人为干预造成的误差。在聚类完成后,再对数据进行过滤,本申请中的异常点剔除模块采用改进的格拉布斯方法,计算高效且结果可靠。不仅如此,本申请中的基线计算模块使用了分布式的计算方法,将计算任务分配到各个计算节点,最终再进行汇总,横向扩展性高,能承载大规模的并发计算。使用本申请所叙述的方式获得的动态基线更符合真实的指标数据应有的走势,作为指标告警的评判依据更为可靠。本申请中的智能监控方法能有效地解决基线不精确导致的告警误报,漏报等问题。
如图2所示,为本申请公开的一种基于分布式计算的监控方法的实施例2的流程图,包括:
S201、采集历史监控指标数据;
本文中的监控系统包括监控信息系统各项指标数据的监控系统。监控的指标包括包括CPU使用率、内存使用量、交易的吞吐量或每秒交易量(TPS)、交易成功率、平均响应时间等。从数据库或者接口获取历史监控指标数据,例如被监控指标数据与数据监控频率等相关参数。在获取到历史监控指标数据后,还需要将历史监控指标数据的时间做规范化处理。本申请中,可以对历史监控指标数据进行预处理,并存储在分布式数据库中,再利用分布式数据库中存储的历史监控指标数据进行后续步骤。
S202、当历史监控指标数据中存在数据缺失时,采用数据平滑处理生成缺失的数据;
假如按周期顺序采样时某一个时间点的数据不存在,就需要采用数据平滑的方式来保证样本个数,如表1所示:
序号 | 时间 | 数值 |
1 | 2013-6-26 00:51:00 | 75 |
2 | 2013-6-25 00:51:00 | 50 |
3 | 2013-6-24 00:51:00 | 68 |
4 | 2013-6-23 00:51:00 | 120 |
5 | 2013-6-22 00:51:00 | 90 |
6 | 2013-6-21 00:51:00 | 33 |
7 | 2013-6-20 00:51:00 | null |
8 | 2013-6-19 00:51:00 | 84 |
9 | 2013-6-18 00:51:00 | 71 |
10 | 2013-6-17 00:51:00 | 65 |
序号为7的数据为缺失的数据。
数据的平滑有两种方式:
(1)取缺失的数据的相邻时间点的数据计算平均值,平均值即为缺失数据的值;
如表2所示
时间 | 数值 |
2013-6-20 00:50:00 | 50 |
2013-6-20 00:52:00 | 42 |
计算平均值(50+42)/2=46,即:
7 | 2013-6-20 00:51:00 | 46 |
2)获取一个新的数据代替缺失的数据,例如动态扩大样本空间,继续在上一个周期的对应时间点进行取值。
11 | 2013-6-16 00:51:00 | 46 |
S203、基于聚类算法将历史监控指标数据分类为分类历史监控指标数据;
计算基线的第一步是将不同日期的历史数据进行聚类。一些交易系统在工作日与节假日的交易量是有明显区别的,如果将这两种日期类型的数据混合在一起进行基线计算,那么得到的基线一定是不精确的,例如在节假日时,下基线太低,这可能导致被监控系统发生问题交易量下降时无法发出告警,相应的,工作日时,上基线会过高。因此这两种类别的日期需要各自单独计算基线,不能混合。我们采用聚类的方法,本申请使用K-Means算法来实现。将已有的历史数据进行聚类,初始我们将类别分为两类,根据得到的聚类结果判断这种分类是否可以接受,如果效果不好再尝试加入其他的分类(比如增加双十一双十二等交易量会激增的特定类别)。每个系统由于功能不同,再加上监控的指标也不同,因此需要根据情况来设置K-Means方法的分类。此外,在分类之后,需要从基线参数配置中获取样本空间大小及其它参数用来进行后续的基线计算。
S204、基于分类历史监控指标数据生成基线数据;
对分类历史监控指标数据进行取最大值与最小值即可获得某一时刻的上基线点与下基线点,将这些点连接起来就得到了上下基线。由于动态基线是由许多的点连接组成的,因此基线计算可以看成是这些时间点上的数值计算。我们将这些点的数值计算分发到不同的计算节点上去完成,然后再汇聚到一起就可以组成整条基线了。
S205、采集目标监控指标数据;
调用当前的需要被监控的指标信息,即目标监控指标数据。
S206、基于与目标监控指标数据相匹配的基线数据对目标监控指标数据进行监控;
因为之前的步骤中进行了分类,因此,此处对目标监控指标数据进行监控,需要调用相同类别的基线来进行。首先需要将目标监控指标数据与基线进行匹配,找到匹配的基线后,再根据基线与预先设置的告警策略对目标监控指标数据进行监控。
此外,在本申请中,完成基线计算后,可以将基线进行数据持久化,使得到的基线得以保存。
在系统的运维中,监控系统起着非同小可的作用,而判定系统正常运行与否并给予运维人员主要参考依据的是监控系统的告警。因此,为了确保应用系统安全平稳的运行,建立一套有效且智能的监控系统是必不可少的。在监控系统中,首先我们需要分辨出能够反映应用系统是否正常运行的标准,然后将其量化成具体的监控指标,设定参考值并形成告警规则,再将指标值和参考值联机进行对比,如果指标值超出了设置的参考值范围,则产生告警并通知相关人员以便及时发现和处理问题。
根据运维经验,应用系统可被量化的监控指标有很多,从资源层面有CPU使用率、内存使用量、磁盘使用空间、数据库连接数等,从业务层面上有交易的吞吐量或每秒交易量(TPS)、交易成功率、平均响应时间等。一般情况下CPU使用率只要低于某个预警值就可以正常运转不影响工作比如90%,那么我们就可以简单的设置一条针对CPU使用率的告警规则,即:CPU大于90%则告警;而例如每秒交易量这类指标是带有业务属性的,比如某些系统凌晨的交易量几乎为零,上午和下午业务发生的高峰期间交易量会达到峰值,午间休息时略有下降,营业时间结束后交易量会逐步降低,对于此类指标值在一天内从0到峰值都是正常取值范围内的监控指标,就不能简单的制定告警规则为低于某值来预警指标值突降等情况了。不仅如此,随着现在应用的数量增加,需要监控的指标也越来越多,基线的计算量变得十分庞大。
目前业界已有针对不同的指标使用不同的告警策略的方案,如CPU使用率采用单一阈值策略,一天中的交易量使用动态基线策略,波动告警策略,这种混合策略已经比以前使用单一告警策略的方式精准了许多,但是在策略上任然有很多人为的介入,这些因素使得整个监控体系依然存在着运维人的主观判断,比如运维人员根据经验获知节假日的交易量普遍高于平时的工作日,因此在节假日时,将基线人为拉高,设置更宽的告警范围等。如何获得更客观更精确的告警已经成为了目前业内主要的关注点。
本申请提供了一种基于分布式计算的监控方法,与现有技术相比无需人为介入,即可自动基于历史数据生成告警基线,从而得到更精准的基线,使得监控系统的告警更加精确。
如图3所示,为本申请公开的一种基于分布式计算的监控方法的实施例3的流程图,包括:
S301、采集历史监控指标数据;
本文中的监控系统包括监控信息系统各项指标数据的监控系统。监控的指标包括包括CPU使用率、内存使用量、交易的吞吐量或每秒交易量(TPS)、交易成功率、平均响应时间等。从数据库或者接口获取历史监控指标数据,例如被监控指标数据与数据监控频率等相关参数。在获取到历史监控指标数据后,还需要将历史监控指标数据的时间做规范化处理。本申请中,可以对历史监控指标数据进行预处理,并存储在分布式数据库中,再利用分布式数据库中存储的历史监控指标数据进行后续步骤。
S302、基于聚类算法将历史监控指标数据分类为分类历史监控指标数据;
计算基线的第一步是将不同日期的历史数据进行聚类。一些交易系统在工作日与节假日的交易量是有明显区别的,如果将这两种日期类型的数据混合在一起进行基线计算,那么得到的基线一定是不精确的,例如在节假日时,下基线太低,这可能导致被监控系统发生问题交易量下降时无法发出告警,相应的,工作日时,上基线会过高。因此这两种类别的日期需要各自单独计算基线,不能混合。我们采用聚类的方法,本申请使用K-Means算法来实现。将已有的历史数据进行聚类,初始我们将类别分为两类,根据得到的聚类结果判断这种分类是否可以接受,如果效果不好再尝试加入其他的分类(比如增加双十一双十二等交易量会激增的特定类别)。每个系统由于功能不同,再加上监控的指标也不同,因此需要根据情况来设置K-Means方法的分类。此外,在分类之后,需要从基线参数配置中获取样本空间大小及其它参数用来进行后续的基线计算。
S303、基于分类历史监控指标数据计算正常指标判断条件;
S304、基于正常指标判断条件过滤分类历史监控指标数据中的异常点;
S305、基于过滤后的分类历史监控指标数据生成基线数据;
进行聚类后,我们得到了同一分类下某个时间点的一组历史数据作为样本。在这组数据中,可能会有个别异常点,如果将这些异常点加入到基线的计算,那么得出的基线一定是不准确的。这些异常点中,一些是系统的记录错误,另一些则是极大的背离其它同一时刻历史数据的真实数据,例如因为业务推广等特殊情况而导致的交易量激增。前者的数值可能与实际值非常不符,例如高出实际值10倍或者几十倍,这些点是必须剔除的。而后者实际上是真实的数值,但如果已经进入了需要高度预警的范围,又由于属于偶然事件,在基线的制定中这些点也应当剔除,如果不剔除,则制定出的基线可能会对偶然的激增交易量不敏感,从而失去了告警的效果。
本申请中我们选择格拉布斯准则来剔除异常点。格拉布斯准则是一个比较常用的剔除异常点的方法,我们将原方法稍作改进,得到下面改进的格拉布斯准则,此算法更加稳定,计算量较小,操作步骤如下:
我们假设系统是运行稳定的,我们所测量的指标服从或者近似服从正态分布。
步骤2:判断每一个样本点是否满足不等式|xi-x*|≤g(n,a)×s,若不满足则判定这个样本点为异常点,并将其从样本空间中去除。每当有样本点被去除时,结束步骤2,返回步骤1。
步骤3:样本空间中异常点被全部去除,操作结束。
其中,标准差g(n,a)取决于当前样本空间中的样本数量n和显著性水平a(本方法中a可取0.05),通过查格拉布斯表可以得到g(n,a)的值。显然,整个过程的迭代次数取决于异常点个数。需要注意的是,在计算标准差时,我们并不需要用到均值,因此每当剔除异常值后计算新的样本空间的标准差时只需要重新计算两个求和项即可,节省了计算量。
对上述剔除异常点后的分类历史监控指标数据进行取最大值与最小值即可获得某一时刻的上基线点与下基线点,将这些点连接起来就得到了上下基线。由于动态基线是由许多的点连接组成的,因此基线计算可以看成是这些时间点上的数值计算。我们将这些点的数值计算分发到不同的计算节点上去完成,然后再汇聚到一起就可以组成整条基线了。
S306、采集目标监控指标数据;
调用当前的需要被监控的指标信息,即目标监控指标数据。
S307、基于与目标监控指标数据相匹配的基线数据对目标监控指标数据进行监控;
因为之前的步骤中进行了分类,因此,此处对目标监控指标数据进行监控,需要调用相同类别的基线来进行。首先需要将目标监控指标数据与基线进行匹配,找到匹配的基线后,再根据基线与预先设置的告警策略对目标监控指标数据进行监控。
此外,在本申请中,完成基线计算后,可以将基线进行数据持久化,使得到的基线得以保存。
在系统的运维中,监控系统起着非同小可的作用,而判定系统正常运行与否并给予运维人员主要参考依据的是监控系统的告警。因此,为了确保应用系统安全平稳的运行,建立一套有效且智能的监控系统是必不可少的。在监控系统中,首先我们需要分辨出能够反映应用系统是否正常运行的标准,然后将其量化成具体的监控指标,设定参考值并形成告警规则,再将指标值和参考值联机进行对比,如果指标值超出了设置的参考值范围,则产生告警并通知相关人员以便及时发现和处理问题。
根据运维经验,应用系统可被量化的监控指标有很多,从资源层面有CPU使用率、内存使用量、磁盘使用空间、数据库连接数等,从业务层面上有交易的吞吐量或每秒交易量(TPS)、交易成功率、平均响应时间等。一般情况下CPU使用率只要低于某个预警值就可以正常运转不影响工作比如90%,那么我们就可以简单的设置一条针对CPU使用率的告警规则,即:CPU大于90%则告警;而例如每秒交易量这类指标是带有业务属性的,比如某些系统凌晨的交易量几乎为零,上午和下午业务发生的高峰期间交易量会达到峰值,午间休息时略有下降,营业时间结束后交易量会逐步降低,对于此类指标值在一天内从0到峰值都是正常取值范围内的监控指标,就不能简单的制定告警规则为低于某值来预警指标值突降等情况了。不仅如此,随着现在应用的数量增加,需要监控的指标也越来越多,基线的计算量变得十分庞大。
目前业界已有针对不同的指标使用不同的告警策略的方案,如CPU使用率采用单一阈值策略,一天中的交易量使用动态基线策略,波动告警策略,这种混合策略已经比以前使用单一告警策略的方式精准了许多,但是在策略上任然有很多人为的介入,这些因素使得整个监控体系依然存在着运维人的主观判断,比如运维人员根据经验获知节假日的交易量普遍高于平时的工作日,因此在节假日时,将基线人为拉高,设置更宽的告警范围等。如何获得更客观更精确的告警已经成为了目前业内主要的关注点。
本申请提供了一种基于分布式计算的监控方法,与现有技术相比无需人为介入,即可自动基于历史数据生成告警基线,从而得到更精准的基线,使得监控系统的告警更加精确。
如图4所示,为本申请公开的一种基于分布式计算的监控系统的实施例1的结构示意图,包括第一指标采集模块101、分类模块102、基线生成模块103、第二指标采集模块105及监控模块104,其中:
第一指标采集模块101用于采集历史监控指标数据;
本文中的监控系统包括监控信息系统各项指标数据的监控系统。监控的指标包括包括CPU使用率、内存使用量、交易的吞吐量或每秒交易量(TPS)、交易成功率、平均响应时间等。从数据库或者接口获取历史监控指标数据,例如被监控指标数据与数据监控频率等相关参数。在获取到历史监控指标数据后,还需要将历史监控指标数据的时间做规范化处理。本申请中,可以对历史监控指标数据进行预处理,并存储在分布式数据库中,再利用分布式数据库中存储的历史监控指标数据进行后续步骤。
分类模块102用于基于聚类算法将历史监控指标数据分类为分类历史监控指标数据;
计算基线的第一步是将不同日期的历史数据进行聚类。一些交易系统在工作日与节假日的交易量是有明显区别的,如果将这两种日期类型的数据混合在一起进行基线计算,那么得到的基线一定是不精确的,例如在节假日时,下基线太低,这可能导致被监控系统发生问题交易量下降时无法发出告警,相应的,工作日时,上基线会过高。因此这两种类别的日期需要各自单独计算基线,不能混合。我们采用聚类的方法,本申请使用K-Means算法来实现。将已有的历史数据进行聚类,初始我们将类别分为两类,根据得到的聚类结果判断这种分类是否可以接受,如果效果不好再尝试加入其他的分类(比如增加双十一双十二等交易量会激增的特定类别)。每个系统由于功能不同,再加上监控的指标也不同,因此需要根据情况来设置K-Means方法的分类。此外,在分类之后,需要从基线参数配置中获取样本空间大小及其它参数用来进行后续的基线计算。
基线生成模块103用于基于分类历史监控指标数据生成基线数据;
对分类历史监控指标数据进行取最大值与最小值即可获得某一时刻的上基线点与下基线点,将这些点连接起来就得到了上下基线。由于动态基线是由许多的点连接组成的,因此基线计算可以看成是这些时间点上的数值计算。我们将这些点的数值计算分发到不同的计算节点上去完成,然后再汇聚到一起就可以组成整条基线了。
第二指标采集模块105用于采集目标监控指标数据;
调用当前的需要被监控的指标信息,即目标监控指标数据。
监控模块104用于基于与目标监控指标数据相匹配的基线数据对目标监控指标数据进行监控;
因为之前的步骤中进行了分类,因此,此处对目标监控指标数据进行监控,需要调用相同类别的基线来进行。首先需要将目标监控指标数据与基线进行匹配,找到匹配的基线后,再根据基线与预先设置的告警策略对目标监控指标数据进行监控。
此外,在本申请中,完成基线计算后,可以将基线进行数据持久化,使得到的基线得以保存。
在系统的运维中,监控系统起着非同小可的作用,而判定系统正常运行与否并给予运维人员主要参考依据的是监控系统的告警。因此,为了确保应用系统安全平稳的运行,建立一套有效且智能的监控系统是必不可少的。在监控系统中,首先我们需要分辨出能够反映应用系统是否正常运行的标准,然后将其量化成具体的监控指标,设定参考值并形成告警规则,再将指标值和参考值联机进行对比,如果指标值超出了设置的参考值范围,则产生告警并通知相关人员以便及时发现和处理问题。
根据运维经验,应用系统可被量化的监控指标有很多,从资源层面有CPU使用率、内存使用量、磁盘使用空间、数据库连接数等,从业务层面上有交易的吞吐量或每秒交易量(TPS)、交易成功率、平均响应时间等。一般情况下CPU使用率只要低于某个预警值就可以正常运转不影响工作比如90%,那么我们就可以简单的设置一条针对CPU使用率的告警规则,即:CPU大于90%则告警;而例如每秒交易量这类指标是带有业务属性的,比如某些系统凌晨的交易量几乎为零,上午和下午业务发生的高峰期间交易量会达到峰值,午间休息时略有下降,营业时间结束后交易量会逐步降低,对于此类指标值在一天内从0到峰值都是正常取值范围内的监控指标,就不能简单的制定告警规则为低于某值来预警指标值突降等情况了。不仅如此,随着现在应用的数量增加,需要监控的指标也越来越多,基线的计算量变得十分庞大。
目前业界已有针对不同的指标使用不同的告警策略的方案,如CPU使用率采用单一阈值策略,一天中的交易量使用动态基线策略,波动告警策略,这种混合策略已经比以前使用单一告警策略的方式精准了许多,但是在策略上任然有很多人为的介入,这些因素使得整个监控体系依然存在着运维人的主观判断,比如运维人员根据经验获知节假日的交易量普遍高于平时的工作日,因此在节假日时,将基线人为拉高,设置更宽的告警范围等。如何获得更客观更精确的告警已经成为了目前业内主要的关注点。
本申请提供了一种基于分布式计算的监控系统,与现有技术相比无需人为介入,即可自动基于历史数据生成告警基线,从而得到更精准的基线,使得监控系统的告警更加精确。
本申请首先对历史数据进行聚类,通过数据自身的规律来实现分组,达到工作日、非工作日及其他特殊日期采用不同基线进行监控的效果,最大程度上避免人为干预造成的误差。在聚类完成后,再对数据进行过滤,本申请中的异常点剔除模块采用改进的格拉布斯方法,计算高效且结果可靠。不仅如此,本申请中的基线计算模块使用了分布式的计算方法,将计算任务分配到各个计算节点,最终再进行汇总,横向扩展性高,能承载大规模的并发计算。使用本申请所叙述的方式获得的动态基线更符合真实的指标数据应有的走势,作为指标告警的评判依据更为可靠。本申请中的智能监控方法能有效地解决基线不精确导致的告警误报,漏报等问题。
如图5所示,为本申请公开的一种基于分布式计算的监控系统的实施例2的结构示意图,包括第一指标采集模块201、数据平滑模块202、分类模块203、基线生成模块204、第二指标采集模块206及监控模块205,其中:
第一指标采集模块201用于采集历史监控指标数据;
本文中的监控系统包括监控信息系统各项指标数据的监控系统。监控的指标包括CPU使用率、内存使用量、交易的吞吐量或每秒交易量(TPS)、交易成功率、平均响应时间等。从数据库或者接口获取历史监控指标数据,例如被监控指标数据与数据监控频率等相关参数。在获取到历史监控指标数据后,还需要将历史监控指标数据的时间做规范化处理。本申请中,可以对历史监控指标数据进行预处理,并存储在分布式数据库中,再利用分布式数据库中存储的历史监控指标数据进行后续步骤。
数据平滑模块202用于当历史监控指标数据中存在数据缺失时,采用数据平滑处理生成缺失的数据;
假如按周期顺序采样时某一个时间点的数据不存在,就需要采用数据平滑的方式来保证样本个数,如表1所示:
序号 | 时间 | 数值 |
1 | 2013-6-26 00:51:00 | 75 |
2 | 2013-6-25 00:51:00 | 50 |
3 | 2013-6-24 00:51:00 | 68 |
4 | 2013-6-23 00:51:00 | 120 |
5 | 2013-6-22 00:51:00 | 90 |
6 | 2013-6-21 00:51:00 | 33 |
7 | 2013-6-20 00:51:00 | null |
8 | 2013-6-19 00:51:00 | 84 |
9 | 2013-6-18 00:51:00 | 71 |
10 | 2013-6-17 00:51:00 | 65 |
序号为7的数据为缺失的数据。
数据的平滑有两种方式:
(1)取缺失的数据的相邻时间点的数据计算平均值,平均值即为缺失数据的值;
如表2所示
时间 | 数值 |
2013-6-20 00:50:00 | 50 |
2013-6-20 00:52:00 | 42 |
计算平均值(50+42)/2=46,即:
7 | 2013-6-20 00:51:00 | 46 |
2)获取一个新的数据代替缺失的数据,例如动态扩大样本空间,继续在上一个周期的对应时间点进行取值。
11 | 2013-6-16 00:51:00 | 46 |
分类模块203用于基于聚类算法将历史监控指标数据分类为分类历史监控指标数据;
计算基线的第一步是将不同日期的历史数据进行聚类。一些交易系统在工作日与节假日的交易量是有明显区别的,如果将这两种日期类型的数据混合在一起进行基线计算,那么得到的基线一定是不精确的,例如在节假日时,下基线太低,这可能导致被监控系统发生问题交易量下降时无法发出告警,相应的,工作日时,上基线会过高。因此这两种类别的日期需要各自单独计算基线,不能混合。我们采用聚类的方法,本申请使用K-Means算法来实现。将已有的历史数据进行聚类,初始我们将类别分为两类,根据得到的聚类结果判断这种分类是否可以接受,如果效果不好再尝试加入其他的分类(比如增加双十一双十二等交易量会激增的特定类别)。每个系统由于功能不同,再加上监控的指标也不同,因此需要根据情况来设置K-Means方法的分类。此外,在分类之后,需要从基线参数配置中获取样本空间大小及其它参数用来进行后续的基线计算。
基线生成模块204用于基于分类历史监控指标数据生成基线数据;
对分类历史监控指标数据进行取最大值与最小值即可获得某一时刻的上基线点与下基线点,将这些点连接起来就得到了上下基线。由于动态基线是由许多的点连接组成的,因此基线计算可以看成是这些时间点上的数值计算。我们将这些点的数值计算分发到不同的计算节点上去完成,然后再汇聚到一起就可以组成整条基线了。
第二指标采集模块206用于采集目标监控指标数据;
调用当前的需要被监控的指标信息,即目标监控指标数据。
监控模块205用于基于与目标监控指标数据相匹配的基线数据对目标监控指标数据进行监控;
因为之前的步骤中进行了分类,因此,此处对目标监控指标数据进行监控,需要调用相同类别的基线来进行。首先需要将目标监控指标数据与基线进行匹配,找到匹配的基线后,再根据基线与预先设置的告警策略对目标监控指标数据进行监控。
此外,在本申请中,完成基线计算后,可以将基线进行数据持久化,使得到的基线得以保存。
在系统的运维中,监控系统起着非同小可的作用,而判定系统正常运行与否并给予运维人员主要参考依据的是监控系统的告警。因此,为了确保应用系统安全平稳的运行,建立一套有效且智能的监控系统是必不可少的。在监控系统中,首先我们需要分辨出能够反映应用系统是否正常运行的标准,然后将其量化成具体的监控指标,设定参考值并形成告警规则,再将指标值和参考值联机进行对比,如果指标值超出了设置的参考值范围,则产生告警并通知相关人员以便及时发现和处理问题。
根据运维经验,应用系统可被量化的监控指标有很多,从资源层面有CPU使用率、内存使用量、磁盘使用空间、数据库连接数等,从业务层面上有交易的吞吐量或每秒交易量(TPS)、交易成功率、平均响应时间等。一般情况下CPU使用率只要低于某个预警值就可以正常运转不影响工作比如90%,那么我们就可以简单的设置一条针对CPU使用率的告警规则,即:CPU大于90%则告警;而例如每秒交易量这类指标是带有业务属性的,比如某些系统凌晨的交易量几乎为零,上午和下午业务发生的高峰期间交易量会达到峰值,午间休息时略有下降,营业时间结束后交易量会逐步降低,对于此类指标值在一天内从0到峰值都是正常取值范围内的监控指标,就不能简单的制定告警规则为低于某值来预警指标值突降等情况了。不仅如此,随着现在应用的数量增加,需要监控的指标也越来越多,基线的计算量变得十分庞大。
目前业界已有针对不同的指标使用不同的告警策略的方案,如CPU使用率采用单一阈值策略,一天中的交易量使用动态基线策略,波动告警策略,这种混合策略已经比以前使用单一告警策略的方式精准了许多,但是在策略上任然有很多人为的介入,这些因素使得整个监控体系依然存在着运维人的主观判断,比如运维人员根据经验获知节假日的交易量普遍高于平时的工作日,因此在节假日时,将基线人为拉高,设置更宽的告警范围等。如何获得更客观更精确的告警已经成为了目前业内主要的关注点。
本申请提供了一种基于分布式计算的监控系统,与现有技术相比无需人为介入,即可自动基于历史数据生成告警基线,从而得到更精准的基线,使得监控系统的告警更加精确。
如图6所示,为本申请公开的一种基于分布式计算的监控系统的实施例3的结构示意图,包括第一指标采集模块301、分类模块302、基线生成模块303、第二指标采集模块305及监控模块304,基线生成模块303包括,判断条件计算单元306、过滤单元307及基线生成单元308,其中:
第一指标采集模块301用于采集历史监控指标数据;
本文中的监控系统包括监控信息系统各项指标数据的监控系统。监控的指标包括包括CPU使用率、内存使用量、交易的吞吐量或每秒交易量(TPS)、交易成功率、平均响应时间等。从数据库或者接口获取历史监控指标数据,例如被监控指标数据与数据监控频率等相关参数。在获取到历史监控指标数据后,还需要将历史监控指标数据的时间做规范化处理。本申请中,可以对历史监控指标数据进行预处理,并存储在分布式数据库中,再利用分布式数据库中存储的历史监控指标数据进行后续步骤。
分类模块302用于基于聚类算法将历史监控指标数据分类为分类历史监控指标数据;
计算基线的第一步是将不同日期的历史数据进行聚类。一些交易系统在工作日与节假日的交易量是有明显区别的,如果将这两种日期类型的数据混合在一起进行基线计算,那么得到的基线一定是不精确的,例如在节假日时,下基线太低,这可能导致被监控系统发生问题交易量下降时无法发出告警,相应的,工作日时,上基线会过高。因此这两种类别的日期需要各自单独计算基线,不能混合。我们采用聚类的方法,本申请使用K-Means算法来实现。将已有的历史数据进行聚类,初始我们将类别分为两类,根据得到的聚类结果判断这种分类是否可以接受,如果效果不好再尝试加入其他的分类(比如增加双十一双十二等交易量会激增的特定类别)。每个系统由于功能不同,再加上监控的指标也不同,因此需要根据情况来设置K-Means方法的分类。此外,在分类之后,需要从基线参数配置中获取样本空间大小及其它参数用来进行后续的基线计算。
判断条件计算单元306用于基于分类历史监控指标数据计算正常指标判断条件;
过滤单元307用于基于正常指标判断条件过滤分类历史监控指标数据中的异常点;
基线生成单元308用于基于过滤后的分类历史监控指标数据生成基线数据;
进行聚类后,我们得到了同一分类下某个时间点的一组历史数据作为样本。在这组数据中,可能会有个别异常点,如果将这些异常点加入到基线的计算,那么得出的基线一定是不准确的。这些异常点中,一些是系统的记录错误,另一些则是极大的背离其它同一时刻历史数据的真实数据,例如因为业务推广等特殊情况而导致的交易量激增。前者的数值可能与实际值非常不符,例如高出实际值10倍或者几十倍,这些点是必须剔除的。而后者实际上是真实的数值,但如果已经进入了需要高度预警的范围,又由于属于偶然事件,在基线的制定中这些点也应当剔除,如果不剔除,则制定出的基线可能会对偶然的激增交易量不敏感,从而失去了告警的效果。
本申请中我们选择格拉布斯准则来剔除异常点。格拉布斯准则是一个比较常用的剔除异常点的方法,我们将原方法稍作改进,得到下面改进的格拉布斯准则,此算法更加稳定,计算量较小,操作步骤如下:
我们假设系统是运行稳定的,我们所测量的指标服从或者近似服从正态分布。
步骤2:判断每一个样本点是否满足不等式|xi-x*|≤g(n,a)×s,若不满足则判定这个样本点为异常点,并将其从样本空间中去除。每当有样本点被去除时,结束步骤2,返回步骤1。
步骤3:样本空间中异常点被全部去除,操作结束。
其中,标准差g(n,a)取决于当前样本空间中的样本数量n和显著性水平a(本方法中a可取0.05),通过查格拉布斯表可以得到g(n,a)的值。显然,整个过程的迭代次数取决于异常点个数。需要注意的是,在计算标准差时,我们并不需要用到均值,因此每当剔除异常值后计算新的样本空间的标准差时只需要重新计算两个求和项即可,节省了计算量。
对上述剔除异常点后的分类历史监控指标数据进行取最大值与最小值即可获得某一时刻的上基线点与下基线点,将这些点连接起来就得到了上下基线。由于动态基线是由许多的点连接组成的,因此基线计算可以看成是这些时间点上的数值计算。我们将这些点的数值计算分发到不同的计算节点上去完成,然后再汇聚到一起就可以组成整条基线了。
第二指标采集模块305用于采集目标监控指标数据;
调用当前的需要被监控的指标信息,即目标监控指标数据。
监控模块304用于基于与目标监控指标数据相匹配的基线数据对目标监控指标数据进行监控;
因为之前的步骤中进行了分类,因此,此处对目标监控指标数据进行监控,需要调用相同类别的基线来进行。首先需要将目标监控指标数据与基线进行匹配,找到匹配的基线后,再根据基线与预先设置的告警策略对目标监控指标数据进行监控。
此外,在本申请中,完成基线计算后,可以将基线进行数据持久化,使得到的基线得以保存。
在系统的运维中,监控系统起着非同小可的作用,而判定系统正常运行与否并给予运维人员主要参考依据的是监控系统的告警。因此,为了确保应用系统安全平稳的运行,建立一套有效且智能的监控系统是必不可少的。在监控系统中,首先我们需要分辨出能够反映应用系统是否正常运行的标准,然后将其量化成具体的监控指标,设定参考值并形成告警规则,再将指标值和参考值联机进行对比,如果指标值超出了设置的参考值范围,则产生告警并通知相关人员以便及时发现和处理问题。
根据运维经验,应用系统可被量化的监控指标有很多,从资源层面有CPU使用率、内存使用量、磁盘使用空间、数据库连接数等,从业务层面上有交易的吞吐量或每秒交易量(TPS)、交易成功率、平均响应时间等。一般情况下CPU使用率只要低于某个预警值就可以正常运转不影响工作比如90%,那么我们就可以简单的设置一条针对CPU使用率的告警规则,即:CPU大于90%则告警;而例如每秒交易量这类指标是带有业务属性的,比如某些系统凌晨的交易量几乎为零,上午和下午业务发生的高峰期间交易量会达到峰值,午间休息时略有下降,营业时间结束后交易量会逐步降低,对于此类指标值在一天内从0到峰值都是正常取值范围内的监控指标,就不能简单的制定告警规则为低于某值来预警指标值突降等情况了。不仅如此,随着现在应用的数量增加,需要监控的指标也越来越多,基线的计算量变得十分庞大。
目前业界已有针对不同的指标使用不同的告警策略的方案,如CPU使用率采用单一阈值策略,一天中的交易量使用动态基线策略,波动告警策略,这种混合策略已经比以前使用单一告警策略的方式精准了许多,但是在策略上任然有很多人为的介入,这些因素使得整个监控体系依然存在着运维人的主观判断,比如运维人员根据经验获知节假日的交易量普遍高于平时的工作日,因此在节假日时,将基线人为拉高,设置更宽的告警范围等。如何获得更客观更精确的告警已经成为了目前业内主要的关注点。
本申请提供了一种基于分布式计算的监控系统,与现有技术相比无需人为介入,即可自动基于历史数据生成告警基线,从而得到更精准的基线,使得监控系统的告警更加精确。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,
而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (8)
1.一种基于分布式计算的监控方法,其特征在于,包括:
采集历史监控指标数据;
基于聚类算法将所述历史监控指标数据分类为分类历史监控指标数据;所述基于聚类算法将所述历史监控指标数据分类为分类历史监控指标数据包括,按照不同日期类型对所述历史监控指标数据进行分类;其中,所述不同日期类型包括工作日、非工作日及其他特殊日期;
基于所述分类历史监控指标数据生成基线数据;
采集目标监控指标数据;
基于与所述目标监控指标数据相匹配的基线数据对所述目标监控指标数据进行监控;
所述基于所述分类历史监控指标数据生成基线数据包括:基于所述分类历史监控指标数据计算正常指标判断条件;基于所述正常指标判断条件过滤所述分类历史监控指标数据中的异常点;基于过滤后的分类历史监控指标数据生成基线数据;
所述基于所述正常指标判断条件过滤所述分类历史监控指标数据中的异常点,具体为利用改进的格拉布斯准则剔除异常点,具体包括:计算所有样本点的中位数x*与标准差s,生成正常指标判断条件,即|xi-x*|≤g(n,a)×s;判断每一个样本点是否满足不等式|xi-x*|≤g(n,a)×s,若不满足则判定这个样本点为异常点,并将其从样本空间中去除;样本空间中异常点被全部去除,操作结束;其中,每当有样本点被去除,重新计算生成所述正常指标判断条件,重新进行判断所述每一个样本点是否满足所述不等式;其中,标准差为g(n,a)取决于当前样本空间中的样本数量n和显著性水平a,g(n,a)通过查格拉布斯表获得,xi为样本点,为平均值。
2.如权利要求1所述的方法,其特征在于,还包括:
当所述历史监控指标数据中存在数据缺失时,采用数据平滑处理生成缺失的数据。
3.如权利要求2所述的方法,其特征在于,所述采用数据平滑处理生成缺失的数据包括:
取缺失的数据的相邻时间点的数据计算平均值,所述平均值即为所述缺失数据的值。
4.如权利要求2所述的方法,其特征在于,所述采用数据平滑处理生成缺失的数据包括:
获取一个新的数据代替缺失的数据。
5.一种基于分布式计算的监控系统,其特征在于,包括第一指标采集模块、分类模块、基线生成模块、第二指标采集模块及监控模块,其中:
所述第一指标采集模块用于采集历史监控指标数据;
所述分类模块用于基于聚类算法将所述历史监控指标数据分类为分类历史监控指标数据;其中,所述基于聚类算法将所述历史监控指标数据分类为分类历史监控指标数据包括,按照不同日期类型对所述历史监控指标数据进行分类;其中,所述不同日期类型包括工作日、非工作日及其他特殊日期;
所述基线生成模块用于基于所述分类历史监控指标数据生成基线数据;
所述第二指标采集模块用于采集目标监控指标数据;
所述监控模块用于基于与所述目标监控指标数据相匹配的基线数据对所述目标监控指标数据进行监控;
所述基线生成模块包括,判断条件计算单元、过滤单元及基线生成单元,其中:
所述判断条件计算单元用于基于所述分类历史监控指标数据计算正常指标判断条件;
所述过滤单元用于基于所述正常指标判断条件过滤所述分类历史监控指标数据中的异常点;
所述基线生成单元用于基于过滤后的分类历史监控指标数据生成基线数据;
6.如权利要求5所述的系统,其特征在于,还包括数据平滑模块,其中:
所述数据平滑模块用于当所述历史监控指标数据中存在数据缺失时,采用数据平滑处理生成缺失的数据。
7.如权利要求6所述的系统,其特征在于,所述采用数据平滑处理生成缺失的数据包括:
取缺失的数据的相邻时间点的数据计算平均值,所述平均值即为所述缺失数据的值。
8.如权利要求6所述的系统,其特征在于,所述采用数据平滑处理生成缺失的数据包括:
获取一个新的数据代替缺失的数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810367728.6A CN108572905B (zh) | 2018-04-23 | 2018-04-23 | 一种基于分布式计算的监控方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810367728.6A CN108572905B (zh) | 2018-04-23 | 2018-04-23 | 一种基于分布式计算的监控方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108572905A CN108572905A (zh) | 2018-09-25 |
CN108572905B true CN108572905B (zh) | 2021-07-23 |
Family
ID=63575067
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810367728.6A Active CN108572905B (zh) | 2018-04-23 | 2018-04-23 | 一种基于分布式计算的监控方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108572905B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110378369B (zh) * | 2019-06-06 | 2020-06-26 | 特斯联(北京)科技有限公司 | 应用人工智能分析的广域水务状态可视化系统及方法 |
CN110908964B (zh) * | 2019-10-18 | 2023-08-18 | 平安科技(深圳)有限公司 | 分布式文件系统的监控方法、装置、终端及存储介质 |
CN111311086B (zh) * | 2020-02-11 | 2024-02-09 | 中国银联股份有限公司 | 一种容量监控方法、装置及计算机可读存储介质 |
CN111767355B (zh) * | 2020-06-24 | 2024-02-27 | 中电科华云信息技术有限公司 | 一种基于活动中心点圈层扩散组织监控感知区的方法 |
CN112052145A (zh) * | 2020-09-09 | 2020-12-08 | 中国工商银行股份有限公司 | 性能告警阈值的确定方法、装置、电子设备和介质 |
CN112737894B (zh) * | 2021-01-06 | 2022-02-08 | 北京字节跳动网络技术有限公司 | 网络质量监控方法和装置、存储介质和电子设备 |
CN113391981A (zh) * | 2021-06-30 | 2021-09-14 | 中国民航信息网络股份有限公司 | 一种监控指标的预警方法及相关设备 |
CN115327675B (zh) * | 2022-10-13 | 2023-01-06 | 安徽省大气探测技术保障中心 | 气象装备运行状态监控方法、系统、设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104881352A (zh) * | 2015-06-03 | 2015-09-02 | 上海新炬网络信息技术有限公司 | 基于移动端的系统资源监控装置 |
CN106778253A (zh) * | 2016-11-24 | 2017-05-31 | 国家电网公司 | 基于大数据的威胁情景感知信息安全主动防御模型 |
CN107918579A (zh) * | 2016-10-09 | 2018-04-17 | 北京神州泰岳软件股份有限公司 | 一种批量生成基线数据的方法和装置 |
CN109542740A (zh) * | 2017-09-22 | 2019-03-29 | 阿里巴巴集团控股有限公司 | 异常检测方法及装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9230220B2 (en) * | 2011-05-11 | 2016-01-05 | Ari M. Frank | Situation-dependent libraries of affective response |
CN107611940B (zh) * | 2017-08-21 | 2019-08-13 | 国网山东省电力公司济南供电公司 | 一种基于历史数据分析的配电网异常监测方法与系统 |
-
2018
- 2018-04-23 CN CN201810367728.6A patent/CN108572905B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104881352A (zh) * | 2015-06-03 | 2015-09-02 | 上海新炬网络信息技术有限公司 | 基于移动端的系统资源监控装置 |
CN107918579A (zh) * | 2016-10-09 | 2018-04-17 | 北京神州泰岳软件股份有限公司 | 一种批量生成基线数据的方法和装置 |
CN106778253A (zh) * | 2016-11-24 | 2017-05-31 | 国家电网公司 | 基于大数据的威胁情景感知信息安全主动防御模型 |
CN109542740A (zh) * | 2017-09-22 | 2019-03-29 | 阿里巴巴集团控股有限公司 | 异常检测方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN108572905A (zh) | 2018-09-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108572905B (zh) | 一种基于分布式计算的监控方法及系统 | |
US10666525B2 (en) | Distributed multi-data source performance management | |
WO2022111265A1 (zh) | 一种信息告警方法、设备及存储介质 | |
CN104572391B (zh) | 监控告警策略配置方法及装置、监控告警方法及装置 | |
CN113176978B (zh) | 基于日志文件的监控方法、系统、设备及可读存储介质 | |
CN110830450A (zh) | 基于统计的异常流量监测方法、装置、设备及存储介质 | |
CN112434962B (zh) | 基于电力负荷数据的企业用户状态评估方法和系统 | |
CN105979532B (zh) | 一种业务处理系统的性能容量分析预警方法及装置 | |
CN113448805A (zh) | 基于cpu动态阈值的监控方法、装置、设备及存储介质 | |
CN112416590A (zh) | 服务器系统资源调整方法、装置、计算机设备及存储介质 | |
CN115796708B (zh) | 一种工程建设用的大数据智能质检方法、系统和介质 | |
CN108390793A (zh) | 一种分析系统稳定性的方法及装置 | |
CN106951360B (zh) | 数据统计完整度计算方法和系统 | |
CN116882804A (zh) | 一种智能电力监控方法及系统 | |
CN114138601A (zh) | 一种业务告警方法、装置、设备及存储介质 | |
CN116186017B (zh) | 一种大数据协同监管方法及平台 | |
CN112949697A (zh) | 一种管道异常的确认方法、装置及计算机可读存储介质 | |
CN115690681A (zh) | 异常判断依据的处理方法、异常判断方法及装置 | |
CN116016115A (zh) | 网络线路的流量监控方法、装置、设备、介质和程序产品 | |
CN113810792B (zh) | 一种基于云计算的边缘数据采集分析系统 | |
CN116307866B (zh) | 碳排放计量方法、设备及碳计量系统 | |
CN113992496B (zh) | 基于四分位算法的异动告警方法、装置及计算设备 | |
CN111865689B (zh) | 一种基于指标集树的告警压降方法 | |
CN111724007B (zh) | 风险评价方法、评价装置、智能系统及存储装置 | |
CN117828371B (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 | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20221107 Address after: 100005 No. 69, inner main street, Dongcheng District, Beijing, Jianguomen Patentee after: AGRICULTURAL BANK OF CHINA Patentee after: Agricultural Bank of China Financial Technology Co.,Ltd. Address before: 100005 No. 69, inner main street, Dongcheng District, Beijing, Jianguomen Patentee before: AGRICULTURAL BANK OF CHINA |