CN116361104A - 基于大数据的应用故障预测方法、装置、设备及存储介质 - Google Patents
基于大数据的应用故障预测方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN116361104A CN116361104A CN202310130883.7A CN202310130883A CN116361104A CN 116361104 A CN116361104 A CN 116361104A CN 202310130883 A CN202310130883 A CN 202310130883A CN 116361104 A CN116361104 A CN 116361104A
- Authority
- CN
- China
- Prior art keywords
- data
- application
- historical
- fault
- prediction
- 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
- 238000000034 method Methods 0.000 title claims abstract description 75
- 238000012549 training Methods 0.000 claims abstract description 48
- 238000002372 labelling Methods 0.000 claims description 33
- 230000006870 function Effects 0.000 claims description 30
- 230000008569 process Effects 0.000 claims description 28
- 238000004590 computer program Methods 0.000 claims description 15
- 238000012545 processing Methods 0.000 claims description 15
- 230000002159 abnormal effect Effects 0.000 claims description 13
- 230000000903 blocking effect Effects 0.000 claims description 3
- 238000012423 maintenance Methods 0.000 abstract description 16
- 230000007123 defense Effects 0.000 abstract description 5
- 238000010586 diagram Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000012417 linear regression Methods 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000007405 data analysis Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 238000004064 recycling Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000002547 anomalous effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000007621 cluster analysis Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000011478 gradient descent method Methods 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000007477 logistic regression Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000004088 simulation 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/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3024—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a central processing unit [CPU]
-
- 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/3037—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a memory, e.g. virtual memory, cache
-
- 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
- G06F11/3072—Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/069—Management of faults, events, alarms or notifications using logs of notifications; Post-processing of notifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
- H04L41/147—Network analysis or design for predicting network behaviour
-
- 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)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Quality & Reliability (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mathematical Physics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Environmental & Geological Engineering (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请提供了一种基于大数据的应用故障预测方法、装置、设备及存储介质,通过采集待预测应用的多个历史时刻的历史日志数据,并进行标注,将标注后的历史日志数据作为训练集对预设基础预测模型进行训练,得到用于预测待预测应用在未来时间段的故障预测结果的应用故障预测模型,将获取到的待预测应用的当前日志数据输入到该应用故障预测模型中,得到故障预测结果,通过上述方式能够主动进行应用故障的预测,提供了应用故障预测的主动防御方案,能够变被动为主动,防患于未然,提升运维效率。
Description
技术领域
本申请涉及智能运维技术领域,具体涉及基于大数据的应用故障预测方法、装置、设备及存储介质。
背景技术
运维发展可以分为四个阶段,手工运维,脚本和开源工具运维,自动化运维,智能化运维,现在大多数公司都处于第二、第三阶段之间,还是一种被动运维。
现有文献1(CN108123834A)记载了基于大数据平台的日志分析***,其提出了通过对网络数据包进行实时数据解析,并通过网络数据协议特征库进行数据特征匹配,将匹配确认为异常的网络日志数据发送给大数据平台进行存储并进行聚类分析、分类训练并动态更新网络数据协议特征库。但是,现有文献1仅提供了一种对异常日志的收集、分析以动态更新网络数据协议特征库的方案,只提供了从个别异常案例的比对来确定当下的日志是否异常的技术角度,但在应用故障预测领域,未雨绸缪远比判断是否发生了故障更为重要。
目前,相关技术中往往是在应用的故障发生时才能够进行报警,停留在被动运维的角度上,而缺乏对于应用故障进行预测的智能化运维的方案。
发明内容
鉴于以上所述现有技术的缺点,本申请提供基于大数据的应用故障预测方法、装置、设备及存储介质,以解决上述提到的相关技术中缺乏对于应用故障进行预测的智能化运维的方案的技术问题。
本申请提供一种基于大数据的应用故障预测方法,所述方法包括以下步骤:获取待预测应用的当前日志数据;将所述当前日志数据输入应用故障预测模型,得到所述待预测应用的故障预测结果;其中,所述应用故障预测模型的训练方式包括,采集所述待预测应用的多个历史时刻的历史日志数据,并进行标注,得到各所述历史日志数据的标注结果,其中至少一个所述历史日志数据的标注结果为故障,将标注后的历史日志数据作为训练数据集,通过所述训练数据集对预设基础预测模型进行训练,得到用于预测待预测应用在未来时间段的故障预测结果的应用故障预测模型。
于本申请的一实施例中,采集所述待预测应用的多个历史时刻的历史日志数据,并进行标注,得到各所述历史日志数据的标注结果,包括:采集所述待预测应用的多个历史时刻的历史运行数据,按照预设标注标准对所述历史运行数据的异常状态进行标注,得到各所述历史运行数据的标注结果;采集所述待预测应用故障时段中多个历史时刻的多个历史故障数据,所述故障时段包括所述故障时刻、所述故障时刻之前第一预设时间段和所述故障时刻之后第二预设时间段,将故障时刻的历史故障数据标注为故障,将其余的历史时刻的历史故障数据标注为正常,得到各所述历史故障数据的标注结果,所述历史日志数据包括所述历史运行数据和所述历史故障数据。
于本申请的一实施例中,采集所述待预测应用的多个历史时刻的历史运行数据,包括:间隔预设时间读取所述待预测应用的多个进程的进程相关数据、主机的内存运行数据、服务器的磁盘运行数据以及服务器中预设组件使用情况数据,得到多个历史时刻的历史运行数据。
于本申请的一实施例中,按照预设标注标准对所述历史运行数据的异常状态进行标注,得到各所述历史运行数据的标注结果,包括:若满足预设标注标准,将所述历史运行数据的异常状态标注为故障,若不满足预设标注标准,将所述历史运行数据的异常状态标注为正常,得到各所述历史运行数据的标注结果;其中,所述预设标注标准包括以下至少之一,中央处理器使用率大于第一预设阈值、内存占用大于第二预设阈值、垃圾回收单次频率大于第三预设阈值、垃圾回收单次耗时大于第一预设时长、垃圾回收周期频率大于第四预设阈值、磁盘输入输出利用率大于预设利用率,所述历史运行数据包括中央处理器使用率、内存占用、垃圾回收单次频率、垃圾回收单次耗时、垃圾回收周期频率、磁盘输入输出利用率中至少之一。
于本申请的一实施例中,采集所述待预测应用故障时段中多个历史时刻的多个历史故障数据,包括:采集所述待预测应用发生故障时的故障时刻的历史故障数据、采集所述故障时刻之前第一预设时间段的多个历史时刻的历史故障数据、以及采集所述故障时刻之后第二预设时间段的多个历史时刻的历史故障数据,所述故障包括应用奔溃、进程卡死、进程不存在中至少之一,所述历史故障数据包括中央处理器使用率、内存占用、磁盘输入输出使用率、垃圾回收单次数据、垃圾回收周期数据中至少之一。
于本申请的一实施例中,通过所述训练数据集对预设基础预测模型进行训练,包括:通过所述预设基础预测模型对所述训练数据集中的各历史日志数据进行预测,得到初始预测结果,所述初始预测结果包括至少一个预测时刻的初始故障结果,所述预测时刻晚于所述历史日志数据的历史时刻;根据各历史日志数据的标注结果和所述初始预测结果确定目标损失函数;根据所述目标损失函数对所述预设基础预测模型进行训练。
于本申请的一实施例中,所述初始预测结果包括至少两个预测时刻的初始故障结果,所述应用故障预测模型用于预测待预测应用在未来时间段中至少两个未来时刻的故障预测结果。
本申请还提供一种基于大数据的应用故障预测装置,所述装置包括:获取模块,用于获取待预测应用的当前日志数据;结果预测模块,用于将所述当前日志数据输入应用故障预测模型,得到所述待预测应用的故障预测结果;模型训练模块,用于采集所述待预测应用的多个历史时刻的历史日志数据,并进行标注,得到各所述历史日志数据的标注结果,其中至少一个所述历史日志数据的标注结果为故障,将标注后的历史日志数据作为训练数据集,通过所述训练数据集对预设基础预测模型进行训练,得到用于预测待预测应用在未来时间段的故障预测结果的应用故障预测模型。
本申请还提供一种基于大数据的应用故障预测设备,所述设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述设备实现如上述中任一项所述的基于大数据的应用故障预测方法。
本申请还提供一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序被计算机的处理器执行时,使计算机执行如上述中任一项所述的基于大数据的应用故障预测方法。
如上所述,本申请提供基于大数据的应用故障预测方法、装置、设备及存储介质,具有以下有益效果:
通过采集待预测应用的多个历史时刻的历史日志数据,并进行标注,将标注后的历史日志数据作为训练集对预设基础预测模型进行训练,得到用于预测待预测应用在未来时间段的故障预测结果的应用故障预测模型,将获取到的待预测应用的当前日志数据输入到该应用故障预测模型中,得到故障预测结果,通过上述方式能够主动进行应用故障的预测,提供了应用故障预测的主动防御方案,能够变被动为主动,防患于未然,提升运维效率。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术者来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1为本申请中一实施例提供的基于大数据的应用故障预测方法的流程示意图;
图2为本申请中一实施例提供的sigmoid函数的图像示意图;
图3为本申请中一实施例提供的-log(x)函数的图像示意图;
图4为本申请中一实施例提供的-log(1-x)函数的图像示意图;
图5为本申请中另一实施例提供的基于大数据的应用故障预测方法的流程示意图;
图6为本申请中一实施例提供的基于大数据的应用故障预测装置的硬件结构示意图;
图7为适用于实现本申请中一个或多个实施例的基于大数据的应用故障预测设备的硬件结构示意图。
具体实施方式
以下将参照附图和优选实施例来说明本申请的实施方式,本领域技术人员可由本说明书中所揭露的内容轻易地了解本申请的其他优点与功效。本申请还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本申请的精神下进行各种修饰或改变。应当理解,优选实施例仅为了说明本申请,而不是为了限制本申请的保护范围。
需要说明的是,以下实施例中所提供的图示仅以示意方式说明本申请的基本构想,遂图式中仅显示与本申请中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
本申请中的“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
本申请中所涉及的多个,是指两个或两个以上。
在本申请的描述中,“第一”、“第二”等词汇,仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。
另外,在本申请实施例中,“示例的”一词用于表示作例子、例证或说明。本申请中被描述为“示例”的任何实施例或实现方案不应被解释为比其它实施例或实现方案更优选或更具优势。确切而言,使用示例的一词旨在以具体方式呈现概念。
在下文描述中,探讨了大量细节,以提供对本申请实施例的更透彻的解释,然而,对本领域技术人员来说,可以在没有这些具体细节的情况下实施本申请的实施例是显而易见的,在其他实施例中,以方框图的形式而不是以细节的形式来示出公知的结构和设备,以避免使本申请的实施例难以理解。
图1示出了本申请一实施例提供的基于大数据的应用故障预测方法流程示意图。具体地,在一示例性实施例中,如图1所示,本实施例提供一种基于大数据的应用故障预测方法,该方法包括以下步骤:
步骤S110,获取待预测应用的当前日志数据。
其中,待预测应用可以为本领域技术人员所预先设定的应用,该当前日志数据可以为预测应用在一个或多个硬件设备中运行所生成的数据。
需要说明的是,当前日志数据为需要预测待预测应用的时刻的数据,并非特指实时采集的数据。
步骤S120,将当前日志数据输入应用故障预测模型,得到待预测应用的故障预测结果。
其中,应用故障预测模型的训练方式包括:
采集待预测应用的多个历史时刻的历史日志数据,并进行标注,得到各历史日志数据的标注结果,其中至少一个历史日志数据的标注结果为故障;
将标注后的历史日志数据作为训练数据集,通过训练数据集对预设基础预测模型进行训练,得到用于预测待预测应用在未来时间段的故障预测结果的应用故障预测模型。
由此可知,本实施例提供了一种基于大数据的应用故障预测的方案,基于服务器和应用的日志分析,预测应用在未来某个时间点是否会出现故障。通过大数据平台采集的历史日志数据,如服务器日志(CPU、内存、磁盘使用情况)、应用日志信息(GC频率及耗时)、历史故障信息,将这些历史日志数据输入模型进行训练,训练之后再把当前日志信息(某一天或某一个时间段)的日志信息(也即当前日志数据)输入应用故障预测模型,预测该待预测应用是否可能出现故障。能够主动进行应用故障的预测,提供了应用故障预测的主动防御方案,能够变被动为主动,防患于未然,提升运维效率。结合大数据分析技术与机器学习技术,快速定位故障点,预测***状态以及可能发生的故障,转变了传统的运维思路。
在本申请一实施例中,采集待预测应用的多个历史时刻的历史日志数据,并进行标注,得到各历史日志数据的标注结果,包括:
采集待预测应用的多个历史时刻的历史运行数据,按照预设标注标准对历史运行数据的异常状态进行标注,得到各历史运行数据的标注结果;
采集待预测应用故障时段中多个历史时刻的多个历史故障数据,故障时段包括故障时刻、故障时刻之前第一预设时间段和故障时刻之后第二预设时间段,将故障时刻的历史故障数据标注为故障,将其余的历史时刻的历史故障数据标注为正常,得到各历史故障数据的标注结果,历史日志数据包括历史运行数据和历史故障数据。
例如,可以通过采集应用***各个节点的CPU(中央处理器)使用率,内存占用情况,JVM GC(java在JVM虚拟机上增加了垃圾回收(GC))频率等作为历史运行数据。在本实施例中,采集待预测应用的多个历史时刻的历史运行数据,包括:
间隔预设时间读取待预测应用的多个进程的进程相关数据、主机的内存运行数据、服务器的磁盘运行数据以及服务器中预设组件使用情况数据,得到多个历史时刻的历史运行数据。
其中,一种示例的多个进程的进程相关数据的采集方法为,通过代码每30秒(也可以是本领域技术人员所设定的其他时长,此处仅为一个示例,下同,不再赘述)读取一次Linux***proc接口提供的进程相关信息,提取的信息的相关字段(进程相关数据)可参见表1,该主要反映了每个进程的用户,占用内存和显存,进程开始结束时间等。数据获取之后按进程号进行分类存储到预设存储空间,如Elasticsearch等。一种进程相关数据(可以选择其中的一个或多个组作为进程相关数据)的具体示例如下:
表1
一种Elasticsearch***和查询数据方法可以为指定Id和自动生成Id两种,其中指定Id使用PUT操作,自动生成Id使用POST操作,POST的时候自动生成mapping,如果POST的参数不是严格的已经定义好的,会根据POST的情况自动进行创建对应的mapping;查询数据方式可以为:查询指定索引信息、查询指定文档信息、查询对应索引下所有数据、查询字符串搜索、结构化查询,上述查询方式是一个多个条件联合的查询,可以是模糊匹配,类似sql中的like,或者精确匹配。例如显示年龄22岁,名字带stono22的所有的人,按照符合条件的程度高低从高到低排序,输出最接近查询结果的前10条。
其中,一种示例的主机的内存运行数据的采集方法为,通过代码每30秒读取一次主机/proc/meminfo文件内容,得到主机的内存运行数据,主要反映了主机的内存运行的相关信息,数据获取之后按获取时间存储到预设存储空间如Elasticsearch,该主机的内存运行数据的具体参数(可以选择其中的一个或多个组作为内存运行数据)可参见如下表2:
表2
其中,一种示例的服务器的磁盘运行数据以及服务器中预设组件使用情况数据的采集方法为,通过代码每30秒读取一次主机/proc/diskstats文件内容,提取的信息的字段根据服务器的磁盘数量有所不同,主要反映了服务器的磁盘运行的相关信息,数据获取之后按获取时间存储到Elasticsearch(实时数据存储引擎)。
其中,一种示例的服务器中预设组件使用情况数据的采集方法为,通过代码每30秒获取一次应用程序JVM GC情况,主要反映了服务器中jvm(java相关组件)的使用情况。数据获取之后按获取时间,进程号进行分类存储到Elasticsearch,提取的字段可参见表3,可以选择表3中的一个或多个字段作为预设组件使用情况数据:
表3
在一实施例中,按照预设标注标准对历史运行数据的异常状态进行标注,得到各历史运行数据的标注结果,包括:
若满足预设标注标准,将历史运行数据的异常状态标注为故障,若不满足预设标注标准,将历史运行数据的异常状态标注为正常,得到各历史运行数据的标注结果;
其中,预设标注标准包括以下至少之一,中央处理器使用率大于第一预设阈值、内存占用大于第二预设阈值、垃圾回收单次频率大于第三预设阈值、垃圾回收单次耗时大于第一预设时长、垃圾回收周期频率大于第四预设阈值、磁盘输入输出利用率大于预设利用率,历史运行数据包括中央处理器使用率、内存占用、垃圾回收单次频率、垃圾回收单次耗时、垃圾回收周期频率、磁盘输入输出利用率中至少之一。
例如,在Elasticsearch中进行查询,将CPU占用(中央处理器使用率)超过80%的数据进行标注,内存使用率(内存占用)超过80%的数据进行标注,磁盘输入输出利用率超过80%的数据进行标注,Young GC频率(垃圾回收单次频率)高于每分钟一次或每次GC耗时(垃圾回收单次耗时)超过200ms或者Full GC频率(垃圾回收周期频率)超过每天一次的数据进行标注。
在一实施例中,采集待预测应用故障时段中多个历史时刻的多个历史故障数据,包括:
采集待预测应用发生故障时的故障时刻的历史故障数据、采集故障时刻之前第一预设时间段的多个历史时刻的历史故障数据、以及采集故障时刻之后第二预设时间段的多个历史时刻的历史故障数据,故障包括应用奔溃、进程卡死、进程不存在中至少之一,历史故障数据包括中央处理器使用率、内存占用、磁盘输入输出使用率、垃圾回收单次数据、垃圾回收周期数据中至少之一。
其中,该故障可以是应用自然运行发生的,也可以是人工模拟导致的,在此不做限定。例如,可以标注应用异常(应用奔溃、进程卡死、JVM进程不存在等)前后五分钟CPU、内存、磁盘IO使用率、Young GC、Full GC日志数据。
在一实施例中,通过训练数据集对预设基础预测模型进行训练,包括:
通过预设基础预测模型对训练数据集中的各历史日志数据进行预测,得到初始预测结果,初始预测结果包括至少一个预测时刻的初始故障结果,预测时刻晚于历史日志数据的历史时刻;
根据各历史日志数据的标注结果和初始预测结果确定目标损失函数;
根据目标损失函数对预设基础预测模型进行训练。
在一实施例中,初始预测结果包括至少两个预测时刻的初始故障结果,应用故障预测模型用于预测待预测应用在未来时间段中至少两个未来时刻的故障预测结果。例如,逻辑回归一种线性回归模型,它假设数据服从伯努利分布,通过极大似然函数的方法,运用梯度下降法来求解参数,进而达到二分类的目的。
伯努利分布(Bernoulli distribution),也称为两点分布或者0-1分布,是最简单的离散型概率分布。记成功概率为p(0≤p≤1),则失败概率为q=1-p,则:
其中,P(x)为概率,正类为1,负类为0,显然是服从0-1分布。
一种示例的模型的训练和预测过程如下:
训练:通过训练数据来训练模型,也就是学习过程,即确定模型的参数。
预测:训练过后,模型参数确定,有预测数据输入,就会得到一个结果。
常见的线性回归y=wx+b,通过训练集来训练出应用故障预测模型,也就是得到模型参数w,b,这样,直线或者超平面(x是多维的)就确定了。接着,对于测试集,来了一个数据x,w,b已经学习出来了,带入y=wx+b,就会得到一个y值,也就是预测值。
通过前面的线性回归,已经得到y=wx+b。它是实数,y的取值范围可以是(负无穷,正无穷)。现在,不想让它的值这么大,所以就想把这个值给压缩一下,压缩到[0,1]。研究人员发现signomid函数可以实现这个功能。所以,引入用signomid函数研究这个y。
这样,y就是(0,1)的取值,把公式(2)变换一下:
损失函数,是衡量真实值和预测值之间差距的函数。所以,希望这个函数越小越好。在这里,最小损失是0。以二分类(0,1)为例:当真值为1,模型的预测输出为1时,损失最好为0,预测为0是,损失尽量大。同样的,当真值为0,模型的预测输出为0时,损失最好为0,预测为1时,损失最大。所以,尽量使损失函数尽量小,越小说明预测的越准确。一种示例的损失函数为:
基于函数的图像-log(x),可参见图3以及-log(1-x)的图像可参见图4可以得到压缩之后,预测y在0-1之间。利用这个损失函数,尽量使这个损失小,就能达到很好的效果。
将这两个损失综合起来:
-[ylog(x)+(1-y)log(1-x)] 公式(5),
其中,y就是标签,分别取0,1。
对于m个样本,总的损失:
这个式子中,m是样本数,y是标签,取值0或1,i表示第i个样本,f(x)表示预测的输出。J(θ)是模型的最终损失值,最小值为0,表示故障发生的概率。
在测试模型的阶段,将需要预测数据代入上述损失函数公式(6)进行求解,得到预测值。
参见图5,图5为本发明一具体的基于大数据的应用故障预测方法的流程示意图,如图5所示,该具体的方法包括:
持续收集应用***各个节点的***日志、应用日志,CPU使用率,内存占用情况,JVM GC频率三个维度数据。首先,采集应用***各个节点的CPU使用率,内存占用情况,JVMGC频率。其次,标注数据,将CPU使用率超过80%、内存占用超过80%、磁盘IO利用率超过80%、Young GC频率高于每分钟一次或耗时超过200ms,Full GC频率高于每天一次或耗时超过300ms的数据进行标注。然后,采集应用发生故障时CPU、内存、磁盘IO利用率数据并进行标注、采集发生故障前后5分钟JVM GC频率并重点标注。然后,训练模型,将采集的数据输入模型进行训练。最后,测试模型,输入应用节点某个时间点指标数据,预测***在未来某个时间段内是否会发生故障。
综上所述,本申请提供一种基于大数据的应用故障预测方法,通过采集待预测应用的多个历史时刻的历史日志数据,并进行标注,将标注后的历史日志数据作为训练集对预设基础预测模型进行训练,得到用于预测待预测应用在未来时间段的故障预测结果的应用故障预测模型,将获取到的待预测应用的当前日志数据输入到该应用故障预测模型中,得到故障预测结果,该故障预测结果包括一个或多个未来时刻的待预测应用的是否会发生故障的预测结果,通过上述方式能够主动进行应用故障的预测,提供了应用故障预测的主动防御方案,能够变被动为主动,防患于未然,提升运维效率。
如图6所示,本申请还提供一种基于大数据的应用故障预测装置,所述装置包括有:
获取模块601,用于获取待预测应用的当前日志数据;
结果预测模块602,用于将当前日志数据输入应用故障预测模型,得到待预测应用的故障预测结果;
模型训练模块603,用于采集待预测应用的多个历史时刻的历史日志数据,并进行标注,得到各历史日志数据的标注结果,其中至少一个历史日志数据的标注结果为故障,将标注后的历史日志数据作为训练数据集,通过训练数据集对预设基础预测模型进行训练,得到用于预测待预测应用在未来时间段的故障预测结果的应用故障预测模型。
由此可知,本实施例提供了一种基于大数据的应用故障预测的方案,能够主动进行应用故障的预测,提供了应用故障预测的主动防御方案,能够变被动为主动,防患于未然,提升运维效率。
综上所述,本申请提供一种基于大数据的应用故障预测装置,通过采集待预测应用的多个历史时刻的历史日志数据,并进行标注,将标注后的历史日志数据作为训练集对预设基础预测模型进行训练,得到用于预测待预测应用在未来时间段的故障预测结果的应用故障预测模型,将获取到的待预测应用的当前日志数据输入到该应用故障预测模型中,得到故障预测结果,通过上述方式能够主动进行应用故障的预测,提供了应用故障预测的主动防御方案,能够变被动为主动,防患于未然,提升运维效率。
需要说明的是,上述实施例所提供基于大数据的应用故障预测装置与上述实施例所提供的基于大数据的应用故障预测方法属于同一构思,其中各个模块和单元执行操作的具体方式已经在方法实施例中进行了详细描述,此处不再赘述。上述实施例所提供的基于大数据的应用故障预测装置在实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能,本处也不对此进行限制。
本申请的实施例还提供了一种基于大数据的应用故障预测设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述基于大数据的应用故障预测设备实现上述各个实施例中提供的基于大数据的应用故障预测方法。
图7示出了适于用来实现本申请实施例的基于大数据的应用故障预测设备的计算机装置的结构示意图。需要说明的是,图7示出的基于大数据的应用故障预测设备的计算机***1000仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图7所示,计算机***1000包括中央处理单元(Central Processing Unit,CPU)1001,其可以根据存储在只读存储器(Read-OnlyMemory,ROM)1002中的程序或者从储存部分1008加载到随机访问存储器(Random Access Memory,RAM)1003中的程序而执行各种适当的动作和处理,例如执行上述实施例中所述的方法。在RAM1003中,还存储有***操作所需的各种程序和数据。CPU 1001、ROM 1002以及RAM1003通过总线1004彼此相连。输入/输出(Input/Output,I/O)接口1005也连接至总线1004。
以下部件连接至I/O接口1005:包括键盘、鼠标等的输入部分1006;包括诸如阴极射线管(Cathode Ray Tube,CRT)、液晶显示器(Liquid Crystal Display,LCD)等以及扬声器等的输出部分1007;包括硬盘等的储存部分1008;以及包括诸如LAN(LocalAreaNetwork,局域网)卡、调制解调器等的网络接口卡的通信部分1009。通信部分1009经由诸如因特网的网络执行通信处理。驱动器1010也根据需要连接至I/O接口1005。可拆卸介质1011,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1010上,以便于从其上读出的计算机程序根据需要被安装入储存部分1008。
特别地,根据本申请的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本申请的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的计算机程序。在这样的实施例中,该计算机程序可以通过通信部分1009从网络上被下载和安装,和/或从可拆卸介质1011被安装。在该计算机程序被中央处理单元(CPU)1001执行时,执行本申请的装置中限定的各种功能。
需要说明的是,本申请实施例所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、闪存、光纤、便携式紧凑磁盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的计算机程序。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的计算机程序可以用任何适当的介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本申请各种实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。其中,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
本申请的另一方面还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被计算机的处理器执行时,使计算机执行如前所述的基于大数据的应用故障预测方法。该计算机可读存储介质可以是上述实施例中描述的基于大数据的应用故障预测设备中所包含的,也可以是单独存在,而未装配入该基于大数据的应用故障预测设备中。
本申请的另一方面还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各个实施例中提供的基于大数据的应用故障预测方法。
上述实施例仅示例性说明本申请的原理及其功效,而非用于限制本申请。任何熟悉此技术的人士皆可在不违背本申请的精神及范畴下,对上述实施例进行修饰或改变。因此,但凡所属技术领域中具有通常知识者在未脱离本申请所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本申请的权利要求所涵盖。
Claims (10)
1.一种基于大数据的应用故障预测方法,其特征在于,所述方法包括:
获取待预测应用的当前日志数据;
将所述当前日志数据输入应用故障预测模型,得到所述待预测应用的故障预测结果;
其中,所述应用故障预测模型的训练方式包括,采集所述待预测应用的多个历史时刻的历史日志数据,并进行标注,得到各所述历史日志数据的标注结果,其中至少一个所述历史日志数据的标注结果为故障,将标注后的历史日志数据作为训练数据集,通过所述训练数据集对预设基础预测模型进行训练,得到用于预测待预测应用在未来时间段的故障预测结果的应用故障预测模型。
2.如权利要求1所述的基于大数据的应用故障预测方法,其特征在于,采集所述待预测应用的多个历史时刻的历史日志数据,并进行标注,得到各所述历史日志数据的标注结果,包括:
采集所述待预测应用的多个历史时刻的历史运行数据,按照预设标注标准对所述历史运行数据的异常状态进行标注,得到各所述历史运行数据的标注结果;
采集所述待预测应用故障时段中多个历史时刻的多个历史故障数据,所述故障时段包括所述故障时刻、所述故障时刻之前第一预设时间段和所述故障时刻之后第二预设时间段,将故障时刻的历史故障数据标注为故障,将其余的历史时刻的历史故障数据标注为正常,得到各所述历史故障数据的标注结果,所述历史日志数据包括所述历史运行数据和所述历史故障数据。
3.如权利要求2所述的基于大数据的应用故障预测方法,其特征在于,采集所述待预测应用的多个历史时刻的历史运行数据,包括:
间隔预设时间读取所述待预测应用的多个进程的进程相关数据、主机的内存运行数据、服务器的磁盘运行数据以及服务器中预设组件使用情况数据,得到多个历史时刻的历史运行数据。
4.如权利要求2所述的基于大数据的应用故障预测方法,其特征在于,按照预设标注标准对所述历史运行数据的异常状态进行标注,得到各所述历史运行数据的标注结果,包括:
若满足预设标注标准,将所述历史运行数据的异常状态标注为故障,若不满足预设标注标准,将所述历史运行数据的异常状态标注为正常,得到各所述历史运行数据的标注结果;
其中,所述预设标注标准包括以下至少之一,中央处理器使用率大于第一预设阈值、内存占用大于第二预设阈值、垃圾回收单次频率大于第三预设阈值、垃圾回收单次耗时大于第一预设时长、垃圾回收周期频率大于第四预设阈值、磁盘输入输出利用率大于预设利用率,所述历史运行数据包括中央处理器使用率、内存占用、垃圾回收单次频率、垃圾回收单次耗时、垃圾回收周期频率、磁盘输入输出利用率中至少之一。
5.如权利要求2所述的基于大数据的应用故障预测方法,其特征在于,采集所述待预测应用故障时段中多个历史时刻的多个历史故障数据,包括:
采集所述待预测应用发生故障时的故障时刻的历史故障数据、采集所述故障时刻之前第一预设时间段的多个历史时刻的历史故障数据、以及采集所述故障时刻之后第二预设时间段的多个历史时刻的历史故障数据,所述故障包括应用奔溃、进程卡死、进程不存在中至少之一,所述历史故障数据包括中央处理器使用率、内存占用、磁盘输入输出使用率、垃圾回收单次数据、垃圾回收周期数据中至少之一。
6.如权利要求1-5任一项所述的基于大数据的应用故障预测方法,其特征在于,通过所述训练数据集对预设基础预测模型进行训练,包括:
通过所述预设基础预测模型对所述训练数据集中的各历史日志数据进行预测,得到初始预测结果,所述初始预测结果包括至少一个预测时刻的初始故障结果,所述预测时刻晚于所述历史日志数据的历史时刻;
根据各历史日志数据的标注结果和所述初始预测结果确定目标损失函数;
根据所述目标损失函数对所述预设基础预测模型进行训练。
7.如权利要求6所述的基于大数据的应用故障预测方法,其特征在于,所述初始预测结果包括至少两个预测时刻的初始故障结果,所述应用故障预测模型用于预测待预测应用在未来时间段中至少两个未来时刻的故障预测结果。
8.一种基于大数据的应用故障预测装置,其特征在于,所述装置包括:
获取模块,用于获取待预测应用的当前日志数据;
结果预测模块,用于将所述当前日志数据输入应用故障预测模型,得到所述待预测应用的故障预测结果;
模型训练模块,用于采集所述待预测应用的多个历史时刻的历史日志数据,并进行标注,得到各所述历史日志数据的标注结果,其中至少一个所述历史日志数据的标注结果为故障,将标注后的历史日志数据作为训练数据集,通过所述训练数据集对预设基础预测模型进行训练,得到用于预测待预测应用在未来时间段的故障预测结果的应用故障预测模型。
9.一种基于大数据的应用故障预测设备,其特征在于,所述设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述设备实现如权利要求1至7中任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,当所述计算机程序被计算机的处理器执行时,使计算机执行如权利要求1至7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310130883.7A CN116361104A (zh) | 2023-02-17 | 2023-02-17 | 基于大数据的应用故障预测方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310130883.7A CN116361104A (zh) | 2023-02-17 | 2023-02-17 | 基于大数据的应用故障预测方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116361104A true CN116361104A (zh) | 2023-06-30 |
Family
ID=86912378
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310130883.7A Pending CN116361104A (zh) | 2023-02-17 | 2023-02-17 | 基于大数据的应用故障预测方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116361104A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116755910A (zh) * | 2023-08-16 | 2023-09-15 | 中移(苏州)软件技术有限公司 | 基于冷启动的宿主机高可用预测方法、装置和电子设备 |
CN117250942A (zh) * | 2023-11-15 | 2023-12-19 | 成都态坦测试科技有限公司 | 故障预测方法、模型的确定方法、装置、设备及存储介质 |
-
2023
- 2023-02-17 CN CN202310130883.7A patent/CN116361104A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116755910A (zh) * | 2023-08-16 | 2023-09-15 | 中移(苏州)软件技术有限公司 | 基于冷启动的宿主机高可用预测方法、装置和电子设备 |
CN116755910B (zh) * | 2023-08-16 | 2023-11-03 | 中移(苏州)软件技术有限公司 | 基于冷启动的宿主机高可用预测方法、装置和电子设备 |
CN117250942A (zh) * | 2023-11-15 | 2023-12-19 | 成都态坦测试科技有限公司 | 故障预测方法、模型的确定方法、装置、设备及存储介质 |
CN117250942B (zh) * | 2023-11-15 | 2024-02-27 | 成都态坦测试科技有限公司 | 故障预测方法、模型的确定方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN116361104A (zh) | 基于大数据的应用故障预测方法、装置、设备及存储介质 | |
CN1900932A (zh) | 生成用于自动化***管理的领域知识的***和方法 | |
CN111427974A (zh) | 数据质量评估管理方法和装置 | |
CN111931809A (zh) | 数据的处理方法、装置、存储介质及电子设备 | |
EP3968245A1 (en) | Automatically generating a pipeline of a new machine learning project from pipelines of existing machine learning projects stored in a corpus | |
CN114201328A (zh) | 基于人工智能的故障处理方法、装置、电子设备及介质 | |
CN113360803A (zh) | 基于用户行为的数据缓存方法、装置、设备及存储介质 | |
CN114491034B (zh) | 一种文本分类方法及智能设备 | |
CN114416939A (zh) | 智能问答方法、装置、设备及存储介质 | |
CN110069558A (zh) | 基于深度学习的数据分析方法及终端设备 | |
CN110807082B (zh) | 质量抽检项目确定方法、***、电子设备及可读存储介质 | |
CN114841165B (zh) | 用户数据分析及展示方法、装置、电子设备及存储介质 | |
CN116841846A (zh) | 一种实时日志异常检测方法、装置、设备及其存储介质 | |
CN116863116A (zh) | 基于人工智能的图像识别方法、装置、设备及介质 | |
CN116012019A (zh) | 一种基于大数据分析的金融风控管理*** | |
CN113706207B (zh) | 基于语义解析的订单成交率分析方法、装置、设备及介质 | |
CN114925674A (zh) | 文件合规性检查方法、装置、电子设备及存储介质 | |
Park et al. | A new forecasting system using the latent dirichlet allocation (LDA) topic modeling technique | |
CN114138784B (zh) | 基于存储库的信息溯源方法、装置、电子设备及介质 | |
CN116701639B (zh) | 基于文本分析的双碳知识图谱数据分析方法及*** | |
CN114239595B (zh) | 回访名单智能生成方法、装置、设备及存储介质 | |
CN113392291B (zh) | 一种基于数据中心的服务推荐方法及*** | |
CN117573803B (zh) | 基于知识图谱的新客识别方法和装置 | |
CN118227871A (zh) | 基于用户类型的人工智能治理网络内容方法和机器人 | |
CN117421312A (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 |