CN114978968A - 微服务的异常检测方法、装置、计算机设备和存储介质 - Google Patents
微服务的异常检测方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN114978968A CN114978968A CN202210507714.6A CN202210507714A CN114978968A CN 114978968 A CN114978968 A CN 114978968A CN 202210507714 A CN202210507714 A CN 202210507714A CN 114978968 A CN114978968 A CN 114978968A
- Authority
- CN
- China
- Prior art keywords
- micro
- abnormal
- service
- preset
- detection model
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/16—Threshold monitoring
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请涉及人工智能技术领域,提供一种微服务的异常检测方法、装置、计算机设备和存储介质,方法包括:对于微服务架构下的每个微服务,获取各微服务在预设时间段内的指标参数;基于指标参数以及预设的指标参数阈值,对所有微服务进行筛选处理得到对应的第一微服务;基于各第一微服务的指标参数与预设的异常检测模型生成各第一微服务的异常概率;将各第一微服务的异常概率分别与预设的概率阈值进行数值比较处理,从所有第一微服务中筛选出异常概率大于概率阈值的第二微服务;将第二微服务确定为所有微服务中存在异常的目标微服务。本申请能提高判断微服务异常的准确率。本申请还可以应用于区块链领域,上述异常概率等数据可以存储于区块链上。
Description
技术领域
本申请涉及人工智能技术领域,具体涉及一种微服务的异常检测方法、装置、计算机设备和存储介质。
背景技术
微服务架构是一项在云中部署应用和服务的新技术。微服务通常会部署到多个节点中,首先在预发布的环境下进行运行一段时间,若没有发现异常,则发布。发布后进入运维环境。从预发布环境到运维环境时,需要预测微服务是否会出现异常,以暂停发布或修正异常。
现有预测微服务是否出现异常的方式通常是通过对微服务进行心跳测试,若微服务失去响应或者响应延迟,则说明微服务出现异常。这种方法经常出现误判,预测准确性较低,如果展示错误的微服务状态则会导致工作人员做出错误处理。
发明内容
本申请的主要目的为提供一种微服务的异常检测方法、装置、计算机设备和存储介质,旨在解决现有预测微服务是否出现异常的方式存在容易出现误判,预测准确性较低的技术问题。
本申请提出一种微服务的异常检测方法,所述方法包括步骤:
对于微服务架构下的每个微服务,获取各所述微服务在预设时间段内的指标参数;
基于所述指标参数以及预设的指标参数阈值,对所有所述微服务进行筛选处理得到对应的第一微服务;
基于各所述第一微服务的指标参数与预设的异常检测模型生成各所述第一微服务的异常概率;
将各所述第一微服务的异常概率分别与预设的概率阈值进行数值比较处理,从所有所述第一微服务中筛选出异常概率大于所述概率阈值的第二微服务;
将所述第二微服务确定为所有所述微服务中存在异常的目标微服务。
可选地,所述基于各所述第一微服务的指标参数与预设的异常检测模型生成各所述第一微服务的异常概率的步骤,包括:
获取预先训练生成的多个异常检测模型;其中,每一个所述异常检测模型是根据各自不同的训练样本集训练生成的,每一个所述训练样本集包括若干指标数据样本,以及与所述指标数据样本对应的分类标签;
基于预设的验证样本集从所有所述异常检测模型中确定出目标异常检测模型;
将各所述第一微服务的指标参数分别输入至目标异常检测模型内;
通过所述目标异常检测模型对输入的各所述第一微服务的指标参数进行异常分析,得到与各所述第一微服务的指标参数分别对应的异常概率。
可选地,所述基于预设的验证样本集从所有所述异常检测模型中确定出目标异常检测模型的步骤,包括:
获取所述验证样本集;
基于所述验证样本集,计算各所述异常检测模型的模型处理时间;以及,
基于所述验证样本集,按照预设计算规则生成各所述异常检测模型的综合评测分值;
从所有所述异常检测模型筛选出模型处理时间小于预设时间阈值的第一异常检测模型;
从所述第一异常检测模型中筛选出综合评测分值大于预设分值阈值的第二异常检测模型;
将所述第二异常检测模型作为所述目标异常检测模型。
可选地,所述目标异常检测模型的数量为多个,所述通过所述目标异常检测模型对输入的各所述第一微服务的指标参数进行异常分析,得到与各所述第一微服务的指标参数分别对应的异常概率的步骤,包括:
遍历每一个所述第一微服务的指标参数,将当前遍历到的指标参数分别输入至各所述目标异常检测模型内;
获取各所述目标异常检测模型各自输出的与所述当前遍历到的指标参数对应的指定异常概率;
获取各所述目标异常检测模型分别对应的模型权重;
基于所述指定异常概率与所述模型权重计算得到与所述当前遍历到的指标参数对应的异常概率;
重复遍历步骤,直至完成对所有所述第一微服务的指标参数的异常分析处理,得到与每一个所述第一微服务的指标参数分别对应的异常概率。
可选地,所述获取预先训练生成的多个异常检测模型的步骤之前,包括:
获取预设数量的训练样本集,并从所述训练样本集中随机筛选出指定训练样本集;其中,所述指定训练样本集为所有所述训练样本集中的任意一个样本集,所述指定训练样本集包括若干指定指标数据样本,以及与所述指定指标数据样本对应的指定分类标签;
通过所述指定指标数据样本与所述指定分类标签对预设的机器学习模型进行训练,得到相应的初始异常检测模型;
获取预设的测试样本集,并基于所述测试样本集对所述初始异常检测模型进行准确度测试,得到对应的预测准确率;
判断所述预测准确率是否大于预设的准确率阈值;
若大于所述准确率阈值,将所述初始异常检测模型作为与所述指定训练样本集对应的异常检测模型。
可选地,所述基于所述指标参数以及预设的指标参数阈值,对所有所述微服务进行筛选处理得到对应的第一微服务的步骤,包括:
获取预设的指标参数阈值;其中,所述指标参数阈值为对应所有所述微服务的一个综合阈值;
将每一个所述微服务的指标参数分别与所述指标参数阈值进行数值比较处理,从所有所述微服务中筛选出指标参数满足所述指标参数阈值的指定微服务;
将所述指定微服务作为所述第一微服务。
可选地,所述将所述第二微服务确定为所有所述微服务中存在异常的目标微服务的步骤之后,包括:
将所述目标微服务设置为隔离状态;
获取所述目标微服务的微服务标识;
基于所述微服务标识与预设的异常信息模板生成相应的异常预警信息;
获取预设的邮件登录信息,以及获取与目标用户对应的目标邮件地址;
基于所述邮件登录信息登录至对应的邮件服务器;
通过所述邮件服务器将所述异常预警信息发送至所述目标邮件地址。
本申请还提供一种微服务的异常检测装置,包括:
第一获取模块,用于对于微服务架构下的每个微服务,获取各所述微服务在预设时间段内的指标参数;
第一筛选模块,用于基于所述指标参数以及预设的指标参数阈值,对所有所述微服务进行筛选处理得到对应的第一微服务;
第一生成模块,用于基于各所述第一微服务的指标参数与预设的异常检测模型生成各所述第一微服务的异常概率;
第二筛选模块,用于将各所述第一微服务的异常概率分别与预设的概率阈值进行数值比较处理,从所有所述第一微服务中筛选出异常概率大于所述概率阈值的第二微服务;
确定模块,用于将所述第二微服务确定为所有所述微服务中存在异常的目标微服务。
本申请还提供一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时实现上述方法的步骤。
本申请还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述方法的步骤。
本申请中提供的微服务的异常检测方法、装置、计算机设备和存储介质,具有以下有益效果:
本申请中提供的微服务的异常检测方法、装置、计算机设备和存储介质,针对微服务架构下的每个微服务,在得到微服务的指标参数后,会先基于所述指标参数以及预设的指标参数阈值,对所有所述微服务进行筛选处理得到对应的第一微服务。在此基础上,再使用预设的异常检测模型对第一微服务进行异常检测,进而从所有所述第一微服务中筛选出异常概率值大于所述概率阈值的第二微服务作为最终的存在异常的目标微服务。本申请通过对微服务架构下的微服务进行两次异常识别筛选,再根据两次检测的结果将在两次异常识别筛选中同时符合筛选条件的微服务确定为异常微服务,从而提高了判断微服务异常的准确率,解决了传统方法容易出现误判的技术问题。
附图说明
图1是本申请一实施例的微服务的异常检测方法的流程示意图;
图2是本申请一实施例的微服务的异常检测装置的结构示意图;
图3是本申请一实施例的计算机设备的结构示意图。
本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用于解释本申请,并不用于限定本申请。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
本申请实施例可以基于人工智能技术对相关的数据进行获取和处理。其中,人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。
人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、机器人技术、生物识别技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
参照图1,本申请一实施例的微服务的异常检测方法,包括:
S10:对于微服务架构下的每个微服务,获取各所述微服务在预设时间段内的指标参数;
S20:基于所述指标参数以及预设的指标参数阈值,对所有所述微服务进行筛选处理得到对应的第一微服务;
S30:基于各所述第一微服务的指标参数与预设的异常检测模型生成各所述第一微服务的异常概率;
S40:将各所述第一微服务的异常概率分别与预设的概率阈值进行数值比较处理,从所有所述第一微服务中筛选出异常概率大于所述概率阈值的第二微服务;
S50:将所述第二微服务确定为所有所述微服务中存在异常的目标微服务。
如上述步骤S10至S50所述,本方法实施例的执行主体为一种微服务的异常检测装置。在实际应用中,上述微服务的异常检测装置可以通过虚拟装置,例如软件代码实现,也可以通过写入或集成有相关执行代码的实体装置实现,且可以与用户通过键盘、鼠标、遥控器、触摸板或声控设备等方式进行人机交互。本实施例中的微服务的异常检测装置,能够有效提高判断微服务异常的准确率,解决了传统方法容易出现误判的技术问题。
具体地,首先对于微服务架构下的每个微服务,获取各所述微服务在预设时间段内的指标参数。其中,对于所述预设时间段不作具体限定,可根据实际使用需求进行确定,例如可为距离当前时间的前一个小时。所述微服务的数量为多个。另外,所述指标参数可包括请求处理错误率和/或请求处理超时率。然后基于所述指标参数以及预设的指标参数阈值,对所有所述微服务进行筛选处理得到对应的第一微服务。其中,所述指标参数阈值可包括错误阈值和/或超时阈值。另外,对于所述基于所述指标参数以及预设的指标参数阈值,对所有所述微服务进行筛选处理得到对应的第一微服务的具体实施过程,本申请将在后续的具体实施例中对此进行进一步的细节描述,在此不作过多阐述。
之后基于各所述第一微服务的指标参数与预设的异常检测模型生成各所述第一微服务的异常概率。其中,对于所述基于各所述第一微服务的指标参数与预设的异常检测模型生成各所述第一微服务的异常概率的具体实施过程,本申请将在后续的具体实施例中对此进行进一步的细节描述,在此不作过多阐述。
后续将各所述第一微服务的异常概率分别与预设的概率阈值进行数值比较处理,从所有所述第一微服务中筛选出异常概率大于所述概率阈值的第二微服务。其中,对于所述概率阈值的取值不作具体限定,可根据实际使用需求进行设置。最后将所述第二微服务确定为所有所述微服务中存在异常的目标微服务。
本实施例中,针对微服务架构下的每个微服务,在得到微服务的指标参数后,会先基于所述指标参数以及预设的指标参数阈值,对所有所述微服务进行筛选处理得到对应的第一微服务。在此基础上,再使用预设的异常检测模型对第一微服务进行异常检测,进而从所有所述第一微服务中筛选出异常概率值大于所述概率阈值的第二微服务作为最终的存在异常的目标微服务。本实施例通过对微服务架构下的微服务进行两次异常识别筛选,再根据两次检测的结果将在两次异常识别筛选中同时符合筛选条件的微服务确定为异常微服务,从而提高了判断微服务异常的准确率,解决了传统方法容易出现误判的技术问题,有利于避免出现使用异常微服务对服务请求进行处理而导致服务请求无法正常处理的情况,有效地提高了微服务的运行稳定性,保障了服务请求的正常处理,保证了用户的使用体验。
进一步地,本申请一实施例中,上述步骤S30,包括:
S300:获取预先训练生成的多个异常检测模型;其中,每一个所述异常检测模型是根据各自不同的训练样本集训练生成的,每一个所述训练样本集包括若干指标数据样本,以及与所述指标数据样本对应的分类标签;
S301:基于预设的验证样本集从所有所述异常检测模型中确定出目标异常检测模型;
S302:将各所述第一微服务的指标参数分别输入至目标异常检测模型内;
S303:通过所述目标异常检测模型对输入的各所述第一微服务的指标参数进行异常分析,得到与各所述第一微服务的指标参数分别对应的异常概率。
如上述步骤S300至S303所述,所述基于各所述第一微服务的指标参数与预设的异常检测模型生成各所述第一微服务的异常概率的步骤,具体可包括:首先获取预先训练生成的多个异常检测模型。其中,每一个所述异常检测模型是根据各自不同的训练样本集训练生成的,每一个所述训练样本集包括若干指标数据样本,以及与所述指标数据样本对应的分类标签。然后基于预设的验证样本集从所有所述异常检测模型中确定出目标异常检测模型。其中,可以基于该验证样本集测试出每一个异常检测模型的模型处理时间与综合评测分值,进而根据得到的处理时间与综合评测分值来从所有所述异常检测模型中筛选出同时具有较高的综合评测分值以及较快的处理效率的目标异常检测模型。后续将各所述第一微服务的指标参数分别输入至目标异常检测模型内。最后通过所述目标异常检测模型对输入的各所述第一微服务的指标参数进行异常分析,得到与各所述第一微服务的指标参数分别对应的异常概率。其中,所述目标异常检测模型的数量为多个。另外,对于通过所述目标异常检测模型对输入的各所述第一微服务的指标参数进行异常分析,得到与各所述第一微服务的指标参数分别对应的异常概率的具体实施过程,本申请将在后续的具体实施例中对此进行进一步的细节描述,在此不作过多阐述。本实施例中,通过结合使用多个目标异常检测模型来对输入的各所述第一微服务的指标参数进行异常分析,以生成最终的与各所述第一微服务的指标参数分别对应的异常概率,可以避免仅利用一个异常检测模型来对第一微服务的指标参数进行异常分析而导致识别误差过大,有效地提高了对于微服务的异常检测的识别准确率。另外,同时也不需要使用训练生成的所有异常检测模型来进行异常检测处理而导致数据处理量过大,保证了模型识别的速度的流畅性,提高了生成微服务的异常概率的处理速率与智能性。
进一步地,本申请一实施例中,上述步骤S301,包括:
S3010:获取所述验证样本集;
S3011:基于所述验证样本集,计算各所述异常检测模型的模型处理时间;以及,
S3012:基于所述验证样本集,按照预设计算规则生成各所述异常检测模型的综合评测分值;
S3013:从所有所述异常检测模型筛选出模型处理时间小于预设时间阈值的第一异常检测模型;
S3014:从所述第一异常检测模型中筛选出综合评测分值大于预设分值阈值的第二异常检测模型;
S3015:将所述第二异常检测模型作为所述目标异常检测模型。
如上述步骤S3010至S3015所述,所述基于预设的验证样本集从所有所述异常检测模型中确定出目标异常检测模型的步骤,具体可包括:首先获取所述验证样本集。其中,所述验证样本集可基于所述训练样本集生成,如可随机从训练样本集中获取预设数值比例的数据作为该验证样本集,且该预设数值比例可根据实际需求进行设置,例如可设为15%。另外,所述验证样本集包括多个验证样本数据,以及与各所述验证样本数据分别对应的分类标签。然后基于所述验证样本集,计算各所述异常检测模型的模型处理时间。其中,所述基于所述验证样本集,计算各所述异常检测模型的模型处理时间的具体实施过程可包括:在第三异常检测模型获取到每一个所述验证样本数据时,分别统计所述第三异常检测模型输出与每一个所述验证样本数据分别对应的异常检测结果的处理时间。其中,所述第三异常检测模型为所有所述异常检测模型中的任意一个模型。具体的,假如第三异常检测模型接收到验证样本数据x的时间为T1,第三异常检测模型成功输出验证样本数据x的异常检测结果y时的时间为T2,则可得到该第三异常检测模型对应于验证样本数据x的处理时间为T=T2-T1。举例地,假如第三异常检测模型中包括6个验证样本数据Y1,Y2,Y3,Y4,Y5,Y6,采用上述的处理时间的统计方式对每一个验证样本数据进行计算后可得到:Y1的处理时间为1.2s,Y2的处理时间为1.5s,Y3的处理时间为2.1s,Y4的处理时间为1.6s,Y5的处理时间为1.1s,Y6的处理时间为0.6s。然后从所有所述处理时间中剔除掉数值最大的第一处理时间与数值最小的第二处理时间,得到对应的第三处理时间。其中,参照前述举例,可得到第一处理时间为Y3的处理时间2.1s,第二处理时间为Y6的处理时间为0.6s,从而得到第三处理时间包括Y1的处理时间1.2s,Y2的处理时间1.5s,Y4的处理时间1.6s以及Y5的处理时间1.1s。后续计算所有所述第三处理时间的和值,并获取所有所述第三处理时间的数量。其中,参照前述举例可计算得到所有所述第三处理时间的和值=1.2+1.5+1.6+1.1=5.4s,所述第三处理时间的数量为4。最后计算所述和值与所述数量之间的第一比值。并将所述第一比值作为所述第三异常检测模型的模型处理时间。其中,参照上述举例可计算得到所述第三异常检测模型的异常检测处理时间=5.4/4=1.35s。通过对数值最大的第一处理时间与数值最小的第二处理时间进行剔除,再计算剩余的所有第三处理时间的平均值作为相应的模型处理时间,可以使得生成的处理时间不容易受到处理时间中的极端数值的影响,有利于提高得到的模型处理时间的准确性。
以及基于所述验证样本集,按照预设计算规则生成各所述异常检测模型的综合评测分值。其中,所述基于所述验证样本集,按照预设计算规则生成各所述异常检测模型的综合评测分值的具体实施过程可包括:首先将所述验证样本集输入至第四异常检测模型内,计算生成所述第四异常检测模型的精确率。其中,所述第四异常检测模型为所有所述异常检测模型中的任意一个模型。以及将所述验证样本集输入至第四异常检测模型内,计算生成所述第四异常检测模型的召回率。具体的,可通过混淆矩阵来计算生成所述精确率与召回率。混淆矩阵用于衡量一个分类器的准确程度。对于二分类问题,将其样例根据真实类别和分类器的预测类别的组合划分为真正例(TruePositive,TP)、假正例(FalsePositive,FP)、真反例(TrueNegative,TN)、假反例(FalseNegative,FN)四种情形。基于混淆矩阵,可以根据以下公式计算精确率与召回率:精确率P=TP/(TP+FP),表示真实情况和预测结果皆为真/预测结果为真;召回率R=TP/(TP+FN),表示真实情况和预测结果皆为真/真实情况为真。然后获取与所述精确率对应的第一权重,以及获取与所述召回率对应的第二权重。其中,对于所述第一权重与第二权重的取值不作具体限定,可根据实际需求进行设置,举例地,第一权重为1,第二权重为0.5,或者第一权重为0.5,第二权重为1,等等。之后计算所述第一权重与所述第二权重之间的第二比值。其中,所述第二比值是指所述第一权重除以所述第二权重后得到的数值。最后基于所述精确率、所述召回率与所述第二比值,调用预设的计算公式生成所述第四异常检测模型的综合评测分值。其中,所述第四异常检测模型的综合评测分值是指结合所述第四异常检测模型的精确率、召回率、以及精确率与召回率之间的比值来计算生成的,该综合评测分值用于表征第四异常检测模型的数据综合处理能力。具体的,可将所述精确率、召回率以及第一比值代入至预设的计算公式内来生成相应的综合评测分值。所述计算公式具体为:其中,θ为所述第二比值,P为精确率,R为召回率。举例地,假如精确率为0.8,召回率为0.6,精确率的第一权重为1,召回率的第二权重为0.5,则可得第一比值为1/0.5=2,通过基于验证样本集来生成第四异常检测模型的精确率与召回率,进而可以使用与召回率与召回率相关的计算公式来快速的生成第四异常检测模型的综合评测分值,有利于后续可以基于得到的第四异常检测模型的综合评测分值来快速准确地从所有异常预测模型中确定出目标异常检测模型。
之后从所有所述异常检测模型筛选出模型处理时间小于预设时间阈值的第一异常检测模型。其中,对于所述预设时间阈值的取值不作具体限定,可根据实际需求进行设置。后续从所述第一异常检测模型中筛选出综合评测分值大于预设分值阈值的第二异常检测模型。其中,对于所述预设分数阈值的取值不作具体限定,可根据实际需求进行设置。最后将所述第二异常检测模型作为所述目标异常检测模型。本实施例通过使用预设的验证样本集生成各所述异常检测模型的综合评测分值与模型处理时间,进而可基于得到的综合评测分值与模型处理时间来确定出目标异常检测模型,由于得到的目标异常检测模型具有较高的综合评测分值以及较快的处理效率,使得后续利用该目标异常检测模型来对微服务进行异常检测,能够有效提高得到的与微服务的指标参数对应的异常检测结果的准确性,以及提高对于微服务的异常检测的处理效率。
进一步地,本申请一实施例中,所述目标异常检测模型的数量为多个,上述步骤S303,包括:
S3030:遍历每一个所述第一微服务的指标参数,将当前遍历到的指标参数分别输入至各所述目标异常检测模型内;
S3031:获取各所述目标异常检测模型各自输出的与所述当前遍历到的指标参数对应的指定异常概率;
S3032:获取各所述目标异常检测模型分别对应的模型权重;
S3033:基于所述指定异常概率与所述模型权重计算得到与所述当前遍历到的指标参数对应的异常概率;
S3034:重复遍历步骤,直至完成对所有所述第一微服务的指标参数的异常分析处理,得到与每一个所述第一微服务的指标参数分别对应的异常概率。
如上述步骤S3030至S3034所述,所述目标异常检测模型的数量为多个,所述通过所述目标异常检测模型对输入的各所述第一微服务的指标参数进行异常分析,得到与各所述第一微服务的指标参数分别对应的异常概率的步骤,具体可包括:首先遍历每一个所述第一微服务的指标参数,将当前遍历到的指标参数分别输入至各所述目标异常检测模型内。然后获取各所述目标异常检测模型各自输出的与所述当前遍历到的指标参数对应的指定异常概率。之后获取各所述目标异常检测模型分别对应的模型权重。其中,计算各所述目标异常检测模型分别对应的模型权重的过程可包括:获取特定目标异常检测模型的综合评价分值;其中,所述特定目标异常检测模型为所有所述目标异常检测模型的任意一个模型;计算所有所述目标异常检测模型的综合评价分值的第一和值;计算所述特定目标异常检测模型的综合评价分值与所述第一和值的商值;将所述商值作为所述特定目标异常检测模型的模型权重。在得到模型权重后,基于所述指定异常概率与所述模型权重计算得到与所述当前遍历到的指标参数对应的异常概率。其中,基于所述指定异常概率与所述模型权重计算得到与所述当前遍历到的指标参数对应的异常概率的过程可包括:基于所述目标异常检测模型的模型权重,对所有所述指定异常概率进行加权求和,得到对应的第二和值,并将所述第二和值作为所述当前遍历到的指标参数对应的微服务的异常概率。其中,可基于指定概率与特定目标异常检测模型之间的对应关系,以及特定目标异常检测模型与模型权重之间的对应关系,来生成模型权重与指定异常概率之间的目标对应关系,进而可基于该目标对应关系使用所述模型权重对所有所述指定异常概率进行加权求和处理以生成第二和值。后续重复遍历步骤,直至完成对所有所述第一微服务的指标参数的异常分析处理,得到与每一个所述第一微服务的指标参数分别对应的异常概率。本实施例中,对于每一个第一微服务的指标参数,通过获取各目标异常检测模型各自输出的与当前遍历到的指标参数对应的指定异常概率,以及获取各所述目标异常检测模型分别对应的模型权重,进而基于所述指定异常概率与所述模型权重计算得到与所述当前遍历到的指标参数对应的异常概率。由于生成的与所述当前遍历到的指标参数对应的异常概率为结合了每一个目标异常检测模型所输出的指定异常概率以及每一个目标异常检测模型的模型权重来得到的,有效的保证了最终生成的异常概率的准确性,有利于基于计算得到的异常概率来准确地实现对于微服务的异常检测。
进一步地,本申请一实施例中,上述步骤S300之前,包括:
S3000:获取预设数量的训练样本集,并从所述训练样本集中随机筛选出指定训练样本集;其中,所述指定训练样本集为所有所述训练样本集中的任意一个样本集,所述指定训练样本集包括若干指定指标数据样本,以及与所述指定指标数据样本对应的指定分类标签;
S3001:通过所述指定指标数据样本与所述指定分类标签对预设的机器学习模型进行训练,得到相应的初始异常检测模型;
S3002:获取预设的测试样本集,并基于所述测试样本集对所述初始异常检测模型进行准确度测试,得到对应的预测准确率;
S3003:判断所述预测准确率是否大于预设的准确率阈值;
S3004:若大于所述准确率阈值,将所述初始异常检测模型作为与所述指定训练样本集对应的异常检测模型。
如上述步骤S3000至S3004所述,在执行所述获取预先训练生成的多个异常检测模型的步骤之前,还可包括异常检测模型的训练生成过程。具体地,
首先获取预设数量的训练样本集,并从所述训练样本集中随机筛选出指定训练样本集。其中,所述指定训练样本集为所有所述训练样本集中的任意一个样本集,所述指定训练样本集包括若干指定指标数据样本,以及与所述指定指标数据样本对应的指定分类标签。然后通过所述指定指标数据样本与所述指定分类标签对预设的机器学习模型进行训练,得到相应的初始异常检测模型。其中,所述机器学习模型可包括逻辑回归模型、随机森林模型和朴素贝叶斯模型等。本实施例优选使用随机森林模型,也可称作随机森林分类器作为所述机器学习模型。随机森林是利用样本对多棵决策树进行训练并预测样本结果的一种分类器,决策树的训练过程采用的是自上而下的递归方法,其基本思想是以信息熵为度量构建一颗熵值下降最快的树,直到叶子节点的熵值为零,此时每个叶子节点的样本都属于同一类别。当输入新样本时,随机森林中各决策树分别判断投票,得票数最多的便作为最终的分类结果。随机森林通过决策树的集成学习与多数投票机制,拥有较好的抗噪声能力和不易过拟合,能够较好地对监控数据的异常状态进行判断。
当机器学习模型为随机森林模型时,具体的,通过所述指定指标数据样本与所述指定分类标签对预设的机器学习模型进行训练,得到相应的初始异常检测模型的过程可包括:步骤一,先对随机森林模型进行初始化。首先,设置bagging框架的参数,具体包含弱学习器的最大迭代次数、是否对样本集进行有放回抽样来构建树、是否采用袋外样本来评估模型的好坏;具体可设置n_estimators=50,即弱学习器的最大迭代次数为50,生成50棵决策树组成随机森林;设置bootstrap=true,即采用可放回抽样的方式获取子样本集。其余参数取默认值。然后,设置决策树参数,具体包含构建决策树模型时考虑的最大特征数、决策树最大深度、不纯度的衡量指标;具体可设置criterion=gini,即设置生成决策树时所采用的最佳分割属性的判决方法为gini,用基尼系数来计算节点的不纯度,其它参数取默认值,基尼系数的计算公式为:其中,Gini(D)代表基尼系数,D代表给定节点,总共有K类标签,k代表标签的任意分类,代表标签k在节点上所占的比例,pk代表样本属于第k类标签的概率。步骤二,利用随机森林算法对指定训练样本集中包括的指定指标数据样本,以及与所述指标数据样本对应的指定分类标签进行训练,生成随机森林分类模型;指定指标数据样本包括以下特征数据:微服务的请求处理错误率和/或请求处理超时率;指定分类标签可包括微服务存在异常,以及微服务不存在异常。首先,采用bagging集成算法从指定训练样本集中随机抽取m个样本;其中,假设指定训练样本集中共有n个训练样本,从指定训练样本中使用bootstrap方法随机抽取m个训练样本,组成一个新的训练集,m小于n。然后,从所有特征d中随机选择i个特征(i<d),并从k个特征中选择最佳分割属性作为节点建立CART决策树;其中,在建立CART决策树时,随机选择i个特征(k<5),然后从i个特征中选择最佳分割属性作为节点建立CART决策树;之后,重复以上两个步骤50次,建立50棵CART决策树,形成随机森林分类模型,即所述初始异常检测模型。其中,CART决策树的生成就是递归地构建二叉决策树的过程。CART用基尼(Gini)系数最小化准则来进行特征选择,生成二叉树。在训练生成了随机森林分类模型后。通过将微服务的指标参数输入到训练好的随机森林分类模型中,随机森林中的每棵决策树都会给出该微服务的指标参数的异常分析结果,随机森林依据少数服从多数的原则,将得票多的异常分析结果输出为最终预测的结果,从而高精度的完成对该微服务的指标参数的异常分析预测。
之后获取预设的测试样本集,并基于所述测试样本集对所述初始异常检测模型进行准确度测试,得到对应的预测准确率。后续判断所述预测准确率是否大于预设的准确率阈值。若大于所述准确率阈值,将所述初始异常检测模型作为与所述指定训练样本集对应的异常检测模型。具体的,所述测试样本集包括多个测试样本,以及与各所述测试样本分别对应的所标注的分类标签。在对机器学习模型训练一段时间得到初始异常检测模型后,利用所述测试样本集对所述初始异常检测模型进行准确度测试,即将测试样本集中的若干测试样本输入到初始异常检测模型中,在将任意一个测试样本输入到初始异常检测模型后,该初始异常检测模型内包含的每一棵决策树都会对该测试样本进行类别归类以输出相应的预测分类结果,即从初始异常检测模型当前CART决策树的根节点开始进行判断,遍历整个CART决策树,从而做出对于该测试样本的预测分类结果,依此类推,选择下一棵CART决策树重复执行相同的判断处理,直至所有的CART决策树都输出了预测分类结果。然后随机森林会依据少数服从多数的原则,将得票数量最多的一类预测分类结果作为与该测试样本对应的最终预测标签结果。初始异常检测模型预测得到每一个测试样本的预测标签结果,并将每一测试样本的预测标签结果与对该测试样本所标注的分类标签进行对比,如果一致,则该初始异常检测模型对该测试样本的预测准确,如果不一致,则该初始异常检测模型对该测试样本的预测错误,从而统计得到初始异常检测模型的预测准确率(预测准确率=预测准确的测试样本的数量/测试样本的总数量),如果所得到的预测准确率满足设定的准确率要求,即大于所述准确率阈值,则该初始异常检测模型收敛,从而结束该初始异常检测模型的训练,并将结束训练的初始异常检测模型作为与所述指定训练样本集对应的异常检测模型,并用于对监控数据进行异常分析识别。进一步地,若预测准确率小于或等于所述准确率阈值,那么说明所述训练后的初始异常检测模型的训练还没有达到了预设标准,可能是用于训练的训练样本集的样本数量过少或测试样本集的样本数量过少,因而,在这种情况时,则增大指定指标数据样本的预设数量,即增大了样本数量,如每次增加固定数量或每次增加随机数量,然后在这基础上重新执行上述的训练步骤与测试步骤,如此循环执行,直至达到了训练后的初始异常检测模型的模型准确率大于预设的准确率阈值的要求,则结束模型训练。
本实施例中,通过基于包括指定指标数据样本,以及与所述指标数据样本对应的指定分类标签的训练样本集来对预设的机器学习模型进行训练及测试,从而可以智能快速的生成符合实际使用需求的异常检测模型,有利于后续在得到与微服务对应的指标参数时,能够基于该异常检测模型对该指标参数进行异常分析,进而准确快速地生成与各指标参数对应的异常检测结果,进而可以根据得到的异常检测结果来进一步准确地从所有该第一微服务中确定出存在异常的目标微服务。
进一步地,本申请一实施例中,上述步骤S20,包括:
S200:获取预设的指标参数阈值;其中,所述指标参数阈值为对应所有所述微服务的一个综合阈值;
S201:将每一个所述微服务的指标参数分别与所述指标参数阈值进行数值比较处理,从所有所述微服务中筛选出指标参数满足所述指标参数阈值的指定微服务;
S202:将所述指定微服务作为所述第一微服务。
如上述步骤S200至S202所述,所述基于所述指标参数以及预设的指标参数阈值,对所有所述微服务进行筛选处理得到对应的第一微服务的步骤,具体可包括:首先获取预设的指标参数阈值。其中,所述指标参数阈值为对应所有所述微服务的一个综合阈值。其中,所述指标参数阈值为对应所有所述微服务的一个综合阈值。然后将每一个所述微服务的指标参数分别与所述指标参数阈值进行数值比较处理,从所有所述微服务中筛选出指标参数满足所述指标参数阈值的指定微服务。后续将所述指定微服务作为所述第一微服务。其中,所述指标参数可仅包括请求处理错误率或者仅包括请求处理超时率。对应的,所述指标参数阈值可包括错误阈值或超时阈值。通常根据监控服务可以记录每个时刻微服务所处理的总请求数量、请求处理错误次数和请求处理时长,然后通过滑动窗口算法可以统计某一时间段内,微服务的总请求数量、请求处理错误次数和请求处理时长,并根据该总请求数量、请求处理错误次数和请求处理时长确定出请求处理错误率与请求处理超时率,该请求处理错误率等于请求处理错误次数除以微服务的总请求数量。另外,可根据请求处理时长与预设的标准请求处理时长得到超时请求的数量,则请求处理超时率等于超时请求的数量除以微服务的总请求数量。此外,若请求的请求处理时长大于该标准请求处理时长,则将该请求视为超时请求。进一步地,所述指标参数当然也可以既包括请求处理错误率又包括请求超时率。此时需要分别对请求处理错误率和请求超时率进行判断,且只要有一个指标参数满足对应的指标参数阈值,就将该指标参数对应的微服务视作为异常微服务。在具体实现时,需要对微服务集群中的每个微服务进行筛选,首先判断当前微服务的指标参数是否满足指标参数阈值,如果满足,则将该当前微服务标记为初步异常的第一微服务,然后再将该当前微服务的下一个微服务作为新的当前微服务,继续判断当前微服务的指标参数是否满足指标参数阈值,直到微服务架构下所有的微服务判断完毕。另外,指标参数满足参数阈值可以是指标参数大于参数阈值,或者指标参数小于参数阈值等。本实施例中,通过基于微服务在预设时间段内的指标参数以及预设的指标参数阈值,来对所有所述微服务进行筛选处理,可以快速地初步确定出具有异常可能性的第一微服务,有利于后续可以基于该第一微服务的指标参数以及预设的异常检测模型来进一步准确地从该第一微服务中确定出存在异常的目标微服务。
进一步地,本申请一实施例中,上述步骤S50之后,包括:
S500:将所述目标微服务设置为隔离状态;
S501:获取所述目标微服务的微服务标识;
S502:基于所述微服务标识与预设的异常信息模板生成相应的异常预警信息;
S503:获取预设的邮件登录信息,以及获取与目标用户对应的目标邮件地址;
S504:基于所述邮件登录信息登录至对应的邮件服务器;
S505:通过所述邮件服务器将所述异常预警信息发送至所述目标邮件地址。
如上述步骤S500至S505所述,在执行完所述将所述第二微服务确定为所有所述微服务中存在异常的目标微服务的步骤之后,还可包括对于目标微服务的异常预警处理过程。具体地,首先将所述目标微服务设置为隔离状态。其中,可通过隔离器将运行异常的目标微服务进行隔离。当微服务处于隔离状态时,该微服务还可以继续运行正在运行的服务请求,但是不在为该微服务分配新的服务请求,以避免服务调用方继续向该微服务发送服务请求,进而导致服务请求无法得到正常的处理。然后获取所述目标微服务的微服务标识。其中,所述微服务标识可为微服务的id标识信息。之后基于所述微服务标识与预设的异常信息模板生成相应的异常预警信息。其中,所述异常信息模板为根据实际使用需求预先生成的信息模板,对于该信息模板的内容不作限定,例如可包括:“现检测出了如下存在的异常的微服务:…。”另外,可通过将该微服务标识填充至异常信息模板的相应位置处,以生成对应的异常预警信息。后续获取预设的邮件登录信息,以及获取与目标用户对应的目标邮件地址。其中,所述目标用户可为与微服务的运行监控相关的管理人员。在得到邮件登录信息后,基于所述邮件登录信息登录至对应的邮件服务器。最后通过所述邮件服务器将所述异常预警信息发送至所述目标邮件地址。本实施例中,在确定出所有微服务中存在异常的目标微服务后,会智能地将将所述目标微服务设置为隔离状态,有利于避免出现使用异常微服务对请求进行处理而导致请求无法正常处理的情况,有效地提高了微服务的运行稳定性。另外,还会智能地生成与目标微服务相应的异常预警信息,并将该异常预警信息发送至目标用户对应的目标邮件地址,使得目标用户能够基于该异常预警信息及时了解到目标微服务当前运行异常的信息,从而能够及时作出相应处理,有利于能够及时完成对于运行异常的微服务的修复处理。
本申请实施例中的微服务的异常检测方法还可以应用于区块链领域,如将上述异常概率等数据存储于区块链上。通过使用区块链来对上述异常概率进行存储和管理,能够有效地保证上述异常概率的安全性与不可篡改性。
上述区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
区块链底层平台可以包括用户管理、基础服务、智能合约以及运营监控等处理模块。其中,用户管理模块负责所有区块链参与者的身份信息管理,包括维护公私钥生成(账户管理)、密钥管理以及用户真实身份和区块链地址对应关系维护(权限管理)等,并且在授权的情况下,监管和审计某些真实身份的交易情况,提供风险控制的规则配置(风控审计);基础服务模块部署在所有区块链节点设备上,用来验证业务请求的有效性,并对有效请求完成共识后记录到存储上,对于一个新的业务请求,基础服务先对接口适配解析和鉴权处理(接口适配),然后通过共识算法将业务信息加密(共识管理),在加密之后完整一致的传输至共享账本上(网络通信),并进行记录存储;智能合约模块负责合约的注册发行以及合约触发和合约执行,开发人员可以通过某种编程语言定义合约逻辑,发布到区块链上(合约注册),根据合约条款的逻辑,调用密钥或者其它的事件触发执行,完成合约逻辑,同时还提供对合约升级注销的功能;运营监控模块主要负责产品发布过程中的部署、配置的修改、合约设置、云适配以及产品运行中的实时状态的可视化输出,例如:告警、监控网络情况、监控节点设备健康状态等。
参照图2,本申请一实施例中还提供了一种微服务的异常检测装置,包括:
第一获取模块1,用于对于微服务架构下的每个微服务,获取各所述微服务在预设时间段内的指标参数;
第一筛选模块2,用于基于所述指标参数以及预设的指标参数阈值,对所有所述微服务进行筛选处理得到对应的第一微服务;
第一生成模块3,用于基于各所述第一微服务的指标参数与预设的异常检测模型生成各所述第一微服务的异常概率;
第二筛选模块4,用于将各所述第一微服务的异常概率分别与预设的概率阈值进行数值比较处理,从所有所述第一微服务中筛选出异常概率大于所述概率阈值的第二微服务;
确定模块5,用于将所述第二微服务确定为所有所述微服务中存在异常的目标微服务。
本实施例中,上述模块或单元分别用于执行的操作与前述实施方式的微服务的异常检测方法的步骤一一对应,在此不再赘述。
进一步地,本申请一实施例中,上述第一生成模块3,包括:
第一获取单元,用于获取预先训练生成的多个异常检测模型;其中,每一个所述异常检测模型是根据各自不同的训练样本集训练生成的,每一个所述训练样本集包括若干指标数据样本,以及与所述指标数据样本对应的分类标签;
第一确定单元,用于基于预设的验证样本集从所有所述异常检测模型中确定出目标异常检测模型;
输入单元,用于将各所述第一微服务的指标参数分别输入至目标异常检测模型内;
生成单元,用于通过所述目标异常检测模型对输入的各所述第一微服务的指标参数进行异常分析,得到与各所述第一微服务的指标参数分别对应的异常概率。
本实施例中,上述模块或单元分别用于执行的操作与前述实施方式的微服务的异常检测方法的步骤一一对应,在此不再赘述。
进一步地,本申请一实施例中,上述第一确定单元,包括:
第一获取子单元,用于获取所述验证样本集;
第一计算子单元,用于基于所述验证样本集,计算各所述异常检测模型的模型处理时间;以及,
生成子单元,用于基于所述验证样本集,按照预设计算规则生成各所述异常检测模型的综合评测分值;
第一筛选子单元,用于从所有所述异常检测模型筛选出模型处理时间小于预设时间阈值的第一异常检测模型;
第二筛选子单元,用于从所述第一异常检测模型中筛选出综合评测分值大于预设分值阈值的第二异常检测模型;
确定子单元,用于将所述第二异常检测模型作为所述目标异常检测模型。
本实施例中,上述模块或单元分别用于执行的操作与前述实施方式的微服务的异常检测方法的步骤一一对应,在此不再赘述。
进一步地,本申请一实施例中,上述生成单元,包括:
输入子单元,用于遍历每一个所述第一微服务的指标参数,将当前遍历到的指标参数分别输入至各所述目标异常检测模型内;
第二获取子单元,用于获取各所述目标异常检测模型各自输出的与所述当前遍历到的指标参数对应的指定异常概率;
第三获取子单元,用于获取各所述目标异常检测模型分别对应的模型权重;
第二计算子单元,用于基于所述指定异常概率与所述模型权重计算得到与所述当前遍历到的指标参数对应的异常概率;
处理子单元,用于重复遍历步骤,直至完成对所有所述第一微服务的指标参数的异常分析处理,得到与每一个所述第一微服务的指标参数分别对应的异常概率。
本实施例中,上述模块或单元分别用于执行的操作与前述实施方式的微服务的异常检测方法的步骤一一对应,在此不再赘述。
进一步地,本申请一实施例中,上述第一生成模块3,包括:
第二获取单元,用于获取预设数量的训练样本集,并从所述训练样本集中随机筛选出指定训练样本集;其中,所述指定训练样本集为所有所述训练样本集中的任意一个样本集,所述指定训练样本集包括若干指定指标数据样本,以及与所述指定指标数据样本对应的指定分类标签;
训练单元,用于通过所述指定指标数据样本与所述指定分类标签对预设的机器学习模型进行训练,得到相应的初始异常检测模型;
测试单元,用于获取预设的测试样本集,并基于所述测试样本集对所述初始异常检测模型进行准确度测试,得到对应的预测准确率;
判断单元,用于判断所述预测准确率是否大于预设的准确率阈值;
第二确定单元,用于若大于所述准确率阈值,将所述初始异常检测模型作为与所述指定训练样本集对应的异常检测模型。
本实施例中,上述模块或单元分别用于执行的操作与前述实施方式的微服务的异常检测方法的步骤一一对应,在此不再赘述。
进一步地,本申请一实施例中,上述第一筛选模块2,包括:
第三获取单元,用于获取预设的指标参数阈值;其中,所述指标参数阈值为对应所有所述微服务的一个综合阈值;
筛选单元,用于将每一个所述微服务的指标参数分别与所述指标参数阈值进行数值比较处理,从所有所述微服务中筛选出指标参数满足所述指标参数阈值的指定微服务;
第三确定单元,用于将所述指定微服务作为所述第一微服务。
本实施例中,上述模块或单元分别用于执行的操作与前述实施方式的微服务的异常检测方法的步骤一一对应,在此不再赘述。
进一步地,本申请一实施例中,上述微服务的异常检测装置,包括:
设置模块,用于将所述目标微服务设置为隔离状态;
第二获取模块,用于获取所述目标微服务的微服务标识;
第二生成模块,用于基于所述微服务标识与预设的异常信息模板生成相应的异常预警信息;
第三获取模块,用于获取预设的邮件登录信息,以及获取与目标用户对应的目标邮件地址;
登录模块,用于基于所述邮件登录信息登录至对应的邮件服务器;
发送模块,用于通过所述邮件服务器将所述异常预警信息发送至所述目标邮件地址。
本实施例中,上述模块或单元分别用于执行的操作与前述实施方式的微服务的异常检测方法的步骤一一对应,在此不再赘述。
参照图3,本申请实施例中还提供一种计算机设备,该计算机设备可以是服务器,其内部结构可以如图3所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏、输入装置和数据库。其中,该计算机设备设计的处理器用于提供计算和控制能力。该计算机设备的存储器包括存储介质、内存储器。该存储介质存储有操作系统、计算机程序和数据库。该内存储器为存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储指标参数、指标参数阈值、异常检测模型、概率阈值以及异常概率。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机设备的显示屏是计算机中必不可少的一种图文输出设备,用于将数字信号转换为光信号,使文字与图形在显示屏的屏幕上显示出来。该计算机设备的输入装置是计算机与用户或其他设备之间进行信息交换的主要装置,用于把数据、指令及某些标志信息等输送到计算机中去。该计算机程序被处理器执行时以实现一种微服务的异常检测方法。
上述处理器执行上述微服务的异常检测方法的步骤:
对于微服务架构下的每个微服务,获取各所述微服务在预设时间段内的指标参数;
基于所述指标参数以及预设的指标参数阈值,对所有所述微服务进行筛选处理得到对应的第一微服务;
基于各所述第一微服务的指标参数与预设的异常检测模型生成各所述第一微服务的异常概率;
将各所述第一微服务的异常概率分别与预设的概率阈值进行数值比较处理,从所有所述第一微服务中筛选出异常概率大于所述概率阈值的第二微服务;
将所述第二微服务确定为所有所述微服务中存在异常的目标微服务。
本领域技术人员可以理解,图3中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的装置、计算机设备的限定。
本申请一实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现一种微服务的异常检测方法,具体为:
对于微服务架构下的每个微服务,获取各所述微服务在预设时间段内的指标参数;
基于所述指标参数以及预设的指标参数阈值,对所有所述微服务进行筛选处理得到对应的第一微服务;
基于各所述第一微服务的指标参数与预设的异常检测模型生成各所述第一微服务的异常概率;
将各所述第一微服务的异常概率分别与预设的概率阈值进行数值比较处理,从所有所述第一微服务中筛选出异常概率大于所述概率阈值的第二微服务;
将所述第二微服务确定为所有所述微服务中存在异常的目标微服务。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的和实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM通过多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双速据率SDRAM(SSRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其它变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其它要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
以上所述仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (10)
1.一种微服务的异常检测方法,其特征在于,包括:
对于微服务架构下的每个微服务,获取各所述微服务在预设时间段内的指标参数;
基于所述指标参数以及预设的指标参数阈值,对所有所述微服务进行筛选处理得到对应的第一微服务;
基于各所述第一微服务的指标参数与预设的异常检测模型生成各所述第一微服务的异常概率;
将各所述第一微服务的异常概率分别与预设的概率阈值进行数值比较处理,从所有所述第一微服务中筛选出异常概率大于所述概率阈值的第二微服务;
将所述第二微服务确定为所有所述微服务中存在异常的目标微服务。
2.根据权利要求1所述的微服务的异常检测方法,其特征在于,所述基于各所述第一微服务的指标参数与预设的异常检测模型生成各所述第一微服务的异常概率的步骤,包括:
获取预先训练生成的多个异常检测模型;其中,每一个所述异常检测模型是根据各自不同的训练样本集训练生成的,每一个所述训练样本集包括若干指标数据样本,以及与所述指标数据样本对应的分类标签;
基于预设的验证样本集从所有所述异常检测模型中确定出目标异常检测模型;
将各所述第一微服务的指标参数分别输入至目标异常检测模型内;
通过所述目标异常检测模型对输入的各所述第一微服务的指标参数进行异常分析,得到与各所述第一微服务的指标参数分别对应的异常概率。
3.根据权利要求2所述的微服务的异常检测方法,其特征在于,所述基于预设的验证样本集从所有所述异常检测模型中确定出目标异常检测模型的步骤,包括:
获取所述验证样本集;
基于所述验证样本集,计算各所述异常检测模型的模型处理时间;以及,
基于所述验证样本集,按照预设计算规则生成各所述异常检测模型的综合评测分值;
从所有所述异常检测模型筛选出模型处理时间小于预设时间阈值的第一异常检测模型;
从所述第一异常检测模型中筛选出综合评测分值大于预设分值阈值的第二异常检测模型;
将所述第二异常检测模型作为所述目标异常检测模型。
4.根据权利要求2所述的微服务的异常检测方法,其特征在于,所述目标异常检测模型的数量为多个,所述通过所述目标异常检测模型对输入的各所述第一微服务的指标参数进行异常分析,得到与各所述第一微服务的指标参数分别对应的异常概率的步骤,包括:
遍历每一个所述第一微服务的指标参数,将当前遍历到的指标参数分别输入至各所述目标异常检测模型内;
获取各所述目标异常检测模型各自输出的与所述当前遍历到的指标参数对应的指定异常概率;
获取各所述目标异常检测模型分别对应的模型权重;
基于所述指定异常概率与所述模型权重计算得到与所述当前遍历到的指标参数对应的异常概率;
重复遍历步骤,直至完成对所有所述第一微服务的指标参数的异常分析处理,得到与每一个所述第一微服务的指标参数分别对应的异常概率。
5.根据权利要求2所述的微服务的异常检测方法,其特征在于,所述获取预先训练生成的多个异常检测模型的步骤之前,包括:
获取预设数量的训练样本集,并从所述训练样本集中随机筛选出指定训练样本集;其中,所述指定训练样本集为所有所述训练样本集中的任意一个样本集,所述指定训练样本集包括若干指定指标数据样本,以及与所述指定指标数据样本对应的指定分类标签;
通过所述指定指标数据样本与所述指定分类标签对预设的机器学习模型进行训练,得到相应的初始异常检测模型;
获取预设的测试样本集,并基于所述测试样本集对所述初始异常检测模型进行准确度测试,得到对应的预测准确率;
判断所述预测准确率是否大于预设的准确率阈值;
若大于所述准确率阈值,将所述初始异常检测模型作为与所述指定训练样本集对应的异常检测模型。
6.根据权利要求1所述的微服务的异常检测方法,其特征在于,所述基于所述指标参数以及预设的指标参数阈值,对所有所述微服务进行筛选处理得到对应的第一微服务的步骤,包括:
获取预设的指标参数阈值;其中,所述指标参数阈值为对应所有所述微服务的一个综合阈值;
将每一个所述微服务的指标参数分别与所述指标参数阈值进行数值比较处理,从所有所述微服务中筛选出指标参数满足所述指标参数阈值的指定微服务;
将所述指定微服务作为所述第一微服务。
7.根据权利要求1所述的微服务的异常检测方法,其特征在于,所述将所述第二微服务确定为所有所述微服务中存在异常的目标微服务的步骤之后,包括:
将所述目标微服务设置为隔离状态;
获取所述目标微服务的微服务标识;
基于所述微服务标识与预设的异常信息模板生成相应的异常预警信息;
获取预设的邮件登录信息,以及获取与目标用户对应的目标邮件地址;
基于所述邮件登录信息登录至对应的邮件服务器;
通过所述邮件服务器将所述异常预警信息发送至所述目标邮件地址。
8.一种微服务的异常检测装置,其特征在于,包括:
第一获取模块,用于对于微服务架构下的每个微服务,获取各所述微服务在预设时间段内的指标参数;
第一筛选模块,用于基于所述指标参数以及预设的指标参数阈值,对所有所述微服务进行筛选处理得到对应的第一微服务;
第一生成模块,用于基于各所述第一微服务的指标参数与预设的异常检测模型生成各所述第一微服务的异常概率;
第二筛选模块,用于将各所述第一微服务的异常概率分别与预设的概率阈值进行数值比较处理,从所有所述第一微服务中筛选出异常概率大于所述概率阈值的第二微服务;
确定模块,用于将所述第二微服务确定为所有所述微服务中存在异常的目标微服务。
9.一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210507714.6A CN114978968B (zh) | 2022-05-10 | 2022-05-10 | 微服务的异常检测方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210507714.6A CN114978968B (zh) | 2022-05-10 | 2022-05-10 | 微服务的异常检测方法、装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114978968A true CN114978968A (zh) | 2022-08-30 |
CN114978968B CN114978968B (zh) | 2023-08-29 |
Family
ID=82981544
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210507714.6A Active CN114978968B (zh) | 2022-05-10 | 2022-05-10 | 微服务的异常检测方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114978968B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115941545A (zh) * | 2022-10-14 | 2023-04-07 | 华能信息技术有限公司 | 一种基于微服务的日志管理方法及平台 |
CN116154914A (zh) * | 2023-03-02 | 2023-05-23 | 深圳市南霸科技有限公司 | 电池充电管理方法和装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110888783A (zh) * | 2019-11-21 | 2020-03-17 | 望海康信(北京)科技股份公司 | 微服务系统的监测方法、装置以及电子设备 |
US20210058424A1 (en) * | 2019-08-21 | 2021-02-25 | Nokia Solutions And Networks Oy | Anomaly detection for microservices |
CN112463530A (zh) * | 2020-11-23 | 2021-03-09 | 平安科技(深圳)有限公司 | 微服务系统的异常检测方法、装置、电子设备及存储介质 |
CN113190417A (zh) * | 2021-06-01 | 2021-07-30 | 京东科技控股股份有限公司 | 微服务状态检测方法、模型的训练方法、设备及存储介质 |
CN113900845A (zh) * | 2021-09-28 | 2022-01-07 | 大唐互联科技(武汉)有限公司 | 一种基于神经网络的微服务故障诊断的方法和存储介质 |
US11250368B1 (en) * | 2020-11-30 | 2022-02-15 | Shanghai Icekredit, Inc. | Business prediction method and apparatus |
CN114356734A (zh) * | 2021-12-31 | 2022-04-15 | 北京中体骏彩信息技术有限公司 | 服务异常检测方法和装置、设备、存储介质 |
-
2022
- 2022-05-10 CN CN202210507714.6A patent/CN114978968B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20210058424A1 (en) * | 2019-08-21 | 2021-02-25 | Nokia Solutions And Networks Oy | Anomaly detection for microservices |
CN110888783A (zh) * | 2019-11-21 | 2020-03-17 | 望海康信(北京)科技股份公司 | 微服务系统的监测方法、装置以及电子设备 |
CN112463530A (zh) * | 2020-11-23 | 2021-03-09 | 平安科技(深圳)有限公司 | 微服务系统的异常检测方法、装置、电子设备及存储介质 |
US11250368B1 (en) * | 2020-11-30 | 2022-02-15 | Shanghai Icekredit, Inc. | Business prediction method and apparatus |
CN113190417A (zh) * | 2021-06-01 | 2021-07-30 | 京东科技控股股份有限公司 | 微服务状态检测方法、模型的训练方法、设备及存储介质 |
CN113900845A (zh) * | 2021-09-28 | 2022-01-07 | 大唐互联科技(武汉)有限公司 | 一种基于神经网络的微服务故障诊断的方法和存储介质 |
CN114356734A (zh) * | 2021-12-31 | 2022-04-15 | 北京中体骏彩信息技术有限公司 | 服务异常检测方法和装置、设备、存储介质 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115941545A (zh) * | 2022-10-14 | 2023-04-07 | 华能信息技术有限公司 | 一种基于微服务的日志管理方法及平台 |
CN115941545B (zh) * | 2022-10-14 | 2023-06-23 | 华能信息技术有限公司 | 一种基于微服务的日志管理方法及平台 |
CN116154914A (zh) * | 2023-03-02 | 2023-05-23 | 深圳市南霸科技有限公司 | 电池充电管理方法和装置 |
CN116154914B (zh) * | 2023-03-02 | 2023-11-07 | 深圳市南霸科技有限公司 | 电池充电管理方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN114978968B (zh) | 2023-08-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113516297B (zh) | 基于决策树模型的预测方法、装置和计算机设备 | |
WO2021139252A1 (zh) | 运维故障根因识别方法、装置、计算机设备和存储介质 | |
CN111078544B (zh) | 一种软件缺陷预测方法、装置、设备及存储介质 | |
CN114978968A (zh) | 微服务的异常检测方法、装置、计算机设备和存储介质 | |
CN107786369A (zh) | 基于irt层次分析和lstm的电力通信网络安全态势感知和预测方法 | |
CN112527630A (zh) | 测试用例生成方法、装置、计算机设备和存储介质 | |
CN112908473B (zh) | 基于模型的数据处理方法、装置、计算机设备和存储介质 | |
CN110175697A (zh) | 一种不良事件风险预测系统及方法 | |
CN112329865A (zh) | 基于自编码器的数据异常识别方法、装置和计算机设备 | |
CN113889262A (zh) | 基于模型的数据预测方法、装置、计算机设备和存储介质 | |
CN113327037A (zh) | 基于模型的风险识别方法、装置、计算机设备和存储介质 | |
CN116932523B (zh) | 一种整合和监管第三方环境检测机构的平台 | |
CN112257914B (zh) | 一种基于随机森林的航空安全因果预测方法 | |
CN113986581A (zh) | 数据聚合处理方法、装置、计算机设备和存储介质 | |
CN113282514A (zh) | 问题数据的处理方法、装置、计算机设备和存储介质 | |
CN110011990A (zh) | 内网安全威胁智能分析方法 | |
CN114066438A (zh) | 基于模型的监控数据展示方法、装置、设备和存储介质 | |
CN114817055A (zh) | 基于接口的回归测试方法、装置、计算机设备和存储介质 | |
CN114036117A (zh) | 日志查看方法、装置、计算机设备和存储介质 | |
CN113656588A (zh) | 基于知识图谱的数据对码方法、装置、设备和存储介质 | |
CN117370548A (zh) | 用户行为风险识别方法、装置、电子设备及介质 | |
CN115456073B (zh) | 基于长短期记忆的生成式对抗网络模型建模分析方法 | |
CN112966787B (zh) | 相似患者的识别方法、装置、计算机设备和存储介质 | |
CN114547053A (zh) | 基于系统的数据处理方法、装置、计算机设备和存储介质 | |
CN113627551A (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 |