基于应用日志的异常交易诊断方法及系统转让专利

申请号 : CN202010611249.1

文献号 : CN111798237A

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 程鹏任政吴冕冠齐颀

申请人 : 中国工商银行股份有限公司

摘要 :

本发明提供了一种基于应用日志的异常交易诊断方法及系统,所述方法包括:对交易的应用日志进行特征提取得到模板序列;根据所述模板序列通过预设的异常交易分析模型确定所述交易的交易类型;根据预设模式库中所述交易类型对应的模板序列检测所述模板序列对应的交易是否为异常交易,本发明可实现灵活、高精度的实时异常交易诊断。

权利要求 :

1.一种基于应用日志的异常交易诊断方法,其特征在于,包括:对交易的应用日志进行特征提取得到模板序列;

根据所述模板序列通过预设的异常交易分析模型确定所述交易的交易类型;

根据预设模式库中所述交易类型对应的模板序列检测所述模板序列对应的交易是否为异常交易。

2.根据权利要求1所述的基于应用日志的异常交易诊断方法,其特征在于,所述对交易的应用日志进行特征提取得到模板序列具体包括:对交易的每条应用日志中的特征字段进行特征提取得到日志模板;

根据交易的所有应用日志的日志模板得到模板序列。

3.根据权利要求1所述的基于应用日志的异常交易诊断方法,其特征在于,进一步包括预先形成所述异常交易分析模型和所述模式库的步骤。

4.根据权利要求3所述的基于应用日志的异常交易诊断方法,其特征在于,所述形成所述异常交易分析模型和所述模式库具体包括:对历史正常交易的应用日志进行特征提取得到模板序列;

通过聚类算法对历史正常交易的模板序列进行聚类得到多个交易类型;

根据多个交易类型的模板序列对分类器进行分类训练得到所述异常交易分析模型;

根据多个交易类型对应的模板序列以及各个模板序列的概率值形成模式库。

5.根据权利要求4所述的基于应用日志的异常交易诊断方法,其特征在于,所述根据预设模式库中所述交易类型对应的模板序列检测所述模板序列对应的交易是否为异常交易具体包括:将所述模板序列与模式库中对应交易类型的模板序列进行比对,确定所述模板序列的概率值,若所述概率值低于预设阈值,则所述交易为异常交易。

6.根据权利要求1所述的基于应用日志的异常交易诊断方法,其特征在于,进一步包括:获取所述应用日志的起始时间和结束时间,得到所述交易的时长;

若所述交易的时长大于预设时间阈值,诊断所述交易为超时交易。

7.根据权利要求1所述的基于应用日志的异常交易诊断方法,其特征在于,所述根据所述模板序列通过预设的异常交易分析模型确定所述交易的交易类型具体包括:根据所述模板序列通过预设的异常交易分析模型确定所述交易属于目的交易类型的置信度,若所述置信度大于预设置信度阈值,确定所述交易的交易类型为所述目的交易类型。

8.根据权利要求1所述的基于应用日志的异常交易诊断方法,其特征在于,进一步包括获取交易的应用日志的步骤:通过Fluentd将原始日志数据根据交易打散后发送给Kafka集群;

通过Spark以订阅方式从所述Kafka集群获取打散后的原始日志数据。

9.一种基于应用日志的异常交易诊断系统,其特征在于,包括:数据处理模块,用于对交易的应用日志进行特征提取得到模板序列;

交易分类模块,用于根据所述模板序列通过预设的异常交易分析模型确定所述交易的交易类型;

交易检测模块,用于根据预设模式库中所述交易类型对应的模板序列检测所述模板序列对应的交易是否为异常交易。

10.一种计算机设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1-8任一项所述方法。

11.一种计算机可读介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-8任一项所述方法。

说明书 :

基于应用日志的异常交易诊断方法及系统

技术领域

[0001] 本发明涉及智能运维技术领域,尤其涉及一种基于应用日志的异常交易诊断方法及系统。

背景技术

[0002] 随着互联网技术和金融科技的发展,网上交易越来越频繁,交易的金额也在不断增大,网上交易给人民带来便利的同时,伴随而来的交易问题也越来越多。而一些细小的错误可能导致较大的交易问题,因此对异常交易进行实时诊断显得尤为重要。
[0003] 当前交易的问题诊断通常依赖于固定阈值的报警,固定阈值一方面容易误报和漏报,导致问题的诊断精度低下,另一方面可能造成报警风暴,使得真实报警信息掩盖在大量的虚假报警信息之下,严重影响问题分析定位的效率。综上,目前基于固定阈值的异常交易检测和诊断方法效率较低。

