CN110297746A - 一种数据处理方法及系统 - Google Patents
一种数据处理方法及系统 Download PDFInfo
- Publication number
- CN110297746A CN110297746A CN201910604681.5A CN201910604681A CN110297746A CN 110297746 A CN110297746 A CN 110297746A CN 201910604681 A CN201910604681 A CN 201910604681A CN 110297746 A CN110297746 A CN 110297746A
- Authority
- CN
- China
- Prior art keywords
- service
- calling
- call
- data
- determined
- 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
- 238000003672 processing method Methods 0.000 title claims abstract description 11
- 238000000034 method Methods 0.000 claims abstract description 21
- 238000004458 analytical method Methods 0.000 description 30
- 238000007405 data analysis Methods 0.000 description 13
- 230000008569 process Effects 0.000 description 9
- 230000000977 initiatory effect Effects 0.000 description 4
- 238000007619 statistical method Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- PEDCQBHIVMGVHV-UHFFFAOYSA-N Glycerine Chemical compound OCC(O)CO PEDCQBHIVMGVHV-UHFFFAOYSA-N 0.000 description 2
- 230000009471 action Effects 0.000 description 2
- 229940004975 interceptor Drugs 0.000 description 2
- 241000208340 Araliaceae Species 0.000 description 1
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 description 1
- 235000003140 Panax quinquefolius Nutrition 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000003745 diagnosis Methods 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 235000008434 ginseng Nutrition 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
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/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/3466—Performance evaluation by tracing or monitoring
- G06F11/3476—Data logging
Abstract
本申请提供一种数据处理方法及系统,该方法利用开源采集软件FLUME采集服务器中各个服务实例的业务日志信息,对采集到的每个业务日志信息分别进行标准化处理,得到对应的标准日志数据,并将标准日志数据放入KAFKA消息队列中,然后利用SPARK从KAFKA消息队列中读取标准日志数据,并对读取到的标准日志数据进行异常调用统计得到异常调用结果。由于对各个服务实例中的业务日志信息统一汇总后的数据进行异常调用统计,因此可以实现确定业务调用中存在的服务异常调用情况的目的。
Description
技术领域
本申请属于数据处理技术领域,尤其涉及一种数据处理方法及系统。
背景技术
在分布式系统中,业务需要调用不同服务实例中的服务,导致该业务没有统一的业务日志信息,从而无法根据该业务的业务日志信息确定异常调用。
发明内容
有鉴于此,本申请的目的在于提供一种数据处理方法及系统,用于解决现有技术中无法确定异常调用的问题。
技术方案如下:
本申请提供一种数据处理方法,包括:
在每个服务器中分别启动开源采集软件FLUME,并利用开源采集软件FLUME采集该服务器中各个服务实例的业务日志信息;
对采集到的每个业务日志信息分别进行标准化处理,得到对应的标准日志数据;并将所述标准日志数据放入KAFKA消息队列;
利用SPARK从KAFKA消息队列中读取标准日志数据;
对读取到的标准日志数据进行异常调用统计得到异常调用结果。
优选地,所述标准日志数据包括:用户标识、企业标识、实例标识、服务标识、发起端IP、开始时间、结束时间以及调用结果;
则所述对读取到的标准日志数据进行异常调用统计得到异常调用结果包括:
根据所述调用结果,确定调用服务失败的标准日志数据;
从全部调用服务失败的标准日志数据中,确定在预设时间内的每项服务的调用总次数和每项服务的调用总时长;
针对每项服务,确定该服务的调用总次数是否超过该服务的平均调用次数,且该服务的调用总时长是否超过该服务的平均调用时长;
若确定该服务的调用总次数超过该服务的平均调用次数且该服务的调用总时长超过该服务的平均调用时长,则确定该服务出现异常调用。
优选地,还包括:
从全部标准日志数据中,确定在预设时间内每项服务的调用频率;
确定所述调用频率是否超过平均调用频率;
若确定所述调用频率超过平均调用频率,则确定该服务出现异常调用。
优选地,还包括:
利用开源采集软件FLUME采集该服务器的性能日志信息;
根据所述服务器的性能日志信息,确定各个服务实例中服务器资源利用率超过预设阈值的服务实例;
对服务器资源利用率超过预设阈值的服务实例中,按照服务实例的调用次数按照由多到少的顺序进行排列,并按照顺序选择预设位数的服务实例;
确定选择的服务实例为异常调用的服务。
优选地,还包括:
根据所述用户标识、所述服务标识和所述开始时间,确定同一用户标识在预设时间段内调用各个服务的顺序;
建立与该用户标识对应用户的调用服务的关系日志信息。
本申请还提供了一种数据处理系统,包括:
采集单元,用于在每个服务器中分别启动开源采集软件FLUME,并利用开源采集软件FLUME采集该服务器中各个服务实例的业务日志信息;
处理单元,用于对采集到的每个业务日志信息分别进行标准化处理,得到对应的标准日志数据;并将所述标准日志数据放入KAFKA消息队列;
读取单元,用于利用SPARK从KAFKA消息队列中读取标准日志数据;
统计单元,用于对读取到的标准日志数据进行异常调用统计得到异常调用结果。
优选地,所述标准日志数据包括:用户标识、企业标识、实例标识、服务标识、发起端IP、开始时间、结束时间以及调用结果;
则所述统计单元包括:
确定子单元,用于根据所述调用结果,确定调用服务失败的标准日志数据;并从全部调用服务失败的标准日志数据中,确定在预设时间内的每项服务的调用总次数和每项服务的调用总时长;针对每项服务,确定该服务的调用总次数是否超过该服务的平均调用次数,且该服务的调用总时长是否超过该服务的平均调用时长;若确定该服务的调用总次数超过该服务的平均调用次数且该服务的调用总时长超过该服务的平均调用时长,则确定该服务出现异常调用。
优选地,所述确定子单元,还用于从全部标准日志数据中,确定在预设时间内每项服务的调用频率;确定所述调用频率是否超过平均调用频率;若确定所述调用频率超过平均调用频率,则确定该服务出现异常调用。
优选地,所述统计单元还包括:排列选择子单元;
其中,所述采集单元,还用于利用开源采集软件FLUME采集该服务器的性能日志信息;
所述确定子单元,还用于根据所述服务器的性能日志信息,确定各个服务实例中服务器资源利用率超过预设阈值的服务实例;
所述排列选择子单元,用于对服务器资源利用率超过预设阈值的服务实例中,按照服务实例的调用次数按照由多到少的顺序进行排列,并按照顺序选择预设位数的服务实例;
所述确定子单元,还用于确定选择的服务实例为异常调用的服务。
优选地,所述统计单元,还包括:
建立子单元;
其中,所述确定子单元,还用于根据所述用户标识、所述服务标识和所述开始时间,确定同一用户标识在预设时间段内调用各个服务的顺序;
所述建立子单元,用于建立与该用户标识对应用户的调用服务的关系日志信息。
与现有技术相比,本申请提供的上述技术方案具有如下优点:
从上述技术方案可知,本申请中利用开源采集软件FLUME采集服务器中各个服务实例的业务日志信息,对采集到的每个业务日志信息分别进行标准化处理,得到对应的标准日志数据,并将标准日志数据放入KAFKA消息队列中,然后利用SPARK从KAFKA消息队列中读取标准日志数据,并对读取到的标准日志数据进行异常调用统计得到异常调用结果。由于对各个服务实例中的业务日志信息统一汇总后的数据进行异常调用统计,因此可以实现确定业务调用中存在的服务异常调用情况的目的。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请公开的一种数据处理方法的流程图;
图2是本申请公开的大数据系统的架构示意图;
图3是本申请公开的离线分析时进行异常调用统计的流程图;
图4是本申请公开的在线分析时进行异常调用统计的流程图;
图5是本申请公开的一种数据处理系统的结构示意图。
具体实施方式
为了便于对本申请方案的理解,对技术名词进行相应解释:
FLUME:开源数据采集工具软件,支持文件系统、消息队列、网络连接等各种方式收集数据,根据预定义规则处理采集到的数据,支持各种数据保存方式,例如文件、消息队列、网络连接。
KAFKA:开源消息队列软件,支持高性能并发收发消息。
HADOOP HDFS:开源大数据文件系统。
HADOOPYARN:开源大数据调度系统。
SPARK:开源大数据分析平台,支持实时、批量大数据分析,支持机器学习、SQL分析、图分析。
HBASE:一个构建在HADOOP HDFS上的开源分布式列存储数据库。
HIVE:在HADOOP HDFS上的开源数据仓库,支持SQL分析和查询。
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请提供了一种数据处理方法,应用于大数据系统,用于解决由于各服务分散到不同的服务实例中,业务需要调用不同服务实例中的服务,导致业务没有统一的业务日志信息,对于服务调用和服务异常调用没有统一的视图的问题。本申请中通过使用大数据技术将分散到各个服务实例中的业务日志信息以及服务器的性能日志信息,统一汇总到一个大数据分析平台,在大数据分析平台对汇总后的数据进行统一分析,实现服务异常调用的确定以及业务的全流程展示。
参见图1所示,本申请实施例提供的一种数据处理方法可以包括以下步骤:
S101、在每个服务器中分别启动开源采集软件FLUME,并利用开源采集软件FLUME采集该服务器中各个服务实例的业务日志信息。
业务日志信息以日志文件的方式存储,每条业务日志信息包括:
USER=用户ID,CUST=企业ID,INST=实例ID,SVC=服务ID,ORG=发起端IP,START=开始时间,END=结束时间,RTN=调用结果。
USER、CUST、INST、SVC、ORG、START、END、RTN为字段信息,每个字段信息分别对应有数据,依次对应每个字段信息的数据为用户ID、企业ID、实例ID、服务ID、发起端IP、开始时间、结束时间和调用结果。
用户ID指的是用户标识,用于唯一标识用户;企业ID指的是企业标识,用于唯一标识企业;实例ID指的是实例标识,用于唯一标识提供服务的WEB服务实例,通常采用服务器IP+端口设置实例ID,当然还可以是自定义的编码;服务ID指的是服务标识,具体为提供客户端调用的业务功能编码,其中,每个服务ID可以对应有多个实例ID;发起端IP指的是调用服务实例的用户端的IP地址;开始时间指的是调用服务实例的开始时间;结束时间指的是调用服务实例的结束时间;调用结果指的是调用服务实例的结果,包括调用成功和调用结束,用于表明此次调用是否成功。
其中,根据用户ID,企业ID,实例ID,服务ID,发起端IP,开始时间可以唯一确定属于同一次业务调用的服务实例。
在每个服务器中启动一个开源采集软件FLUME用于采集AGENT进程,在AGENT配置文件中,为每个服务实例配置一套采集参数。采集参数包括数据源、通道以及输出。在本实施例中,将数据源(SOURCE)设置为业务日志信息,通道(CHANNEL)配置为memory类型,将输出(SINK)配置为KAFKA输出类型。实现利用开源采集软件FLUME采集该服务器中各个服务实例的业务日志信息。
S102、对采集到的每个业务日志信息分别进行标准化处理,得到对应的标准日志数据;并将所述标准日志数据放入KAFKA消息队列。
在FLUME的AGENT配置文件中,预先配置拦截器Interceptor自定义处理类,用于基于自定义日志处理方式处理业务日志信息。
FLUME采集到以日志文件存储的业务日志信息后,将日志文件中的每行业务日志信息分离为单条的业务日志信息,然后对每条业务日志信息根据预先配置的拦截器Interceptor对采集到的业务日志信息进行标准化处理。
标准化处理包括根据业务日志信息中每个字段信息获取各个字段信息的数据,并按照标准格式输出数据。
输出的标准日志数据为:
用户ID|企业ID|实例ID|服务ID|发起端IP|开始时间|结束时间|调用结果。“|”表示分隔符,分隔符前后分别为两个字段信息的数据。
最后利用KAFKA的SINK将标准化处理后得到的标准日志数据输出到KAFKA消息队列中,用于供大数据分析平台后续分析处理。
本实施例中大数据分析平台是基于开源HADOOP系统和开源数据库平台HIVE、开源数据库平台HBASE、开源计算平台SPARK的业务分析平台。如图2所示,为大数据分析平台所处大数据系统的架构示意图。
大数据分析平台使用HADOOP系统的HDFS大数据文件系统保存大数据分析平台使用的文件,使用HADOOP系统的YARN调度大数据分析平台的任务,使用SPARK进行业务计算。
为了便于理解图2所示的大数据系统,将大数据系统类比为传统操作系统,那么,HADOOP系统相当于LINUX系统,HDFS相当于文件系统,YARN相当于系统内核调度系统,HIVE相当于只读数据库,HBASE相当于读写数据库,SPARK相当于科学计算工具,KAFKA相当于系统消息队列。
S103、利用SPARK从KAFKA消息队列中读取标准日志数据。
大数据分析平台利用SPARK每间隔第一预设时间从KAFKA消息队列中读取标准日志数据,其中,第一预设时间为很短的时间,达到实时从KAFKA消息队列中读取标准日志数据的效果。
根据是否直接对从KAFKA消息队列中实时读取到的标准日志数据进行统计分析,可以分为在线分析和离线分析。
如果直接对从KAFKA消息队列中实时读取到的标准日志数据进行统计分析,则大数据分析平台实现的是在线分析功能。
如果不直接对从KAFKA消息队列中实时读取到的标准日志数据进行统计分析,那么,执行将实时读取到的标准日志数据存储到HBASE中,使得在需要执行对标准日志数据的统计分析时,利用SPARK每间隔第二预设时间从HBASE中读取标准日志数据,其中,第二预设时间大于第一预设时间。则大数据分析平台实现的是离线分析功能。
S104、对读取到的标准日志数据进行异常调用统计得到异常调用结果。
通过上述技术方案,本实施例中利用开源采集软件FLUME采集服务器中各个服务实例的业务日志信息,对采集到的每个业务日志信息分别进行标准化处理,得到对应的标准日志数据,并将标准日志数据放入KAFKA消息队列中,然后利用SPARK从KAFKA消息队列中读取标准日志数据,并对读取到的标准日志数据进行异常调用统计得到异常调用结果。由于对各个服务实例中的业务日志信息统一汇总后的数据进行异常调用统计,因此可以实现确定业务调用中存在的服务异常调用情况的目的。
根据离线分析和在线分析的不同,执行步骤S104中对读取到的标准日志数据进行异常调用统计得到异常调用结果的方式是不同的。
下面分别介绍离线分析和在线分析时执行步骤S104的具体步骤。
参见图3所示,为本实施例中实现离线分析的步骤,可以包括:
S301、根据所述调用结果,确定调用服务失败的标准日志数据。
先在SPARK SQL基础上编写统计SQL语句,基于SQL语句获取对应时间周期内的标准日志数据。其中,时间周期包括小时、天、月、年,离线分析对应的时间周期与在线分析对应的时间周期是不同的。
考虑到计算机成本和时效的影响,在线分析对应的时间周期比较小,如小时、天;离线分析对应的时间周期相对而言较大,如天、月、年。
获取到的每条标准日志数据均为:用户ID|企业ID|实例ID|服务ID|发起端IP|开始时间|结束时间|调用结果。
根据每条标准日志数据中包括的调用结果,确定对应该条标准日志数据的调用服务是否调用成功。
若调用结果表示调用成功,则确定调用服务成功,此条标准日志数据为调用服务成功的标准日志数据;
若调用结果表示调用失败,则确定调用服务失败,此条标准日志数据为调用服务失败的标准日志数据。
S302、从所述全部调用服务失败的标准日志数据中,确定在预设时间内每项服务的调用总次数和每项服务的调用总时长。
预设时间为与离线分析对应的时间周期。
确定调用服务失败的标准日志数据后,可以根据时间周期、服务ID、实例ID、发起端IP和开始时间,将标准日志数据进行汇总,得到汇总后的数据。
从汇总后的数据中确定时间周期内每项服务的调用总次数和调用总时长。
例如,每天实例ID为A的调用总次数为20,每天服务ID为a的调用总时长为1小时。
其中,得到的统计分析结果还可以包括两项结果,分别为结果1和结果2。结果1:统计周期、企业ID、服务ID,实例ID、总次数;结果2:统计周期、用户ID、企业ID、发起端IP、总时长。
S303、针对每项服务,确定该服务的调用总次数是否超过该服务的平均调用次数,且该服务的调用总时长是否超过该服务的平均调用时长;
若确定该服务的调用总次数超过该服务的平均调用次数且该服务的调用总时长超过该服务的平均调用时长,则执行步骤S304;
否则,确定未出现异常调用。
服务的平均调用次数以及平均调用时长是根据历史该服务被调用的次数以及时长计算得到的。且根据最新确定得到的该服务的调用总次数以及该服务的调用总时长,更新历史该服务被调用的次数以及时长,从而更新该服务的平均调用次数和平均调用时长。
例如,步骤S303确定得到服务的调用总次数和服务的调用总时长后,将服务的调用总次数和服务的调用总时长存储至数据库一段时间后,分别计算出每小时或每日内服务的调用平均次数和服务的调用平均时长。便于下次执行该步骤时根据最新计算出的每小时或每日内服务的调用平均次数和服务的调用平均时长,确定服务的调用是否异常。
可选地,在其他实施例中,计算服务的调用总次数与该服务的平均调用次数的第一比例,确定所述第一比例是否超过第一预设比例,并在确定所述第一比例超过第一预设比例时,确定该服务出现异常调用,否则确定该服务未出现异常调用。
同理,计算服务的调用总时长与该服务的平均调用时长的第二比例,确定所述第二比例是否超过第二预设比例,并在确定所述第二比例超过第二预设比例时,确定该服务出现异常调用,否则确定该服务未出现异常调用。
S304、确定该服务出现异常调用。
在确定服务出现异常调用后,可以输出告警信息,以提示该服务的调用异常。
S305、从全部标准日志数据中,确定在预设时间内每项服务的调用频率。
预设时间为与离线分析对应的时间周期。调用频率包括平均调用次数、平均调用时长。
根据时间周期、服务ID、实例ID、发起端IP、开始时间和结束时间,将标准日志数据进行汇总,得到汇总后的数据。
从汇总后的数据中确定时间周期内每项服务的调用总次数、平均调用次数、调用总时长、平均调用时长。
其中,得到的统计分析结果还可以包括两项结果,分别为结果3和结果4。结果3:统计周期、企业ID、服务ID,实例ID、调用结果、总次数、总时长、平均次数、平均时长;结果4:统计周期、用户ID、企业ID、发起端IP、调用结果、总次数、总时长、平均次数、平均时长。
S306、确定所述调用频率是否超过平均调用频率。
若确定所述调用频率超过平均调用频率,则执行步骤S307;
否则,确定未出现异常调用。
服务的平均调用频率是根据历史该服务的调用频率计算得到的。且根据最新确定得到的该服务的调用频率,可以更新历史该服务的调用频率,从而更新该服务的平均调用频率。
可选地,在其他实施例中,计算服务的调用频率与该服务的平均调用频率的第三比例,确定所述第三比例是否超过第三预设比例,并在确定所述第三比例超过第三预设比例时,确定该服务出现异常调用,否则确定该服务未出现异常调用。
S307、确定该服务出现异常调用。
通过执行步骤S301-S307后,得到离线分析结果,将离线分析结果存储至HIVE中。
需要说明的是,本实施例中是在步骤S304后执行S305,但是,在实际应用中,并不限定步骤S301-S304以及S305-S307的执行顺序,甚至可以并行执行。
参见图4所示,为本实施例中实现在线分析的步骤,可以包括:
S401、利用开源采集软件FLUME采集该服务器的性能日志信息。
性能日志信息可以包括:主机CPU、内存、网络、使用率。
S402、根据所述服务器的性能日志信息,确定各个服务实例中服务器资源利用率超过预设阈值的服务实例。
确定服务实例中的服务器资源利用率超过预设阈值的服务实例。例如,确定服务器CPU和内存的利用率超过80%的服务实例。
S403、对服务器资源利用率超过预设阈值的服务实例中,按照服务实例的调用次数按照由多到少的顺序进行排列,并按照顺序选择预设位数的服务实例。
确定出服务器CPU和内存的利用率超过80%的服务实例后,分别确定每个服务实例在时间周期内的调用次数。
对服务器CPU和内存的利用率超过80%的各个服务实例,按照调用次数由多到少的顺序进行排列,选择排名前5位的服务实例。
S404、确定选择的服务实例为异常调用的服务。
确定排名前5位的服务实例为异常调用的服务,并输出告警信息。
在实现在线分析的场景下,确定出业务调用中存在的异常调用情况外,还可以确定业务的全流程,通过执行步骤S405-S406实现确定一个业务完整流程的目的。
S405、根据所述用户标识、所述服务标识和所述开始时间,确定同一用户标识在预设时间段内调用各个服务的顺序。
配置服务关系元数据,将服务之间调用关系配置为层级树状结构;然后根据用户标识、开始时间、服务标识,确定同一用户在时间周期内调用各层级服务的顺序。
S406、建立与该用户标识对应用户的调用服务的关系日志信息。
按照该用户调用各层级服务的顺序,建立调用服务的关系日志信息,并可以基于关系日志信息展示业务的全流程。
展示内容为:用户ID、企业ID、实例ID、服务ID、子服务ID数组、发起端IP、开始时间、结束时间、调用结果,其中,子服务ID可以递归向下展示。
在线分析结束后,得到在线分析结果,包括结果1-4以及关系日志信息,将结果1-4以及关系日志信息存储至HBASE中。
通过上述技术方案,本实施例中除了可以确定出异常调用的情况,而且可以实现对业务的全流程展示。
对应上述实施例公开的数据处理方法,本申请实施例提供了一种数据处理系统,所述数据处理系统集成在大数据系统中,参见图5所示,该数据处理系统包括:
采集单元501、处理单元502、读取单元503和统计单元504。
采集单元501,用于在每个服务器中分别启动开源采集软件FLUME,并利用开源采集软件FLUME采集该服务器中各个服务实例的业务日志信息;
处理单元502,用于对采集到的每个业务日志信息分别进行标准化处理,得到对应的标准日志数据;并将所述标准日志数据放入KAFKA消息队列;
读取单元503,用于利用SPARK从KAFKA消息队列中读取标准日志数据;
统计单元504,用于对读取到的标准日志数据进行异常调用统计得到异常调用结果。
可选地,所述标准日志数据包括:用户标识、企业标识、实例标识、服务标识、发起端IP、开始时间、结束时间以及调用结果。
可选地,在其他实施例中,统计单元504包括:
确定子单元;
所述确定子单元,用于根据所述调用结果,确定调用服务失败的标准日志数据;并从全部调用服务失败的标准日志数据中,确定在预设时间内的每项服务的调用总次数和每项服务的调用总时长;针对每项服务,确定该服务的调用总次数是否超过该服务的平均调用次数,且该服务的调用总时长是否超过该服务的平均调用时长;若确定该服务的调用总次数超过该服务的平均调用次数且该服务的调用总时长超过该服务的平均调用时长,则确定该服务出现异常调用。
可选地,在其他实施例中,所述确定子单元,还用于从全部标准日志数据中,确定在预设时间内每项服务的调用频率;确定所述调用频率是否超过平均调用频率;若确定所述调用频率超过平均调用频率,则确定该服务出现异常调用。
可选地,在其他实施例中,统计单元504还包括:排列选择子单元。
其中,采集单元501,还用于利用开源采集软件FLUME采集该服务器的性能日志信息;
所述确定子单元,还用于根据所述服务器的性能日志信息,确定各个服务实例中服务器资源利用率超过预设阈值的服务实例;
所述排列选择子单元,用于对服务器资源利用率超过预设阈值的服务实例中,按照服务实例的调用次数按照由多到少的顺序进行排列,并按照顺序选择预设位数的服务实例;
所述确定子单元,还用于确定选择的服务实例为异常调用的服务。
可选地,在其他实施例中,统计单元504还包括:
建立子单元。
其中,所述确定子单元,还用于根据所述用户标识、所述服务标识和所述开始时间,确定同一用户标识在预设时间段内调用各个服务的顺序;
所述建立子单元,用于建立与该用户标识对应用户的调用服务的关系日志信息。
通过上述技术方案,本实施例中利用开源采集软件FLUME采集服务器中各个服务实例的业务日志信息,对采集到的每个业务日志信息分别进行标准化处理,得到对应的标准日志数据,并将标准日志数据放入KAFKA消息队列中,然后利用SPARK从KAFKA消息队列中读取标准日志数据,并对读取到的标准日志数据进行异常调用统计得到异常调用结果。由于对各个服务实例中的业务日志信息统一汇总后的数据进行异常调用统计,因此可以实现确定业务调用中存在的服务异常调用情况的目的。同时可以实现对业务的全流程展示。
对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
对所公开的实施例的上述说明,使本领域技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种数据处理方法,其特征在于,包括:
在每个服务器中分别启动开源采集软件FLUME,并利用开源采集软件FLUME采集该服务器中各个服务实例的业务日志信息;
对采集到的每个业务日志信息分别进行标准化处理,得到对应的标准日志数据;并将所述标准日志数据放入KAFKA消息队列;
利用SPARK从KAFKA消息队列中读取标准日志数据;
对读取到的标准日志数据进行异常调用统计得到异常调用结果。
2.根据权利要求1所述的方法,其特征在于,所述标准日志数据包括:用户标识、企业标识、实例标识、服务标识、发起端IP、开始时间、结束时间以及调用结果;
则所述对读取到的标准日志数据进行异常调用统计得到异常调用结果包括:
根据所述调用结果,确定调用服务失败的标准日志数据;
从全部调用服务失败的标准日志数据中,确定在预设时间内的每项服务的调用总次数和每项服务的调用总时长;
针对每项服务,确定该服务的调用总次数是否超过该服务的平均调用次数,且该服务的调用总时长是否超过该服务的平均调用时长;
若确定该服务的调用总次数超过该服务的平均调用次数且该服务的调用总时长超过该服务的平均调用时长,则确定该服务出现异常调用。
3.根据权利要求2所述的方法,其特征在于,还包括:
从全部标准日志数据中,确定在预设时间内每项服务的调用频率;
确定所述调用频率是否超过平均调用频率;
若确定所述调用频率超过平均调用频率,则确定该服务出现异常调用。
4.根据权利要求2或3所述的方法,其特征在于,还包括:
利用开源采集软件FLUME采集该服务器的性能日志信息;
根据所述服务器的性能日志信息,确定各个服务实例中服务器资源利用率超过预设阈值的服务实例;
对服务器资源利用率超过预设阈值的服务实例中,按照服务实例的调用次数按照由多到少的顺序进行排列,并按照顺序选择预设位数的服务实例;
确定选择的服务实例为异常调用的服务。
5.根据权利要求4所述的方法,其特征在于,还包括:
根据所述用户标识、所述服务标识和所述开始时间,确定同一用户标识在预设时间段内调用各个服务的顺序;
建立与该用户标识对应用户的调用服务的关系日志信息。
6.一种数据处理系统,其特征在于,包括:
采集单元,用于在每个服务器中分别启动开源采集软件FLUME,并利用开源采集软件FLUME采集该服务器中各个服务实例的业务日志信息;
处理单元,用于对采集到的每个业务日志信息分别进行标准化处理,得到对应的标准日志数据;并将所述标准日志数据放入KAFKA消息队列;
读取单元,用于利用SPARK从KAFKA消息队列中读取标准日志数据;
统计单元,用于对读取到的标准日志数据进行异常调用统计得到异常调用结果。
7.根据权利要求6所述的系统,其特征在于,所述标准日志数据包括:用户标识、企业标识、实例标识、服务标识、发起端IP、开始时间、结束时间以及调用结果;
则所述统计单元包括:
确定子单元,用于根据所述调用结果,确定调用服务失败的标准日志数据;并从全部调用服务失败的标准日志数据中,确定在预设时间内的每项服务的调用总次数和每项服务的调用总时长;针对每项服务,确定该服务的调用总次数是否超过该服务的平均调用次数,且该服务的调用总时长是否超过该服务的平均调用时长;若确定该服务的调用总次数超过该服务的平均调用次数且该服务的调用总时长超过该服务的平均调用时长,则确定该服务出现异常调用。
8.根据权利要求7所述的系统,其特征在于,所述确定子单元,还用于从全部标准日志数据中,确定在预设时间内每项服务的调用频率;确定所述调用频率是否超过平均调用频率;若确定所述调用频率超过平均调用频率,则确定该服务出现异常调用。
9.根据权利要求7或8所述的系统,其特征在于,所述统计单元还包括:排列选择子单元;
其中,所述采集单元,还用于利用开源采集软件FLUME采集该服务器的性能日志信息;
所述确定子单元,还用于根据所述服务器的性能日志信息,确定各个服务实例中服务器资源利用率超过预设阈值的服务实例;
所述排列选择子单元,用于对服务器资源利用率超过预设阈值的服务实例中,按照服务实例的调用次数按照由多到少的顺序进行排列,并按照顺序选择预设位数的服务实例;
所述确定子单元,还用于确定选择的服务实例为异常调用的服务。
10.根据权利要求9所述的系统,其特征在于,所述统计单元,还包括:
建立子单元;
其中,所述确定子单元,还用于根据所述用户标识、所述服务标识和所述开始时间,确定同一用户标识在预设时间段内调用各个服务的顺序;
所述建立子单元,用于建立与该用户标识对应用户的调用服务的关系日志信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910604681.5A CN110297746A (zh) | 2019-07-05 | 2019-07-05 | 一种数据处理方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910604681.5A CN110297746A (zh) | 2019-07-05 | 2019-07-05 | 一种数据处理方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110297746A true CN110297746A (zh) | 2019-10-01 |
Family
ID=68030427
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910604681.5A Pending CN110297746A (zh) | 2019-07-05 | 2019-07-05 | 一种数据处理方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110297746A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110932918A (zh) * | 2019-12-26 | 2020-03-27 | 远景智能国际私人投资有限公司 | 日志数据采集方法、装置及存储介质 |
CN111290917A (zh) * | 2020-02-26 | 2020-06-16 | 深圳市云智融科技有限公司 | 基于yarn的资源监控方法、装置及终端设备 |
CN111460333A (zh) * | 2020-03-30 | 2020-07-28 | 北京工业大学 | 一种实时搜索数据分析系统 |
CN112330147A (zh) * | 2020-11-04 | 2021-02-05 | 北京思特奇信息技术股份有限公司 | 一种业务受理信息监控方法、装置及存储介质 |
CN113238888A (zh) * | 2021-06-02 | 2021-08-10 | 浙江网商银行股份有限公司 | 数据处理方法、系统及装置 |
CN115080363A (zh) * | 2022-08-23 | 2022-09-20 | 中国中金财富证券有限公司 | 一种基于业务日志的系统容量评估方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104937886A (zh) * | 2013-01-30 | 2015-09-23 | 日本电信电话株式会社 | 日志分析装置、信息处理方法以及程序 |
CN106649670A (zh) * | 2016-12-14 | 2017-05-10 | 北京五八信息技术有限公司 | 基于流式计算的数据监控方法及装置 |
CN107979477A (zh) * | 2016-10-21 | 2018-05-01 | 苏宁云商集团股份有限公司 | 一种业务监控的方法及系统 |
CN109274540A (zh) * | 2018-11-16 | 2019-01-25 | 四川长虹电器股份有限公司 | 一种基于storm的Web访问日志处理方法 |
CN109525448A (zh) * | 2019-01-10 | 2019-03-26 | 北京智信未来信息技术有限公司 | 日志数据采集系统及方法 |
-
2019
- 2019-07-05 CN CN201910604681.5A patent/CN110297746A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104937886A (zh) * | 2013-01-30 | 2015-09-23 | 日本电信电话株式会社 | 日志分析装置、信息处理方法以及程序 |
CN107979477A (zh) * | 2016-10-21 | 2018-05-01 | 苏宁云商集团股份有限公司 | 一种业务监控的方法及系统 |
CN106649670A (zh) * | 2016-12-14 | 2017-05-10 | 北京五八信息技术有限公司 | 基于流式计算的数据监控方法及装置 |
CN109274540A (zh) * | 2018-11-16 | 2019-01-25 | 四川长虹电器股份有限公司 | 一种基于storm的Web访问日志处理方法 |
CN109525448A (zh) * | 2019-01-10 | 2019-03-26 | 北京智信未来信息技术有限公司 | 日志数据采集系统及方法 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110932918A (zh) * | 2019-12-26 | 2020-03-27 | 远景智能国际私人投资有限公司 | 日志数据采集方法、装置及存储介质 |
CN111290917A (zh) * | 2020-02-26 | 2020-06-16 | 深圳市云智融科技有限公司 | 基于yarn的资源监控方法、装置及终端设备 |
CN111460333A (zh) * | 2020-03-30 | 2020-07-28 | 北京工业大学 | 一种实时搜索数据分析系统 |
CN111460333B (zh) * | 2020-03-30 | 2024-02-23 | 北京工业大学 | 一种实时搜索数据分析系统 |
CN112330147A (zh) * | 2020-11-04 | 2021-02-05 | 北京思特奇信息技术股份有限公司 | 一种业务受理信息监控方法、装置及存储介质 |
CN113238888A (zh) * | 2021-06-02 | 2021-08-10 | 浙江网商银行股份有限公司 | 数据处理方法、系统及装置 |
CN115080363A (zh) * | 2022-08-23 | 2022-09-20 | 中国中金财富证券有限公司 | 一种基于业务日志的系统容量评估方法及装置 |
CN115080363B (zh) * | 2022-08-23 | 2022-11-15 | 中国中金财富证券有限公司 | 一种基于业务日志的系统容量评估方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110297746A (zh) | 一种数据处理方法及系统 | |
CN110502494B (zh) | 日志处理方法、装置、计算机设备及存储介质 | |
CN108776934B (zh) | 分布式数据计算方法、装置、计算机设备及可读存储介质 | |
US20180365085A1 (en) | Method and apparatus for monitoring client applications | |
CN106548402B (zh) | 资源转移监控方法及装置 | |
CN109885453B (zh) | 基于流数据处理的大数据平台监控系统 | |
CN107347182A (zh) | 短信分发方法和系统 | |
CN110147470B (zh) | 一种跨机房数据比对系统及方法 | |
CN111813573A (zh) | 管理平台与机器人软件的通信方法及其相关设备 | |
CN111984495A (zh) | 一种大数据监控方法、装置和存储介质 | |
CN113596078A (zh) | 业务问题定位方法及装置 | |
CN110851758B (zh) | 一种网页访客数量统计方法及装置 | |
CN110909072B (zh) | 一种数据表建立方法、装置及设备 | |
CN110929130A (zh) | 一种基于分布式调度的公安部级审计数据查询方法 | |
CN108959041B (zh) | 信息发送的方法、服务器及计算机可读存储介质 | |
CN110909129B (zh) | 异常投诉事件的识别方法及装置 | |
CN110087232A (zh) | 一种基于智能设备的呼叫处理方法、装置及服务器 | |
CN113778996A (zh) | 一种大数据流数据处理方法、装置、电子设备及存储介质 | |
CN111552674B (zh) | 日志处理方法及设备 | |
CN108810299B (zh) | 一种信息解析的方法、介质及设备 | |
CN113347045A (zh) | 一种告警消息处理方法及装置 | |
CN116170321B (zh) | 一种链路追踪的数据收集方法、装置、设备和存储介质 | |
CN112579552A (zh) | 日志存储及调用方法、装置及系统 | |
CN113297245A (zh) | 获取执行信息的方法及装置 | |
WO2024066770A1 (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20191001 |