CN113448812A - 微服务场景下的监控告警方法及装置 - Google Patents
微服务场景下的监控告警方法及装置 Download PDFInfo
- Publication number
- CN113448812A CN113448812A CN202110798950.3A CN202110798950A CN113448812A CN 113448812 A CN113448812 A CN 113448812A CN 202110798950 A CN202110798950 A CN 202110798950A CN 113448812 A CN113448812 A CN 113448812A
- Authority
- CN
- China
- Prior art keywords
- alarm
- service
- monitoring
- micro
- kafka
- 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
- 238000012544 monitoring process Methods 0.000 title claims abstract description 92
- 238000000034 method Methods 0.000 title claims abstract description 36
- 238000012545 processing Methods 0.000 claims abstract description 57
- 238000001914 filtration Methods 0.000 claims abstract description 24
- 238000004590 computer program Methods 0.000 claims description 18
- 238000003860 storage Methods 0.000 claims description 18
- 239000012634 fragment Substances 0.000 claims description 9
- 230000002085 persistent effect Effects 0.000 claims description 5
- 238000004364 calculation method Methods 0.000 description 25
- 238000010586 diagram Methods 0.000 description 13
- 230000006870 function Effects 0.000 description 5
- 238000012423 maintenance Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 4
- 230000002776 aggregation Effects 0.000 description 3
- 238000004220 aggregation Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 3
- 238000013479 data entry Methods 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000006116 polymerization reaction Methods 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 238000012216 screening Methods 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
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/32—Monitoring with visual or acoustical indication of the functioning of the machine
- G06F11/324—Display of status information
- G06F11/327—Alarm or error message display
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording 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/3457—Performance evaluation by simulation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Alarm Systems (AREA)
Abstract
本发明公开了一种微服务场景下的监控告警方法及装置,可用于金融领域,其中方法包括:获得Kafka消息队列,所述Kafka消息队列中包含多个应用日志处理消息;将每个应用日志处理消息与预先建立的模型实例进行关联匹配,所述模型实例根据告警规则配置数据,Kafka历史消息队列和告警对象类型进行预先建立,所述告警对象类型包括:服务和接口;根据预设的告警策略阈值,对关联匹配后的数据条目进行过滤;根据过滤的结果,进行微服务场景下的监控告警。本发明可以进行微服务场景下的监控告警,提高监控告警性能。
Description
技术领域
本发明涉及金融领域,尤其涉及微服务场景下的监控告警方法及装置。需要说明的是,本发明微服务场景下的监控告警方法和装置可用于金融领域,也可用于除金融领域之外的任意领域,本发明微服务场景下的监控告警方法和装置的应用领域不做限定。
背景技术
市面上的告警产品(如阿里云)过于偏重应用基础设施运维,即机房设备及用量告警,其侧重点为虚拟服务器网络告警、服务器CPU、内存用量、网络IO、磁盘IO、QPS网络吞吐量、硬盘使用率等告警,其核心目标为运维人员提供一个服务器利用率指标,根据这个指标计算服务器的承载力,作为后续资源水平拓展和资源管理的依据,计算维度更加扁平,计算逻辑相对直白,计算方式多为shell编程。
现有技术的监控告警存在以下几个缺陷:
1、监控告警对象固定:针对网络和硬件基础设施的监控无法满足对应用详细消费情况的分析场景,对服务心跳检测的监控过于简单,使用场景偏运维,用于对服务器的资源管理。本发明告警结果可用于微服务应用级别的产品优化、性能优化,服务高可用和容器级别的水平伸缩,以至于容器弹性伸缩指标作为调试依据。
2、监控指标粒度较粗:现有平台监控粒度多为服务器或虚拟机级别,而本发明粒度深入细化为服务级至接口级,可满足分布式架构下满足目标条件的最细粒度监控,这就使针对单一特定业务的告警成为了可能,例如春晚抢红包这个业务的接口级别监控,用户可以定制任意此类场景下任意自选指标进行告警配置。
3、分布式场景下计算告警指标困难:微服务分布于海量服务器规模下不确定的几台具体服务器中,并随不确定的访问请求生成海量应用日志,多种不确定和大规模数据情况下,仅在服务器硬件设备上的监控代理难以满足计算需求,且单机算力无法在运行业务的同时进行本地计算。本发明能够针对多种不确定性,在用户定制的时间窗口内进行推演和流式计算,并采用Spark云端数据计算,不消耗应用服务本地资源,对一个时间段内微服务的业务指标进行定制和监控告警。
因此,亟需一种可以克服上述问题的微服务场景下的监控告警方案。
发明内容
本发明实施例提供一种微服务场景下的监控告警方法,用以进行微服务场景下的监控告警,提高监控告警性能,该方法包括:
获得Kafka消息队列,所述Kafka消息队列中包含多个应用日志处理消息;
将每个应用日志处理消息与预先建立的模型实例进行关联匹配,所述模型实例根据告警规则配置数据,Kafka历史消息队列和告警对象类型进行预先建立,所述告警对象类型包括:服务和接口;
根据预设的告警策略阈值,对关联匹配后的数据条目进行过滤;
根据过滤的结果,进行微服务场景下的监控告警。
本发明实施例提供一种微服务场景下的监控告警装置,用以进行微服务场景下的监控告警,提高监控告警性能,该装置包括:
消息获得模块,用于获得Kafka消息队列,所述Kafka消息队列中包含多个应用日志处理消息;
关联匹配模块,用于将每个应用日志处理消息与预先建立的模型实例进行关联匹配,所述模型实例根据告警规则配置数据,Kafka历史消息队列和告警对象类型进行预先建立,所述告警对象类型包括:服务和接口;
数据过滤模块,用于根据预设的告警策略阈值,对关联匹配后的数据条目进行过滤;
监控告警模块,用于根据过滤的结果,进行微服务场景下的监控告警。
本发明实施例还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述微服务场景下的监控告警方法。
本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述微服务场景下的监控告警方法的计算机程序。
本发明实施例通过获得Kafka消息队列,所述Kafka消息队列中包含多个应用日志处理消息;将每个应用日志处理消息与预先建立的模型实例进行关联匹配,所述模型实例根据告警规则配置数据,Kafka历史消息队列和告警对象类型进行预先建立,所述告警对象类型包括:服务和接口;根据预设的告警策略阈值,对关联匹配后的数据条目进行过滤;根据过滤的结果,进行微服务场景下的监控告警。本发明实施例根据告警规则配置数据,Kafka历史消息队列和告警对象类型预先建立了模型实例,在获得Kafka消息队列后,将每个应用日志处理消息与预先建立的模型实例进行关联匹配,流式数据运算的独立性不会对现有产品的运行稳定性造成影响,从而可以在秒级监控微服务业务的实时运行状况并对指标进行告警,有效提高监控告警性能。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1为本发明实施例中微服务场景下的监控告警方法示意图;
图2为本发明实施例中模型实例建立方法示意图;
图3为本发明具体实施例中微服务场景下的监控告警流程图;
图4为本发明实施例中微服务场景下的监控告警装置结构图;
图5是本发明实施例的计算机设备结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本发明实施例做进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。
首先,对本发明实施例中的技术名词进行介绍:
微服务:以可伸缩容器方式部署的Java应用,是某个业务领域的功能实现。
微服务监控场景:集群、单元、部署组。
微服务监控对象:服务级监控、接口级监控。
监控指标:单笔耗时、平均耗时、调用成功率、访问量等。
ES:Elastic Search,实时数据收集检索平台。
Spark:大数据计算框架。
Kafka:一种消息队列,用于推送和接收信息报文。
如前所述,“产品运行监控平台”(POMP)作为产品运维方,需要能够配置微服务场景下的告警规则,对产品运行情况进行实时监控并推送告警信息,微服务产品部署于不同的服务器集群中,需要将告警配置、日志采集、预处理、告警指标建模计算、告警数据索引归集存储、告警消息推送等环节充分设计并紧密关联来完成整个分析监控告警流程。在产品运行监控平台中,首先根据责任边界将场景拆分为平台端实现和数据处理端实现。在平台端,主要进行微服务告警规则的配置(告警对象、微服务详细配置、告警事项、告警阈值区间)以及告警策略配置(规则生效时间、触发次数、告警内容模板),最后读取ES告警索引生成告警内容并发送给平台用户;在数据处理端,主要进行日志的预处理计算各项指标、监控Kafka消息队列、进行微服务告警单元建模、实时流式计算匹配平台端用户告警规则、回写告警消息到Kafka消息队列、激活数据存储模式并归入ES。以上双端前者注重渠道和用户体验,赋能产品研发运维人员,后者专注大数据计算分析处理,二者均以常驻模式实时监控流式数据,各有不同的侧重,创新性地完成了对微服务场景下适配产品集群、单元、部署组等多个范围,针对服务、接口两种不同的对象,同时支持单笔耗时、平均耗时、调用成功率、访问量四种指标,8种关系(>、>=、<、<=、[x,y]、[x,y)、(x,y]和(x,y))在24小时任意时段任意触发次数的监控告警。在此种设计方式下,配置规则基数为256类情况和N类用户自定义情况,此告警实现方法能覆盖全部256×N类用户告警需求,满足监控微服务场景下产品运行情况的同时做到特色定制,业务功能的高拓展性和千人千面。
为了进行微服务场景下的监控告警,提高监控告警性能,本发明实施例提供一种微服务场景下的监控告警方法,如图1所示,该方法可以包括:
步骤101、获得Kafka消息队列,所述Kafka消息队列中包含多个应用日志处理消息;
步骤102、将每个应用日志处理消息与预先建立的模型实例进行关联匹配,所述模型实例根据告警规则配置数据,Kafka历史消息队列和告警对象类型进行预先建立,所述告警对象类型包括:服务和接口;
步骤103、根据预设的告警策略阈值,对关联匹配后的数据条目进行过滤;
步骤104、根据过滤的结果,进行微服务场景下的监控告警。
由图1所示可以得知,本发明实施例通过获得Kafka消息队列,所述Kafka消息队列中包含多个应用日志处理消息;将每个应用日志处理消息与预先建立的模型实例进行关联匹配,所述模型实例根据告警规则配置数据,Kafka历史消息队列和告警对象类型进行预先建立,所述告警对象类型包括:服务和接口;根据预设的告警策略阈值,对关联匹配后的数据条目进行过滤;根据过滤的结果,进行微服务场景下的监控告警。本发明实施例根据告警规则配置数据,Kafka历史消息队列和告警对象类型预先建立了模型实例,在获得Kafka消息队列后,将每个应用日志处理消息与预先建立的模型实例进行关联匹配,流式数据运算的独立性不会对现有产品的运行稳定性造成影响,从而可以在秒级监控微服务业务的实时运行状况并对指标进行告警,有效提高监控告警性能。
实施例中,获得Kafka消息队列,所述Kafka消息队列中包含多个应用日志处理消息;将每个应用日志处理消息与预先建立的模型实例进行关联匹配,所述模型实例根据告警规则配置数据,Kafka历史消息队列和告警对象类型进行预先建立,所述告警对象类型包括:服务和接口。
本实施例中,如图2所示,按如下方式预先建立模型实例:
步骤201、从数据库读取告警规则配置数据;
步骤202、根据所述告警规则配置数据,确定告警规则对象数据;
步骤203、根据告警规则对象数据关联的原子规则ID,确定原子规则配置数据;
步骤204、若告警对象类型为服务,则根据原子规则配置数据和Kafka历史消息队列生成服务下所有接口集合的最小告警单元;若告警对象类型为接口,则根据原子规则配置数据和Kafka历史消息队列生成接口的最小告警单元。
具体实施时,建立模型实例的源数据来自于用户录入的定制化的监控需求,如针对某些接口的某些告警指标、阈值和触发次数的监控,读取该数据库后需要根据告警对象是服务还是接口进行不同的建模。模型是一个告警逻辑选择模型,首先经过一个类型筛选逻辑判定告警目标,而后通过一个字段识别模型为不同的告警目标挂载告警的具体字段。配置数据来源于数据库,流式数据来自于消息队列实时推送。模型从数据库中读取告警规则配置,循环遍历后组装出告警规则对象,根据告警规则对象中关联的原子规则Id,查找数据库中的原子规则配置,获取要识别的流式数据中具体哪些目标字段。后续通过监听Kafka消息队列,对实时推送的消息报文,按上述逻辑选择模型进行匹配拆解后,生成数个不同的告警模型实例。如果是服务,则模型为服务下所有接口的集合作为最小告警单元,如果是接口,模型将为每个接口创建一个最小告警单元,建模过程做到了不重不漏,进而得到的最小告警单元作为模型实例输出。
本实施例中,所述应用日志处理消息中包含:时间戳指标,部署平台指标,服务耗时指标,成功率指标,吞吐量指标;
将每个应用日志处理消息与预先建立的模型实例进行关联匹配,包括:利用mapPartition算子对应用日志处理消息进行分片遍历处理,将分片遍历处理后应用日志处理消息中的时间戳指标,部署平台指标,服务耗时指标,成功率指标,吞吐量指标与预先建立的模型实例进行关联匹配。
具体实施时,将内存中的模型实例(最小告警单元)和来自消息队列的数据进行关联匹配,首先进行Spark大数据表结构建模,即确定流式数据的目标字段,该字段的定义需和数据库中监控的字段匹配,设计上定义为数据库字段的子集,确定数据字段名称以及数据类型,用于将后续接收的消息按数据类型进行匹配和类型转换。接下来开启消息队列消费者通道建立和队列服务器的连接,用于实时接收应用日志的处理消息,针对每一条消息,拆分为两类:单笔/聚合,分别执行mapPartition算子,即分片遍历处理,将消息中的时间戳、部署平台、服务耗时、成功率、吞吐量等指标按最小告警单元字段进行识别,然后和流式表结构匹配和数据转换,完成数据绑定。一条消息可能满足多个监控规则的告警需求,就要平铺后生成多个数据条目,完成数据规模的N倍拓展(N=模型中所有最小告警单元的个数总和),由于告警策略可分为服务级告警和接口级告警,而服务级告警中的服务又包含N个接口共同组成服务。监控规则定义于流式数据之前,所以收到流式数据需要倒推它应该被哪些监控规则生成的最小告警单元模型实例匹配,就存在了一条实时消息触发了多种告警规则的情况。
实施例中,根据预设的告警策略阈值,对关联匹配后的数据条目进行过滤。
具体实施时,关联后的N条数据,由于数据是告警模型的拓展,所以内含用户对告警阈值、频率、告警对象的定义,将此数据集推送到分布式Spark计算平台,执行Java编写的阈值计算模块逻辑,首先判断是服务级还是接口级告警,将数据分流。服务级告警按部署平台进行分组,同一个服务下的所有条目计数迭加到一起,作为服务的告警计数;接口级告警同告警策略下的相同最小告警单元下的相同部署平台下的相同接口所有条目计数迭加到一起,作为接口的告警计数。计算中首先进行一个按监控指标类型聚合操作,按监控指标进行分组,然后对平均耗时、成功率、总交易量等指标进行聚合,最后读取最小告警单元中告警策略设定里的超阈值计数指标,和聚合后的计数比较,进行过滤操作,过滤出的数据条目就是要告警的数据。其中平均耗时的计算使用表达式:expr("avg(avgDuration)asaggAvgDuration"),成功率计算使用表达式:expr("regexp_extract(CAST(sum(countSuc)*100/sum(countTotal)AS STRING),'([0-9]*\\.[0-9][0-9]?)',1)as aggSucPercent"),总交易量计算使用表达式:expr("sum(countTotal)as aggTps"),计数器统计使用表达式:expr("count(*)as count")))由于是分布式计算,计算结果需要进一步归约去重,输出到Kafaka消息队列。
实施例中,根据过滤的结果,进行微服务场景下的监控告警。
本实施例中,微服务场景下的监控告警方法还包括:将过滤的结果推送至ES平台进行持久化存储。
具体实施时,将过滤后的消息从队列中读取,并推送到ES平台进行持久化存储,便于后续平台守护进程读取发送告警内容给终端用户。以手机微信用户为例,输出数据到ES后,上游对手系统通过定时监听ES获取最新的告警非结构化数据条目,对每一条数据或一组数据,调用微信接口平台发消息接口,设定用户组/用户,拆解ES数据字段写入具体的告警消息、指标、超阈值信息、计数等字段,进行推送,手机微信用户即可收到具体的告警消息。
下面给出一个具体实施例,说明本发明实施例中微服务场景下的监控告警的具体应用。在本具体实施例中,如图3所示,按如下步骤进行微服务场景下的监控告警:
1、数据任务编排:告警监控任务、存储任务、大数据计算任务
2、告警规则建模:读取应用数据库获取用户告警配置定制信息,组装告警识别模型,此时即为确定了微服务告警的最小单元集合模型。
3、告警数据与规则关联:从Kafka消息队列中实时筛选符合微服务监控标准的消息条目,识别出四种不同的指标,并与规则模型匹配,把单条数据按所有规则维度平铺来初始化数据条目,在内存中建立Spark计算使用的临时数据表格映射。(即大规模数据集并行运算架构中的Map)
4、计算告警阈值匹配告警规则:将上述模型和内存数据表,在Spark大数据计算平台运行分布式计算,将监控指标进行聚合归约(即大规模数据集并行运算架构中的Reduce),根据用户定制的告警规则,提取精简后的规约条目,作为针对最小告警单元的告警集合,生成流式消息推送输出到Kafka队列。
5、存储模块写入ES:大数据计算中数据存储是最终计算结果落地的一种重要实现手段,消息队列生命周期较短,并考虑到多例和高可用并发计算的可能,最终由存储模块读取步骤4中的输出消息,持久化到ES告警索引中,便于平台端读取并发送告警信函。在平台端视角中,ES告警索引可作为批量数据使用,故此处为流式任务和批量任务的交汇转折点。
在本发明实施例中,告警规则建模中根据微服务监控的目标——服务或是接口进行的不同的处理逻辑,并做到不重不漏。如果是服务,由于服务包含多个接口,最小告警单元的建模需要进行接口聚合,而如果是接口,最小告警单元建模为接口粒度。同时根据微服务部署的场景有集群、单元、部署组,导致服务名和接口名都不具备唯一性,也需要通过对数据的充分平铺保证建模单元不重不漏。阈值计算部分由于是分布式计算,计算任务和数据被拆分为多个步骤并发送至不同的服务器上,需要对数据进行过滤、聚合、再过滤完成指标的匹配和阈值的区间匹配。最后还需要把不同的服务器数据进行归一,进行去重运算,此处是一个难点,如果不执行此步运算,告警结果将失去唯一性,会造成大量重复告警数据滋扰用户。微服务监控告警可以脱离微服务本身,单独运行在大数据平台中,通过配置数据库和消息队列与微服务自身和配置平台建立联系,流式数据运算的独立性不会对现有产品的运行稳定性造成影响,可以在秒级监控微服务业务的实时运行状况并对指标进行告警。告警根据微服务运行的场景、监控的目标、阈值的种类,可定制化的能力相对开放,用户可以自行组装所需的规则,而不需要过度的学习成本即可获取实时的计算和告警信息能力。
基于同一发明构思,本发明实施例还提供了一种微服务场景下的监控告警装置,如下面的实施例所述。由于这些解决问题的原理与微服务场景下的监控告警方法相似,因此微服务场景下的监控告警装置的实施可以参见方法的实施,重复之处不再赘述。
图4为本发明实施例中微服务场景下的监控告警装置的结构图,如图4所示,该微服务场景下的监控告警装置包括:
消息获得模块401,用于获得Kafka消息队列,所述Kafka消息队列中包含多个应用日志处理消息;
关联匹配模块402,用于将每个应用日志处理消息与预先建立的模型实例进行关联匹配,所述模型实例根据告警规则配置数据,Kafka历史消息队列和告警对象类型进行预先建立,所述告警对象类型包括:服务和接口;
数据过滤模块403,用于根据预设的告警策略阈值,对关联匹配后的数据条目进行过滤;
监控告警模块404,用于根据过滤的结果,进行微服务场景下的监控告警。
一个实施例中,按如下方式预先建立模型实例:
从数据库读取告警规则配置数据;
根据所述告警规则配置数据,确定告警规则对象数据;
根据告警规则对象数据关联的原子规则ID,确定原子规则配置数据;
若告警对象类型为服务,则根据原子规则配置数据和Kafka历史消息队列生成服务下所有接口集合的最小告警单元;
若告警对象类型为接口,则根据原子规则配置数据和Kafka历史消息队列生成接口的最小告警单元。
一个实施例中,所述应用日志处理消息中包含:时间戳指标,部署平台指标,服务耗时指标,成功率指标,吞吐量指标;
关联匹配模块402进一步用于:利用mapPartition算子对应用日志处理消息进行分片遍历处理,将分片遍历处理后应用日志处理消息中的时间戳指标,部署平台指标,服务耗时指标,成功率指标,吞吐量指标与预先建立的模型实例进行关联匹配。
一个实施例中,微服务场景下的监控告警装置还包括:
结果存储模块,用于将过滤的结果推送至ES平台进行持久化存储。
综上所述,本发明实施例通过获得Kafka消息队列,所述Kafka消息队列中包含多个应用日志处理消息;将每个应用日志处理消息与预先建立的模型实例进行关联匹配,所述模型实例根据告警规则配置数据,Kafka历史消息队列和告警对象类型进行预先建立,所述告警对象类型包括:服务和接口;根据预设的告警策略阈值,对关联匹配后的数据条目进行过滤;根据过滤的结果,进行微服务场景下的监控告警。本发明实施例根据告警规则配置数据,Kafka历史消息队列和告警对象类型预先建立了模型实例,在获得Kafka消息队列后,将每个应用日志处理消息与预先建立的模型实例进行关联匹配,流式数据运算的独立性不会对现有产品的运行稳定性造成影响,从而可以在秒级监控微服务业务的实时运行状况并对指标进行告警,有效提高监控告警性能。
基于前述发明构思,如图5所示,本发明还提出了一种计算机设备500,包括存储器510、处理器520及存储在存储器510上并可在处理器520上运行的计算机程序530,所述处理器520执行所述计算机程序530时实现前述微服务场景下的监控告警方法。
基于前述发明构思,本发明提出了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现前述微服务场景下的监控告警方法。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种微服务场景下的监控告警方法,其特征在于,包括:
获得Kafka消息队列,所述Kafka消息队列中包含多个应用日志处理消息;
将每个应用日志处理消息与预先建立的模型实例进行关联匹配,所述模型实例根据告警规则配置数据,Kafka历史消息队列和告警对象类型进行预先建立,所述告警对象类型包括:服务和接口;
根据预设的告警策略阈值,对关联匹配后的数据条目进行过滤;
根据过滤的结果,进行微服务场景下的监控告警。
2.如权利要求1所述的微服务场景下的监控告警方法,其特征在于,按如下方式预先建立模型实例:
从数据库读取告警规则配置数据;
根据所述告警规则配置数据,确定告警规则对象数据;
根据告警规则对象数据关联的原子规则ID,确定原子规则配置数据;
若告警对象类型为服务,则根据原子规则配置数据和Kafka历史消息队列生成服务下所有接口集合的最小告警单元;
若告警对象类型为接口,则根据原子规则配置数据和Kafka历史消息队列生成接口的最小告警单元。
3.如权利要求1所述的微服务场景下的监控告警方法,其特征在于,所述应用日志处理消息中包含:时间戳指标,部署平台指标,服务耗时指标,成功率指标,吞吐量指标;
将每个应用日志处理消息与预先建立的模型实例进行关联匹配,包括:利用mapPartition算子对应用日志处理消息进行分片遍历处理,将分片遍历处理后应用日志处理消息中的时间戳指标,部署平台指标,服务耗时指标,成功率指标,吞吐量指标与预先建立的模型实例进行关联匹配。
4.如权利要求1所述的微服务场景下的监控告警方法,其特征在于,还包括:
将过滤的结果推送至ES平台进行持久化存储。
5.一种微服务场景下的监控告警装置,其特征在于,包括:
消息获得模块,用于获得Kafka消息队列,所述Kafka消息队列中包含多个应用日志处理消息;
关联匹配模块,用于将每个应用日志处理消息与预先建立的模型实例进行关联匹配,所述模型实例根据告警规则配置数据,Kafka历史消息队列和告警对象类型进行预先建立,所述告警对象类型包括:服务和接口;
数据过滤模块,用于根据预设的告警策略阈值,对关联匹配后的数据条目进行过滤;
监控告警模块,用于根据过滤的结果,进行微服务场景下的监控告警。
6.如权利要求5所述的微服务场景下的监控告警装置,其特征在于,按如下方式预先建立模型实例:
从数据库读取告警规则配置数据;
根据所述告警规则配置数据,确定告警规则对象数据;
根据告警规则对象数据关联的原子规则ID,确定原子规则配置数据;
若告警对象类型为服务,则根据原子规则配置数据和Kafka历史消息队列生成服务下所有接口集合的最小告警单元;
若告警对象类型为接口,则根据原子规则配置数据和Kafka历史消息队列生成接口的最小告警单元。
7.如权利要求5所述的微服务场景下的监控告警装置,其特征在于,所述应用日志处理消息中包含:时间戳指标,部署平台指标,服务耗时指标,成功率指标,吞吐量指标;
关联匹配模块进一步用于:利用mapPartition算子对应用日志处理消息进行分片遍历处理,将分片遍历处理后应用日志处理消息中的时间戳指标,部署平台指标,服务耗时指标,成功率指标,吞吐量指标与预先建立的模型实例进行关联匹配。
8.如权利要求5所述的微服务场景下的监控告警装置,其特征在于,还包括:
结果存储模块,用于将过滤的结果推送至ES平台进行持久化存储。
9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至4任一所述方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有执行权利要求1至4任一所述方法的计算机程序。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110798950.3A CN113448812A (zh) | 2021-07-15 | 2021-07-15 | 微服务场景下的监控告警方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110798950.3A CN113448812A (zh) | 2021-07-15 | 2021-07-15 | 微服务场景下的监控告警方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113448812A true CN113448812A (zh) | 2021-09-28 |
Family
ID=77816380
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110798950.3A Pending CN113448812A (zh) | 2021-07-15 | 2021-07-15 | 微服务场景下的监控告警方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113448812A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113868098A (zh) * | 2021-10-18 | 2021-12-31 | 杭州安恒信息技术股份有限公司 | 一种任务监控方法、装置、设备及存储介质 |
CN114422339A (zh) * | 2022-03-29 | 2022-04-29 | 西安塔力科技有限公司 | 一种自动调度的分布式数据监控系统及方法 |
CN114531338A (zh) * | 2022-04-24 | 2022-05-24 | 中邮消费金融有限公司 | 一种基于调用链数据的监控告警和溯源方法及系统 |
CN115190002A (zh) * | 2022-09-13 | 2022-10-14 | 北京六方云信息技术有限公司 | 告警处理方法、装置、终端设备以及存储介质 |
CN115314360A (zh) * | 2022-07-27 | 2022-11-08 | 浪潮软件股份有限公司 | 消息队列服务性能监控系统及方法 |
CN116192611A (zh) * | 2023-03-03 | 2023-05-30 | 阿维塔科技(重庆)有限公司 | 一种基于多个微服务场景的统一告警方法、系统及设备 |
CN117424797A (zh) * | 2023-12-19 | 2024-01-19 | 天讯瑞达通信技术有限公司 | 一种实时大并发告警接收和处理方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106385331A (zh) * | 2016-09-08 | 2017-02-08 | 努比亚技术有限公司 | 一种基于日志的监控告警方法及系统 |
CN111786833A (zh) * | 2020-07-01 | 2020-10-16 | 浪潮云信息技术股份公司 | 一种基于云服务平台的告警匹配处理的实现方法 |
CN112532456A (zh) * | 2020-12-04 | 2021-03-19 | 浪潮云信息技术股份公司 | 一种云环境下的告警监控方法 |
CN113051138A (zh) * | 2021-04-30 | 2021-06-29 | 中国银行股份有限公司 | 基于Dubbo服务接口的日志分析装置及方法 |
-
2021
- 2021-07-15 CN CN202110798950.3A patent/CN113448812A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106385331A (zh) * | 2016-09-08 | 2017-02-08 | 努比亚技术有限公司 | 一种基于日志的监控告警方法及系统 |
CN111786833A (zh) * | 2020-07-01 | 2020-10-16 | 浪潮云信息技术股份公司 | 一种基于云服务平台的告警匹配处理的实现方法 |
CN112532456A (zh) * | 2020-12-04 | 2021-03-19 | 浪潮云信息技术股份公司 | 一种云环境下的告警监控方法 |
CN113051138A (zh) * | 2021-04-30 | 2021-06-29 | 中国银行股份有限公司 | 基于Dubbo服务接口的日志分析装置及方法 |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113868098A (zh) * | 2021-10-18 | 2021-12-31 | 杭州安恒信息技术股份有限公司 | 一种任务监控方法、装置、设备及存储介质 |
CN114422339A (zh) * | 2022-03-29 | 2022-04-29 | 西安塔力科技有限公司 | 一种自动调度的分布式数据监控系统及方法 |
CN114531338A (zh) * | 2022-04-24 | 2022-05-24 | 中邮消费金融有限公司 | 一种基于调用链数据的监控告警和溯源方法及系统 |
CN115314360A (zh) * | 2022-07-27 | 2022-11-08 | 浪潮软件股份有限公司 | 消息队列服务性能监控系统及方法 |
CN115314360B (zh) * | 2022-07-27 | 2024-04-12 | 浪潮软件股份有限公司 | 消息队列服务性能监控系统及方法 |
CN115190002A (zh) * | 2022-09-13 | 2022-10-14 | 北京六方云信息技术有限公司 | 告警处理方法、装置、终端设备以及存储介质 |
CN115190002B (zh) * | 2022-09-13 | 2022-11-22 | 北京六方云信息技术有限公司 | 告警处理方法、装置、终端设备以及存储介质 |
CN116192611A (zh) * | 2023-03-03 | 2023-05-30 | 阿维塔科技(重庆)有限公司 | 一种基于多个微服务场景的统一告警方法、系统及设备 |
CN117424797A (zh) * | 2023-12-19 | 2024-01-19 | 天讯瑞达通信技术有限公司 | 一种实时大并发告警接收和处理方法 |
CN117424797B (zh) * | 2023-12-19 | 2024-03-01 | 天讯瑞达通信技术有限公司 | 一种实时大并发告警接收和处理方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113448812A (zh) | 微服务场景下的监控告警方法及装置 | |
CN107145489B (zh) | 一种基于云平台的客户端应用的信息统计方法和装置 | |
CN102404126B (zh) | 一种云计算在应用过程中的收费方法 | |
CN107103064B (zh) | 数据统计方法及装置 | |
CN111885040A (zh) | 分布式网络态势感知方法、系统、服务器及节点设备 | |
CN108200111B (zh) | 资源配置信息更新方法、装置和资源接口设备 | |
CN106815125A (zh) | 一种日志审计方法及平台 | |
CN112749056A (zh) | 应用服务指标监控方法、装置、计算机设备和存储介质 | |
CN114338746B (zh) | 一种用于物联网设备数据收集的分析预警方法及系统 | |
CN117971606B (zh) | 基于ElasticSearch的日志管理系统及方法 | |
CN112988509B (zh) | 一种告警消息过滤方法、装置、电子设备及存储介质 | |
CN113762906B (zh) | 任务周期延迟的告警方法、装置、设备及存储介质 | |
CN112306700A (zh) | 一种异常rpc请求的诊断方法和装置 | |
CN113505048A (zh) | 基于应用系统画像的统一监控平台及实现方法 | |
CN106951360B (zh) | 数据统计完整度计算方法和系统 | |
CN108390793A (zh) | 一种分析系统稳定性的方法及装置 | |
CN111339052A (zh) | 一种非结构化日志数据处理方法及装置 | |
US10331484B2 (en) | Distributed data platform resource allocator | |
CN110196868A (zh) | 基于分布式的工单流程监控方法 | |
CN115712646A (zh) | 一种告警策略生成方法、装置和存储介质 | |
CN114756301B (zh) | 日志处理方法、装置和系统 | |
CN110928938B (zh) | 一种接口中间件系统 | |
Iuhasz et al. | Monitoring of exascale data processing | |
CN115664992A (zh) | 网络运行数据的处理方法、装置、电子设备及介质 | |
CN110413496B (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 |