发明内容

[0004] 本发明的一个目的在于提供一种基于应用日志的异常交易诊断方法,实现灵活、高精度的实时异常交易诊断。本发明的另一个目的在于提供一种基于应用日志的异常交易诊断系统。本发明的再一个目的在于提供一种计算机设备。本发明的还一个目的在于提供一种可读介质。
[0005] 为了达到以上目的,本发明一方面公开了一种基于应用日志的异常交易诊断方法,包括:
[0006] 对交易的应用日志进行特征提取得到模板序列;
[0007] 根据所述模板序列通过预设的异常交易分析模型确定所述交易的交易类型;
[0008] 根据预设模式库中所述交易类型对应的模板序列检测所述模板序列对应的交易是否为异常交易。
[0009] 优选的,所述对交易的应用日志进行特征提取得到模板序列具体包括:
[0010] 对交易的每条应用日志中的特征字段进行特征提取得到日志模板;
[0011] 根据交易的所有应用日志的日志模板得到模板序列。
[0012] 优选的,进一步包括预先形成所述异常交易分析模型和所述模式库的步骤。
[0013] 优选的,所述形成所述异常交易分析模型和所述模式库具体包括:
[0014] 对历史正常交易的应用日志进行特征提取得到模板序列;
[0015] 通过聚类算法对历史正常交易的模板序列进行聚类得到多个交易类型;
[0016] 根据多个交易类型的模板序列对分类器进行分类训练得到所述异常交易分析模型;
[0017] 根据多个交易类型对应的模板序列以及各个模板序列的概率值形成模式库。
[0018] 优选的,所述根据预设模式库中所述交易类型对应的模板序列检测所述模板序列对应的交易是否为异常交易具体包括:
[0019] 将所述模板序列与模式库中对应交易类型的模板序列进行比对,确定所述模板序列的概率值,若所述概率值低于预设阈值,则所述交易为异常交易。
[0020] 优选的,进一步包括:
[0021] 获取所述应用日志的起始时间和结束时间,得到所述交易的时长;
[0022] 若所述交易的时长大于预设时间阈值,诊断所述交易为超时交易。
[0023] 优选的,所述根据所述模板序列通过预设的异常交易分析模型确定所述交易的交易类型具体包括:
[0024] 根据所述模板序列通过预设的异常交易分析模型确定所述交易属于目的交易类型的置信度,若所述置信度大于预设置信度阈值,确定所述交易的交易类型为所述目的交易类型。
[0025] 优选的,进一步包括获取交易的应用日志的步骤:
[0026] 通过Fluentd将原始日志数据根据交易打散后发送给Kafka集群;
[0027] 通过Spark以订阅方式从所述Kafka集群获取打散后的原始日志数据。
[0028] 本发明还公开了一种基于应用日志的异常交易诊断系统,包括:
[0029] 数据处理模块,用于对交易的应用日志进行特征提取得到模板序列;
[0030] 交易分类模块,用于根据所述模板序列通过预设的异常交易分析模型确定所述交易的交易类型;
[0031] 交易检测模块,用于根据预设模式库中所述交易类型对应的模板序列检测所述模板序列对应的交易是否为异常交易。
[0032] 本发明还公开了一种计算机设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,
[0033] 所述处理器执行所述程序时实现如上所述方法。
[0034] 本发明还公开了一种计算机可读介质,其上存储有计算机程序,
[0035] 该程序被处理器执行时实现如上所述方法。
[0036] 本发明通过对实时交易的应用日志进行特征提取得到模板序列,通过预设的异常交易分析模型确定实时交易的交易类型。进一步的,根据预设的模式库中该交易类型对应的模板序列对实时交易的模板序列进行检测,确定模板序列对应的交易是否为异常交易。本发明通过形成正常交易的模式库对实时交易进行匹配从而实现在线实时异常交易的诊断,解决基于固定阈值的异常交易诊断方式效率较低的问题,且本发明不需要人为设定诊断阈值,无阈值的诊断更加灵活便捷,相较传统阈值诊断方式,基于历史正常应用日志的异常诊断精度更高。

附图说明

[0037] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0038] 图1示出本发明一种基于应用日志的异常交易诊断方法一个具体实施例的流程图;
[0039] 图2示出本发明一种基于应用日志的异常交易诊断方法一个具体实施例包括预先形成所述异常交易分析模型和所述模式库的流程图;
[0040] 图3示出本发明一种基于应用日志的异常交易诊断方法一个具体实施例S000的流程图;
[0041] 图4示出本发明一种基于应用日志的异常交易诊断方法一个具体实施例S100的流程图;
[0042] 图5示出本发明一种基于应用日志的异常交易诊断方法一个具体实施例S200的流程图;
[0043] 图6示出本发明一种基于应用日志的异常交易诊断方法一个具体实施例S300的流程图;
[0044] 图7示出本发明一种基于应用日志的异常交易诊断方法一个具体实施例S400的流程图;
[0045] 图8示出本发明一种基于应用日志的异常交易诊断方法一个具体实施例获取交易的应用日志的流程图;
[0046] 图9示出本发明一种基于应用日志的异常交易诊断系统一个具体实施例的结构图;
[0047] 图10示出本发明一种基于应用日志的异常交易诊断系统一个具体实施例数据处理模块的结构图;
[0048] 图11示出本发明一种基于应用日志的异常交易诊断系统一个具体实施例包括模型构建模块的结构图;
[0049] 图12示出本发明一种基于应用日志的异常交易诊断系统一个具体实施例模型构建模块的结构图;
[0050] 图13示出本发明一种基于应用日志的异常交易诊断系统一个具体实施例包括超时检测模块的结构图;
[0051] 图14示出本发明一种基于应用日志的异常交易诊断系统一个具体实施例包括日志获取模块的结构图;
[0052] 图15示出本发明一种基于应用日志的异常交易诊断系统一个具体实施例日志获取模块的结构图;
[0053] 图16示出适于用来实现本发明实施例的计算机设备的结构示意图。

具体实施方式

[0054] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0055] 本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
[0056] 需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0057] 需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
[0058] 根据本发明的一个方面,本实施例公开了一种基于应用日志的异常交易诊断方法。如图1所示,本实施例中,所述方法包括:
[0059] S100:对交易的应用日志进行特征提取得到模板序列。
[0060] S200:根据所述模板序列通过预设的异常交易分析模型确定所述交易的交易类型。
[0061] S300:根据预设模式库中所述交易类型对应的模板序列检测所述模板序列对应的交易是否为异常交易。
[0062] 本发明通过对实时交易的应用日志进行特征提取得到模板序列,通过预设的异常交易分析模型确定实时交易的交易类型。进一步的,根据预设的模式库中该交易类型对应的模板序列对实时交易的模板序列进行检测,确定模板序列对应的交易是否为异常交易。本发明通过形成正常交易的模式库对实时交易进行匹配从而实现在线实时异常交易的诊断,解决基于固定阈值的异常交易诊断方式效率较低的问题,且本发明不需要人为设定诊断阈值,无阈值的诊断更加灵活便捷,相较传统阈值诊断方式,基于历史正常应用日志的异常诊断精度更高。
[0063] 在优选的实施方式中,如图2所示,所述方法进一步包括预先形成所述异常交易分析模型和所述模式库的步骤S000。可以理解的是,在该优选的实施方式中,通过建立交易异常分析模型的形式根据实时交易的模板序列对交易进行交易类型的匹配,以对交易进行分类,以进一步在该交易类型的范围内进行交易匹配确定实时交易是否为异常交易。在可选的实施方式中,可通过离线训练的形式基于历史正常交易的应用日志进行模式库的提取和模型的训练。
[0064] 在优选的实施方式中,如图3所示,所述S000形成所述异常交易分析模型和所述模式库具体可包括:
[0065] S011:对历史正常交易的应用日志进行特征提取得到模板序列。
[0066] S012:通过聚类算法对历史正常交易的模板序列进行聚类得到多个交易类型。
[0067] S013:根据多个交易类型的模板序列对分类器进行分类训练得到所述异常交易分析模型。
[0068] S014:根据多个交易类型对应的模板序列以及各个模板序列的概率值形成模式库。
[0069] 可以理解的是,在该优选的实施方式中,一个交易通常需要多个应用执行完成,从而在链路上的每个应用形成应用日志。基于历史正常交易的应用日志,对历史正常交易的每一条应用日志进行特征提取可得到日志模板。将交易链路上形成的多条应用日志的日志模板按形成的时间顺序排列形成模板序列。其中,可根据预设的特征字段对应用日志进行特征提取,特征字段可选取具有表征意义的字段,提取得到的特征字段相同的日志模板为同一个模板。其中,特征字段可包括时间戳、日志类型、程序名称、子程序名、平台流水号、交易代码和业务返回码等特征字段中的至少之一,在实际应用中,也可选择其他特征字段对应用日志进行特征提取,本发明对此并不作限定。
[0070] 由于每个交易包含多条应用日志,因此每个交易的多个日志模板可形成一个模板序列,可通过模板化将历史正常应用日志全部转化为模板序列。其中,根据选定的特征字段对应用日志进行匹配,根据应用日志中包含的特征字段及特征字段对应的数值形成数值化的日志模板,进一步得到模板序列,从而可对数值化的模板序列的数据进行分析。
[0071] 为了进一步简化分析复杂度,可采用聚类算法对所有历史正常交易的模板序列进行聚类分析,可将历史正常交易进行分类,得到多个交易类型的历史正常交易。将历史正常交易的交易类型作为历史正常交易的标签,采用历史正常交易的模板序列和对应的交易类型标签对分类器进行分类训练可得到训练好的异常交易分析模型,该异常交易分析模型可在异常交易诊断过程中对待诊断的交易进行分类,确定待诊断交易的交易类型。
[0072] 需要说明的是,聚类算法优选的可采用DBSCAN算法,分类器优选的可采用运用CATBOOST分类算法的分类器。在该实施例中,通过对CATBOOST分类算法的分类器进行训练得到交易异常分析模型,在其他实施方式中,也可以采用其他方式形成交易异常分析模型,本发明在此并不作限定。
[0073] 为了对实时交易进行精准分析,过一步对每个交易类型的历史正常交易进行分析,形成模式库。具体的,可分析每个交易类型的每个模板序列在该交易类型所有模板序列中所占的概率值,即得到模板序列的类型和数量,根据每个类型模板序列的数量在所有模板序列数量中所占的比值可得到每个交易类型模板序列的概率值。进而,根据各个交易类型对应的模板序列及其概率值得到模式库。
[0074] 在一个具体例子中,对30万条历史应用日志共抽出112条日志模板,通过形成日志模板对交易的应用日志进行分析可以大大降低分析的复杂度。对112条日志模板进行聚类分析得到107类交易类型。其中,假设聚类得到的第一类交易类型包括100条交易,第一类交易类型包括第一类和第二类模板序列,其中每类模板序列包括50个模板序列。则第一类交易类型中每类模板序列的概率值为0.5。因此,在实时检测过程中,对实时待检测交易的模板序列与模式库中对应交易类型的模板序列进行比对,若通过匹配得到模板序列为第一类模板序列,则待检测的模板序列的概率值为0.5。从而,当匹配得到的模板序列的概率值越大,越可能是正常的交易。则可预设阈值,当模板序列的概率值低于预设阈值,则确定待检测交易为异常交易。
[0075] 在优选的实施方式中,如图4所示,所述S100对交易的应用日志进行特征提取得到模板序列具体可包括:
[0076] S110:对交易的每条应用日志中的特征字段进行特征提取得到日志模板。
[0077] S120:根据交易的所有应用日志的日志模板得到模板序列。
[0078] 可以理解的是,与形成所述异常交易分析模型和所述模式库的步骤类似,对交易的应用日志进行特征提取得到日志模板,并按照交易所有应用日志的顺序将日志模板排序得到模板序列。由于异常交易分析模型是由历史正常交易的模板序列训练得到的,因此,采用异常交易分析模型对实时待检测交易的模板序列进行分类可准确得到交易的交易类型。
[0079] 在优选的实施方式中,如图5所示,所述S200根据所述模板序列通过预设的异常交易分析模型确定所述交易的交易类型具体可包括:
[0080] S210:根据所述模板序列通过预设的异常交易分析模型确定所述交易属于目的交易类型的置信度。
[0081] S220:若所述置信度大于预设置信度阈值,确定所述交易的交易类型为所述目的交易类型。
[0082] 可以理解的是,在通过预设的异常交易分析模型确定交易的交易类型时,可能存在得到的交易的应用日志在历史正常交易中不存在的情况,即为未知交易。异常交易分析模型对交易的应用日志进行交易类型的分类时,会得到交易属于一个交易类型的置信度。可预设一个置信度阈值,当异常交易分析模型确定交易属于一个交易类型的置信度大于置信度阈值,可确定交易属于该交易类型。否则,确定该交易为未知交易。其中,置信度阈值优选的可选择0.8,在实际应用中,也可根据实际需要选择其他的置信度阈值,本发明对此并不作限定。
[0083] 在优选的实施方式中,如图6所示,所述S300根据预设模式库中所述交易类型对应的模板序列检测所述模板序列对应的交易是否为异常交易具体可包括:
[0084] S310:将所述模板序列与模式库中对应交易类型的模板序列进行比对,确定所述模板序列的概率值。
[0085] S320:若所述概率值低于预设阈值,则所述交易为异常交易。
[0086] 可以理解的是,在预先得到的模式库中,存在各交易类型的模板序列及其概率值,在实时检测时,对待检测的交易进行特征提取等操作可得到待检测交易的模板序列。将模板序列与模式库中的模板序列进行匹配,若匹配得到模板序列,则匹配得到的模板序列的概率值越大,说明待检测交易为正常交易的可能性就越大。当匹配得到的模板序列的概率值低于预设阈值时,可判定交易为异常交易。其中,预计阈值可选择比较小的概率值。在一个具体例子中,概率值可选择0,即待检测的模板序列在模式库中匹配不到模板序列时,认为该待检测的交易在历史正常交易中没有出现过,为异常交易。在另一个具体例子中,概率值可选择0.2,即待检测的模板序列在模式库中匹配得到的模板序列的概率值为0.2,则认为该交易在历史正常交易中比较稀少,为稀有交易,可认为该交易为异常交易。在实际应用时,概率值也可选择其他值,在得到交易检测结果后,可将该检测结果向用户反馈。
[0087] 在优选的实施方式中,如图7所示,所述方法进一步包括:
[0088] S410:获取所述应用日志的起始时间和结束时间,得到所述交易的时长。
[0089] S420:若所述交易的时长大于预设时间阈值,诊断所述交易为超时交易。
[0090] 可以理解的是,交易的应用日志可包括起始时间和结束时间,将结束时间减去起始时间可得到整个交易的持续时长。可预先设置预设时间阈值,若交易的时长大于该预设时间阈值,即认为该交易的持续时长超过正常交易的时间,判定为超时交易。其中,预设时间阈值可通过将一个交易类型历史正常交易的平均值乘以比例值得到,该比例值优选的可选择1.2,在实际应用中,也可选择其他比例值,本发明对此并不作限定。
[0091] 在优选的实施方式中,如图8所示,所述方法进一步包括获取交易的应用日志的步骤:
[0092] S021:通过Fluentd将原始日志数据根据交易打散后发送给Kafka集群。
[0093] S022:通过Spark以订阅方式从所述Kafka集群获取打散后的原始日志数据。
[0094] 可以理解的是,在该优选的实施方式中,利用Fluentd将数据打散发送到Kafka集群,然后通过Kafka集群订阅方式进行数据的分发,通过Spark实时从Kafka集群获取原始日志数据,得到交易的应用日志。
[0095] 优选的,可使用Spark Streaming架构,作为Kafka集群的消费者从Kafka集群订阅Topic,实时获取交易的应用日志,并对应用日志做在线实时检测。预先得到的异常交易分析模型可存储在MySql数据库中,并可将预先得到的模式库存储在Redis中。Spark从Kafka集群实时订阅日志数据,从MySql数据库中获取离线训练好的模型,并从Redis中获取离线建立的模式库,对交易的应用日志进行实时检测,通过将测试环境中Redis和MySql中的模式库和算法数据导出到数据文件,利用脚本将数据文件导入到生产数据库中可完成离线训练模式库和模型的迁移。
[0096] 最后可将异常交易的诊断结果存放在ElasticSearch中,通过规则查询可从ElasticSearch中获取相应的诊断结果进行展示。应用日志诊断结果可按天建立索引存储在ElasticSearch集群中,存储1周结果数据,存放超过1周的数据将通过自动化脚本进行删除。在实际应用中,也可采用其他方式存储和删除诊断结果,本发明对此并不作限定。
[0097] 基于相同原理,本实施例还公开了一种基于应用日志的异常交易诊断系统。如图9所示,本实施例中,所述系统包括数据处理模块11、交易分类模块12和交易检测模块13。
[0098] 其中,所述数据处理模块11用于对交易的应用日志进行特征提取得到模板序列。
[0099] 所述交易分类模块12用于根据所述模板序列通过预设的异常交易分析模型确定所述交易的交易类型。
[0100] 所述交易检测模块13用于根据预设模式库中所述交易类型对应的模板序列检测所述模板序列对应的交易是否为异常交易。
[0101] 在优选的实施方式中,如图10所示,所述数据处理模块11包括特征提取单元111和模板序列形成单元112。
[0102] 所述特征提取单元111用于对交易的每条应用日志中的特征字段进行特征提取得到日志模板。
[0103] 所述模板序列形成单元112用于根据交易的所有应用日志的日志模板得到模板序列。
[0104] 在优选的实施方式中,如图11所示,所述系统进一步包括模型构建模块101。所述模型构建模块101用于预先形成所述异常交易分析模型和所述模式库。
[0105] 在优选的实施方式中,如图12所示,所述模型构建模块101进一步包括日志处理单元1011、交易聚类单元1012、模型训练单元1013和模式库构建单元1014。
[0106] 其中,所述日志处理单元101用于对历史正常交易的应用日志进行特征提取得到模板序列。
[0107] 所述交易聚类单元102用于通过聚类算法对历史正常交易的模板序列进行聚类得到多个交易类型。
[0108] 所述模型训练单元103用于根据多个交易类型的模板序列对分类器进行分类训练得到所述异常交易分析模型。
[0109] 所述模式库构建单元104用于根据多个交易类型对应的模板序列以及各个模板序列的概率值形成模式库。
[0110] 在优选的实施方式中,所述交易检测模块13具体用于将所述模板序列与模式库中对应交易类型的模板序列进行比对,确定所述模板序列的概率值,若所述概率值低于预设阈值,则所述交易为异常交易。
[0111] 在优选的实施方式中,如图13所示,所述系统进一步包括超时检测模块14。
[0112] 所述超时检测模块14用于获取所述应用日志的起始时间和结束时间,得到所述交易的时长,若所述交易的时长大于预设时间阈值,诊断所述交易为超时交易。
[0113] 在优选的实施方式中,所述交易分类模块12具体用于根据所述模板序列通过预设的异常交易分析模型确定所述交易属于目的交易类型的置信度,若所述置信度大于预设置信度阈值,确定所述交易的交易类型为所述目的交易类型。
[0114] 在优选的实施方式中,如图14所示,所述系统进一步包括日志获取模块102。所述日志获取模块用于获取交易的应用日志。优选的,如图15所示,日志获取模块102包括数据打散单元1021和数据获取单元1022。
[0115] 其中,所述数据打散单元1021用于通过Fluentd将原始日志数据根据交易打散后发送给Kafka集群。
[0116] 所述数据获取单元1022用于通过Spark以订阅方式从所述Kafka集群获取打散后的原始日志数据。
[0117] 由于该系统解决问题的原理与以上方法类似,因此本系统的实施可以参见方法的实施,在此不再赘述。
[0118] 上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机设备,具体的,计算机设备例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
[0119] 在一个典型的实例中计算机设备具体包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上所述方法。
[0120] 下面参考图16,其示出了适于用来实现本申请实施例的计算机设备600的结构示意图。
[0121] 如图16所示,计算机设备600包括中央处理单元(CPU)601,其可以根据存储在只读存储器(ROM)602中的程序或者从存储部分608加载到随机访问存储器(RAM))603中的程序而执行各种适当的工作和处理。在RAM603中,还存储有系统600操作所需的各种程序和数据。CPU601、ROM602、以及RAM603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
[0122] 以下部件连接至I/O接口605:包括键盘、鼠标等的输入部分606;包括诸如阴极射线管(CRT)、液晶反馈器(LCD)等以及扬声器等的输出部分607;包括硬盘等的存储部分608;以及包括诸如LAN卡,调制解调器等的网络接口卡的通信部分609。通信部分609经由诸如因特网的网络执行通信处理。驱动器610也根据需要连接至I/O接口605。可拆卸介质611,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器610上,以便于从其上读出的计算机程序根据需要被安装如存储部分608。
[0123] 特别地,根据本发明的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明的实施例包括一种计算机程序产品,其包括有形地包含在机器可读介质上的计算机程序,所述计算机程序包括用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分609从网络上被下载和安装,和/或从可拆卸介质611被安装。
[0124] 计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
[0125] 为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
[0126] 本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0127] 这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0128] 这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0129] 还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
[0130] 本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
[0131] 本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
[0132] 本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0133] 以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。