CN111274094B - 接口预警方法、系统、设备及存储介质 - Google Patents
接口预警方法、系统、设备及存储介质 Download PDFInfo
- Publication number
- CN111274094B CN111274094B CN202010079505.7A CN202010079505A CN111274094B CN 111274094 B CN111274094 B CN 111274094B CN 202010079505 A CN202010079505 A CN 202010079505A CN 111274094 B CN111274094 B CN 111274094B
- Authority
- CN
- China
- Prior art keywords
- interface
- user
- early warning
- abnormal
- access times
- 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.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3089—Monitoring arrangements determined by the means or processing involved in sensing the monitored data, e.g. interfaces, connectors, sensors, probes, agents
-
- 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/302—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3051—Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
-
- 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/3438—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 monitoring of user actions
-
- 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/3452—Performance evaluation by statistical analysis
Abstract
本发明提供了一种接口预警方法、系统、设备及存储介质,该方法包括:获取接口埋点数据;对于每个接口,根据所述接口埋点数据统计各个用户的异常访问次数;将每个接口的每个用户的异常访问次数与预设的预警规则进行匹配;如果一用户对一接口的异常访问次数符合所对应的预警规则,则对该接口进行告警。采用本发明,通过根据所述接口埋点数据统计各个用户的异常访问次数,可以实现基于用户维度的接口数据统计,并且通过将每个接口的每个用户的异常访问次数与预设的预警规则进行匹配,可以实现基于用户维度的接口异常判定,从而实时地发现并预警单用户的业务异常行为,以弥补现有监控系统中湮没单用户的业务异常行为的不足,提升用户使用体验。
Description
技术领域
本发明涉及接口监控技术领域,尤其涉及一种接口预警方法、系统、设备及存储介质。
背景技术
监控是一个产品生命周期不可或缺,乃至最重要的一环。随着旅游服务到全球更多的用户,对服务的稳定性和质量提出了更高的要求。现在的监控系统种类繁多,功能强大,如Open-Falcon(一款用golang和python写的监控系统),Cat(Central ApplicationTracking,基于Java开发打造的实时应用监控平台)等,为监控系统提供了丰度的监测指标,如CPU(中央处理器)、IO(输入输出)、磁盘、网络等信息。
然而,现有的监控指标多是全局维度的,侧重于对系统的运行情况进行监控,而在复杂的业务系统中,需要的是更细颗粒度的监控,尤其是业务层面的异常。业务的异常是一种程序的主动拒绝行为,一般不会带来技术指标维度的波动,因此在实际应用中往往会被监控系统所忽视。在实际排查的用户的“客户投诉事件”时,发现日志已经明确记录了多次的业务异常,未被及时主动的发现,导致了糟糕的产品体验。
发明内容
针对现有技术中的问题,本发明的目的在于提供一种接口预警方法、系统、设备及存储介质,实时地发现并预警单用户的业务异常行为,弥补现有监控系统中湮没单用户的业务异常行为的不足。
本发明实施例提供一种接口预警方法,所述方法包括如下步骤:
获取接口埋点数据;
对于每个接口,根据所述接口埋点数据统计各个用户的异常访问次数;
将每个接口的每个用户的异常访问次数与预设的预警规则进行匹配;
如果一用户对一接口的异常访问次数符合所对应的预警规则,则对该接口进行告警。
可选地,所述获取接口埋点数据,包括获取预设时间段内的接口埋点数据,将所述接口埋点数据存储于Kafka消息队列中。
可选地,采用计算引擎从所述Kafka消息队列中提取接口埋点数据,由所述计算引擎对于每个接口,根据所述接口埋点数据统计各个用户的异常访问次数,并将每个接口的每个用户的异常访问次数与预设的预警规则进行匹配。
可选地,所述计算引擎为Storm计算引擎、Spark计算引擎或Flink计算引擎。
可选地,所述将每个接口的每个用户的异常访问次数与预设的预警规则进行匹配,包括如下步骤:
针对一接口,获取该接口所对应的预设的预警规则,所述预警规则包括该接口的各个异常代码所对应的异常访问次数范围;
判断每个用户的异常访问次数是否落入至少一异常代码所对应的异常访问次数范围;
如果是,则该用户对该接口的访问符合所对应的预警规则,并确定对应的用户ID和异常代码。
可选地,所述对该接口进行告警,包括如下步骤:
查找该接口所对应的工作人员的邮箱地址;
将该接口的符合预警规则的用户ID、异常代码和异常时间通过邮件发送至所对应的工作人员。
可选地,所述对于每个接口,根据所述接口埋点数据统计各个用户的异常访问次数之前,还包括如下步骤:
针对每个接口,判断所述接口是否处于预设的第一名单中;
如果,则不统计各个用户对处于第一名单中的接口的异常访问次数。
本发明实施例还提供一种接口预警系统,用于实现所述的接口预警方法,所述系统包括:
数据采集模块,用于获取接口埋点数据;
访问统计模块,用于对于每个接口,根据所述数据采集模块采集的接口埋点数据统计各个用户的异常访问次数;
规则匹配模块,用于将所述访问统计模块统计得到的每个接口的每个用户的异常访问次数与预设的预警规则进行匹配;
异常告警模块,用于当所述规则匹配模块检测到一用户对一接口的异常访问次数符合所对应的预警规则,对该接口进行告警。
本发明实施例还提供一种接口预警设备,包括处理器;存储器,其中存储有所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行所述的接口预警方法的步骤。
本发明实施例还提供一种计算机可读存储介质,用于存储程序,其特征在于,所述程序被执行时实现所述的接口预警方法的步骤。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
本发明的接口预警方法、系统、设备及存储介质具有如下有益效果:
本发明首先通过采集每个接口的埋点数据,然后根据所述接口埋点数据统计各个用户的异常访问次数,可以实现基于用户维度的接口数据统计,并且通过将每个接口的每个用户的异常访问次数与预设的预警规则进行匹配,可以实现基于用户维度的接口异常判定,并且在检测到单用户异常时及时进行告警,从而实时地发现并预警单用户的业务异常行为,以弥补现有监控系统中湮没单用户的业务异常行为的不足,提升用户使用体验。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显。
图1是本发明一实施例的接口预警方法的流程图;
图2是本发明一实施例的接口告警示意图;
图3是本发明一实施例的接口预警系统的结构示意图;
图4是本发明一实施例的接口预警系统的技术架构图;
图5是本发明一实施例的接口预警设备的结构示意图;
图6是本发明一实施例的计算机可读存储介质的结构示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。
此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
在服务平台中,对于业务级别的异常(往往是定义的各种各样的异常代码)的监控常常无法满足需求。这种在技术层面是一种正常的访问拒绝,但在业务层面的角度却往往是一种"异常":可能来源于产品流程缺憾或代码的漏洞。此外,现有的监控系统站在更高的维度,统计的也往往是全局层面的错误和异常。这种策略在集中到业务异常角度时是不足的,往往湮没单用户的异常。例如,一个业务错误发生了10次,不会引起监控指标的明显波动。若这些错误有一半是由一个用户触发,应该引起足够的关注和重视。结合大量的生产事件排查,发现了一些事件的共性问题:一个事件的形成,往往都是在用户做了多次尝试以后才走到繁琐的客户投诉流程。为了解决现有技术中的技术问题,本发明提供了一种接口预警方法,旨在实时地发现并预警单用户的业务异常行为,避免只能被动地接受用户报修。
如图1所示,在本发明一实施例中,所述接口预警方法包括如下步骤:
S100:获取接口埋点数据;
每一个服务端接口调用,都需要包含以下埋点:
用户的身份标识(UserId),应用服务的标识(AppId),接口名称(Action),异常代码(ErrorCode),请求产生时间和请求处理时间。例如,一个基本的埋点如下:
”UserID”:”0000001”,
”Action”:”OrderDetailSearch”,
”AppId”:”88888888”,
”ErrorCode”:”0”,
”RequestTime”:”2019-12-18T10:41:27.050+0800”,
”ResponseTime”:”2019-12-18T10:41:27.175+0800”,
”cat_client_appid”:”100011494”,
”orderid”:”11769730781”,
”ip”:”10.25.165.20”,
”IP”:”203.145.95.164”,
”messageID”:”921812-0a0e0dcb-437954-2236649”,
”@timestamp”:”1576636887176”
S200:对于每个接口,根据所述接口埋点数据统计各个用户的异常访问次数;即以用户为维度,统计在一个时间窗口内,单用户在一个应用接口上的业务异常触发次数,此处异常访问可以包括用户访问被拒绝,用户访问异常跳转等等预设的异常情况;
S300:将每个接口的每个用户的异常访问次数与预设的预警规则进行匹配;此处预警规则可以是针对于每个接口设定的不同的预警规则,也可以是多个接口设定的统一的预警规则;
S400:如果一用户对一接口的异常访问次数符合所对应的预警规则,则对该接口进行告警,将告警信息通过APP用户界面、邮件、信息等方式推送给负责该接口的业务服务的工作人员。
如果不存在符合预警规则的异常访问次数,则说明当前时刻未检测到需要告警的接口。
本发明的接口预警方法首先通过步骤S100采集每个接口的埋点数据,然后通过步骤S200根据所述接口埋点数据统计各个用户的异常访问次数,可以实现基于用户维度的接口数据统计,并且通过步骤S300将每个接口的每个用户的异常访问次数与预设的预警规则进行匹配,可以实现基于用户维度的接口异常判定,并且在检测到单用户异常时通过步骤S400及时进行告警,从而实时地发现并预警单用户的业务异常行为,以弥补现有监控系统中湮没单用户的业务异常行为的不足,提升用户使用体验。
考虑到旅游平台的核心应用服务每天产生的日志是海量的,对这些海量日志数据的实时分析充满了挑战。基于此,在该实施例中,所述获取接口埋点数据,包括获取预设时间段内的接口埋点数据,将所述接口埋点数据存储于Kafka消息队列中。Kafka是由Apache软件基金会开发的一个开源流处理平台,由Scala和Java编写。Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者在网站中的所有动作流数据。这些数据通常是由于吞吐量的要求而通过处理日志和日志聚合来解决。
进一步地,在该实施例中,采用计算引擎从所述Kafka消息队列中提取接口埋点数据,由所述计算引擎对于每个接口,根据所述接口埋点数据统计各个用户的异常访问次数,并将每个接口的每个用户的异常访问次数与预设的预警规则进行匹配。所述计算引擎可以采用近实时计算引擎或者实时计算引擎,提高数据处理速度,从而快速地识别单用户对接口的异常访问情况和及时告警。
在该实施例中,所述计算引擎可以采用Storm计算引擎、Spark计算引擎或Flink计算引擎。Storm是Twitter开源的分布式实时大数据处理框架,最早开源于github,从0.9.1版本之后,归于Apache社区,被业界称为实时版Hadoop,已经成为流计算中的主流和佼佼者。Spark是专为大规模数据处理而设计的快速通用的计算引擎,是一种与Hadoop相似的开源集群计算环境,Spark是一个通用引擎,可用它来完成各种各样的运算。Flink是由Apache软件基金会开发的开源流处理框架,其核心是用Java和Scala编写的分布式流数据流引擎。Flink以数据并行和流水线方式执行任意流数据程序,Flink的流水线运行时系统可以执行批处理和流处理程序。
在该实施例中,进一步地优选地,采用Flink计算引擎,其具有Exactly-Once的语义、健全的时间机制(事件时间、注入时间和处理时间)以及友好的API(应用程序编程接口),对滞后数据也有成熟的方案。在实际应用中,将具有接口埋点数据的业务日志按既定的埋点规范写入到Kafka消息队列,Flink计算引擎实时消费处理Kafka消息队列中的数据,聚合/转换/计算后,再经过配置的阈值规则处理,命中配置规则后触发相应的告警。
在该实施例中,可以对接口设置白名单模式,白名单模式可以指定关注的具体业务异常代码,并且白名单模式下接口的异常代码的预警规则可以由工作人员根据需要进行配置。所述步骤S300中,将每个接口的每个用户的异常访问次数与预设的预警规则进行匹配,包括如下步骤:
S310:针对一接口,获取该接口所对应的预设的预警规则,所述预警规则包括该接口的各个异常代码所对应的异常访问次数范围;
S320:判断每个用户的异常访问次数是否落入至少一异常代码所对应的异常访问次数范围;
S330:如果是,则该用户对该接口的访问符合所对应的预警规则,并确定对应的用户ID和异常代码。
S340:如果否,则说明当前未检测到需要告警的接口,无需告警。
所有对预警规则的配置可以方便配置和实时生效,从而方便工作人员根据业务需要随时调整预警规则。
在该实施例中,所述步骤S400中对该接口进行告警,包括如下步骤:
S410:查找该接口所对应的工作人员的邮箱地址;
S420:将该接口的符合预警规则的用户ID、异常代码和异常时间通过邮件发送至所对应的工作人员,工作人员可以第一时间快速了解发生告警的接口信息和异常访问信息。
如图2所示,为该实施例中发送告警邮件的示意图。通过邮件预警到服务所属的负责工作人员,方便技术人员及时介入排查。邮件内容会聚合触发告警的用户、客户端类型、服务名称、接口名称、预警的次数、预警的异常代码、事件时间、及快速触达公司日志系统的超链接。
在该实施例中,还可以设置黑名单模式,黑名单模式即为建立一个第一名单,对于第一名单中所有的接口的异常均忽略。具体地,所述步骤S100:获取接口埋点数据和步骤S200:对于每个接口,根据所述接口埋点数据统计各个用户的异常访问次数之间,还包括如下步骤:
针对每个接口,判断所述接口是否处于预设的第一名单中;
如果,则不统计各个用户对处于第一名单中的接口的异常访问次数。
第一名单中的接口也可以由业务工作人员根据需要添加和删除,实现接口监控策略的灵活配置。
如图3所示,本发明实施例还提供一种接口预警系统,用于实现所述的接口预警方法,所述系统包括:
数据采集模块M100,用于获取接口埋点数据;
访问统计模块M200,用于对于每个接口,根据所述数据采集模块采集的接口埋点数据统计各个用户的异常访问次数;
规则匹配模块M300,用于将所述访问统计模块统计得到的每个接口的每个用户的异常访问次数与预设的预警规则进行匹配;
异常告警模块M400,用于当所述规则匹配模块检测到一用户对一接口的异常访问次数符合所对应的预警规则,对该接口进行告警。
本发明的接口预警系统首先通过数据采集模块M100采集每个接口的埋点数据,然后由访问统计模块M200根据所述接口埋点数据统计各个用户的异常访问次数,可以实现基于用户维度的接口数据统计,并且由规则匹配模块M300将每个接口的每个用户的异常访问次数与预设的预警规则进行匹配,可以实现基于用户维度的接口异常判定,并且在检测到单用户异常时及时由异常告警模块M400进行告警,从而实时地发现并预警单用户的业务异常行为,以弥补现有监控系统中湮没单用户的业务异常行为的不足,提升用户使用体验。
在本发明的接口预警系统中,各个模块的功能可以采用上述接口预警方法中各个步骤的具体实施方式实现,例如,数据采集模块M100可以采用步骤S100的具体实施方式采集埋点数据,将埋点数据存储于Kafka消息队列,访问统计模块M200可以采用步骤S200的具体实施方式进行异常访问统计,例如采用计算引擎从Kafka消息队列中消费数据并进行数据统计,规则匹配模块M300可以采用步骤S300的具体实施方式进行规则匹配,例如采用计算引擎将统计数据与预设的预警规则进行匹配,并且可以设置白名单模式,采用上述步骤S310~S340实现白名单模式预警和预警规则配置,并且可以设置黑名单模式,在确定一个接口处于第一名单中时,对该接口的异常忽略不作处理,异常告警模块M400可以采用上述步骤S400的方式将异常信息通知到工作人员,例如采用如上述步骤S410和S420来采用邮件通知,此外,也可以通过应用程序用户界面、信息等方式进行告警。
如图4所示,为本发明一实施例的接口预警系统的技术架构图。其中包括用户动作最大失效限制实时监控APP J100、Flink计算引擎J200、配置中心J300和数据库J400。其中,配置中心基于QConfig、Qmq、Dal和Credis实现,但本发明不限于此,在其他可替代的实施方式中,也可以使用Apollo代替Qconfig,使用MyBatis代替Dal等。基于配置中心,工作人员可以根据业务需要对黑名单和白名单进行设置,例如在第一名单中添加或删除接口,在白名单中添加或修改业务异常代码所对应的预警规则等。数据库可以基于Kafka、MQ(MessageQueue,消息队列)、Redis(Remote Dictionary Server远程字典服务)、DB(Database,数据库)等实现,但本发明不限于此。
本发明实施例还提供一种接口预警设备,包括处理器;存储器,其中存储有所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行所述的接口预警方法的步骤。
所属技术领域的技术人员能够理解,本发明的各个方面可以实现为系统、方法或程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“平台”。
下面参照图5来描述根据本发明的这种实施方式的电子设备600。图5显示的电子设备600仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图5所示,电子设备600以通用计算设备的形式表现。电子设备600的组件可以包括但不限于:至少一个处理单元610、至少一个存储单元620、连接不同平台组件(包括存储单元620和处理单元610)的总线630、显示单元640等。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元610执行,使得所述处理单元610执行本说明书上述电子处方流转处理方法部分中描述的根据本发明各种示例性实施方式的步骤。例如,所述处理单元610可以执行如图1中所示的步骤。
所述存储单元620可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)6201和/或高速缓存存储单元6202,还可以进一步包括只读存储单元(ROM)6203。
所述存储单元620还可以包括具有一组(至少一个)程序模块6205的程序/实用工具6204,这样的程序模块6205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线630可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备600也可以与一个或多个外部设备700(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备600交互的设备通信,和/或与使得该电子设备600能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口650进行。并且,电子设备600还可以通过网络适配器660与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。网络适配器660可以通过总线630与电子设备600的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备600使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储平台等。
本发明的接口预警设备在其处理器执行所述接口预警方法时,首先通过采集每个接口的埋点数据,然后根据所述接口埋点数据统计各个用户的异常访问次数,可以实现基于用户维度的接口数据统计,并且通过将每个接口的每个用户的异常访问次数与预设的预警规则进行匹配,可以实现基于用户维度的接口异常判定,并且在检测到单用户异常时及时进行告警,从而实时地发现并预警单用户的业务异常行为,以弥补现有监控系统中湮没单用户的业务异常行为的不足,提升用户使用体验。
本发明实施例还提供一种计算机可读存储介质,用于存储程序,所述程序被执行时实现所述的接口预警方法的步骤。在一些可能的实施方式中,本发明的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述电子处方流转处理方法部分中描述的根据本发明各种示例性实施方式的步骤。
参考图6所示,描述了根据本发明的实施方式的用于实现上述方法的程序产品800,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
所述计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
本发明的计算机可读存储介质中的程序被执行以实现所述接口预警方法的步骤时,首先通过采集每个接口的埋点数据,然后根据所述接口埋点数据统计各个用户的异常访问次数,可以实现基于用户维度的接口数据统计,并且通过将每个接口的每个用户的异常访问次数与预设的预警规则进行匹配,可以实现基于用户维度的接口异常判定,并且在检测到单用户异常时及时进行告警,从而实时地发现并预警单用户的业务异常行为,以弥补现有监控系统中湮没单用户的业务异常行为的不足,提升用户使用体验。
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。
Claims (8)
1.一种接口预警方法,其特征在于,包括如下步骤:
获取接口埋点数据;
对于每个接口,根据所述接口埋点数据统计各个用户的异常访问次数;
将每个接口的每个用户的异常访问次数与预设的预警规则进行匹配;
如果一用户对一接口的异常访问次数符合所对应的预警规则,则对该接口进行告警;
所述将每个接口的每个用户的异常访问次数与预设的预警规则进行匹配,包括如下步骤:
针对一接口,获取该接口所对应的预设的预警规则,所述预警规则包括该接口的各个异常代码所对应的异常访问次数范围;
判断每个用户的异常访问次数是否落入至少一异常代码所对应的异常访问次数范围;
如果是,则该用户对该接口的访问符合所对应的预警规则,并确定对应的用户ID和异常代码;
所述对该接口进行告警,包括如下步骤:
查找该接口所对应的工作人员的邮箱地址;
将该接口的符合预警规则的用户ID、异常代码和异常时间通过邮件发送至所对应的工作人员。
2.根据权利要求1所述的接口预警方法,其特征在于,所述获取接口埋点数据,包括获取预设时间段内的接口埋点数据,将所述接口埋点数据存储于Kafka消息队列中。
3.根据权利要求2所述的接口预警方法,其特征在于,采用计算引擎从所述Kafka消息队列中提取接口埋点数据,由所述计算引擎对于每个接口,根据所述接口埋点数据统计各个用户的异常访问次数,并将每个接口的每个用户的异常访问次数与预设的预警规则进行匹配。
4.根据权利要求3所述的接口预警方法,其特征在于,所述计算引擎为Storm计算引擎、Spark计算引擎或Flink计算引擎。
5.根据权利要求1所述的接口预警方法,其特征在于,所述对于每个接口,根据所述接口埋点数据统计各个用户的异常访问次数之前,还包括如下步骤:
针对每个接口,判断所述接口是否处于预设的第一名单中;
如果,则不统计各个用户对处于第一名单中的接口的异常访问次数。
6.一种接口预警系统,其特征在于,用于实现权利要求1至5中任一项所述的接口预警方法,所述系统包括:
数据采集模块,用于获取接口埋点数据;
访问统计模块,用于对于每个接口,根据所述数据采集模块采集的接口埋点数据统计各个用户的异常访问次数;
规则匹配模块,用于将所述访问统计模块统计得到的每个接口的每个用户的异常访问次数与预设的预警规则进行匹配;
异常告警模块,用于当所述规则匹配模块检测到一用户对一接口的异常访问次数符合所对应的预警规则,对该接口进行告警。
7.一种接口预警设备,其特征在于,包括:
处理器;
存储器,其中存储有所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1至5中任一项所述的接口预警方法的步骤。
8.一种计算机可读存储介质,用于存储程序,其特征在于,所述程序被执行时实现权利要求1至5中任一项所述的接口预警方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010079505.7A CN111274094B (zh) | 2020-02-04 | 2020-02-04 | 接口预警方法、系统、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010079505.7A CN111274094B (zh) | 2020-02-04 | 2020-02-04 | 接口预警方法、系统、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111274094A CN111274094A (zh) | 2020-06-12 |
CN111274094B true CN111274094B (zh) | 2023-09-26 |
Family
ID=71001261
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010079505.7A Active CN111274094B (zh) | 2020-02-04 | 2020-02-04 | 接口预警方法、系统、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111274094B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112422445A (zh) * | 2020-10-10 | 2021-02-26 | 四川新网银行股份有限公司 | 一种基于Kafka的埋点数据实时采集计算和存储的方法 |
CN113190415A (zh) * | 2021-05-27 | 2021-07-30 | 北京京东拓先科技有限公司 | 互联网医院系统监控方法、设备、存储介质及程序产品 |
CN113536319B (zh) * | 2021-07-07 | 2022-12-13 | 上海浦东发展银行股份有限公司 | 接口风险预测方法、装置、计算机设备和存储介质 |
CN113920698B (zh) * | 2021-11-25 | 2023-08-04 | 杭州安恒信息技术股份有限公司 | 一种接口异常调用的预警方法、装置、设备及介质 |
CN114445088A (zh) * | 2022-01-13 | 2022-05-06 | 内蒙古蒙商消费金融股份有限公司 | 一种欺诈行为的判定方法、装置、电子设备和存储介质 |
CN115333919B (zh) * | 2022-08-09 | 2023-11-07 | 贵州多彩新媒体股份有限公司 | 一种旁挂式信息安全监测方法 |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103699966A (zh) * | 2013-04-12 | 2014-04-02 | 国家电网公司 | 基于用户需求的多维度、全过程数据管控系统及管控方法 |
WO2017113677A1 (zh) * | 2015-12-28 | 2017-07-06 | 乐视控股(北京)有限公司 | 处理用户行为数据的方法和系统 |
CN107438079A (zh) * | 2017-08-18 | 2017-12-05 | 杭州安恒信息技术有限公司 | 一种网站未知异常行为的检测方法 |
CN107578263A (zh) * | 2017-07-21 | 2018-01-12 | 北京奇艺世纪科技有限公司 | 一种广告异常访问的检测方法、装置和电子设备 |
CN107678907A (zh) * | 2017-05-22 | 2018-02-09 | 平安科技(深圳)有限公司 | 数据库业务逻辑监控方法、系统、及存储介质 |
CN108446209A (zh) * | 2018-02-02 | 2018-08-24 | 珠海金山网络游戏科技有限公司 | 一种实时智能预警客户端性能数据的方法及装置 |
CN109428779A (zh) * | 2017-08-29 | 2019-03-05 | 武汉安天信息技术有限责任公司 | 一种分布式业务的监控告警方法及装置 |
CN109558299A (zh) * | 2018-11-26 | 2019-04-02 | 武汉掌游科技有限公司 | 业务监控与预警的方法、装置、设备及存储介质 |
CN109743295A (zh) * | 2018-12-13 | 2019-05-10 | 平安科技(深圳)有限公司 | 访问阈值调整方法、装置、计算机设备及存储介质 |
CN109960635A (zh) * | 2019-04-18 | 2019-07-02 | 江苏满运软件科技有限公司 | 实时计算平台的监控和报警方法、系统、设备及存储介质 |
CN110109798A (zh) * | 2019-03-19 | 2019-08-09 | 中国平安人寿保险股份有限公司 | 应用程序异常处理方法、装置、计算机设备及存储介质 |
CN110401636A (zh) * | 2019-06-28 | 2019-11-01 | 苏州浪潮智能科技有限公司 | 一种监管异常访问的大数据风控方法和装置 |
CN110460611A (zh) * | 2019-08-16 | 2019-11-15 | 国家计算机网络与信息安全管理中心 | 基于机器学习的全流量攻击检测技术 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI562013B (en) * | 2015-07-06 | 2016-12-11 | Wistron Corp | Method, system and apparatus for predicting abnormality |
-
2020
- 2020-02-04 CN CN202010079505.7A patent/CN111274094B/zh active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103699966A (zh) * | 2013-04-12 | 2014-04-02 | 国家电网公司 | 基于用户需求的多维度、全过程数据管控系统及管控方法 |
WO2017113677A1 (zh) * | 2015-12-28 | 2017-07-06 | 乐视控股(北京)有限公司 | 处理用户行为数据的方法和系统 |
CN107678907A (zh) * | 2017-05-22 | 2018-02-09 | 平安科技(深圳)有限公司 | 数据库业务逻辑监控方法、系统、及存储介质 |
CN107578263A (zh) * | 2017-07-21 | 2018-01-12 | 北京奇艺世纪科技有限公司 | 一种广告异常访问的检测方法、装置和电子设备 |
CN107438079A (zh) * | 2017-08-18 | 2017-12-05 | 杭州安恒信息技术有限公司 | 一种网站未知异常行为的检测方法 |
CN109428779A (zh) * | 2017-08-29 | 2019-03-05 | 武汉安天信息技术有限责任公司 | 一种分布式业务的监控告警方法及装置 |
CN108446209A (zh) * | 2018-02-02 | 2018-08-24 | 珠海金山网络游戏科技有限公司 | 一种实时智能预警客户端性能数据的方法及装置 |
CN109558299A (zh) * | 2018-11-26 | 2019-04-02 | 武汉掌游科技有限公司 | 业务监控与预警的方法、装置、设备及存储介质 |
CN109743295A (zh) * | 2018-12-13 | 2019-05-10 | 平安科技(深圳)有限公司 | 访问阈值调整方法、装置、计算机设备及存储介质 |
CN110109798A (zh) * | 2019-03-19 | 2019-08-09 | 中国平安人寿保险股份有限公司 | 应用程序异常处理方法、装置、计算机设备及存储介质 |
CN109960635A (zh) * | 2019-04-18 | 2019-07-02 | 江苏满运软件科技有限公司 | 实时计算平台的监控和报警方法、系统、设备及存储介质 |
CN110401636A (zh) * | 2019-06-28 | 2019-11-01 | 苏州浪潮智能科技有限公司 | 一种监管异常访问的大数据风控方法和装置 |
CN110460611A (zh) * | 2019-08-16 | 2019-11-15 | 国家计算机网络与信息安全管理中心 | 基于机器学习的全流量攻击检测技术 |
Non-Patent Citations (1)
Title |
---|
基于大数据的用户行为轨迹及预警系统的研究;孟威;董凯;;网络空间安全(12);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN111274094A (zh) | 2020-06-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111274094B (zh) | 接口预警方法、系统、设备及存储介质 | |
CN107291911B (zh) | 一种异常检测方法和装置 | |
CN108989150B (zh) | 一种登录异常检测方法及装置 | |
CN102937930B (zh) | 应用程序监控系统及方法 | |
CN111459782B (zh) | 监控业务系统的方法、装置、云平台系统和服务器 | |
CN110830438A (zh) | 一种异常日志告警方法、装置及电子设备 | |
CN113746703A (zh) | 一种异常链路监控方法、系统和装置 | |
CN110955890B (zh) | 恶意批量访问行为的检测方法、装置和计算机存储介质 | |
CN117312098B (zh) | 一种日志异常告警方法及装置 | |
CN112256548B (zh) | 异常数据的监听方法、装置、服务器及存储介质 | |
US11212298B2 (en) | Automated onboarding of detections for security operations center monitoring | |
US11829425B1 (en) | Social warning system | |
CN103795585A (zh) | 基于黑名单的网站监控方法与系统 | |
CN115643200A (zh) | 一种异常检测方法、装置、电子设备及介质 | |
CN113900905A (zh) | 日志监控方法、装置、电子设备及存储介质 | |
CN110677271B (zh) | 基于elk的大数据告警方法、装置、设备及存储介质 | |
CN113656247A (zh) | 一种服务监控方法、装置、电子设备及可读存储介质 | |
CN113596051B (zh) | 检测方法、检测装置、电子设备、介质和计算机程序 | |
CN115499292B (zh) | 一种告警方法、装置、设备及存储介质 | |
CN113806196B (zh) | 根因分析方法及系统 | |
US20240036963A1 (en) | Multi-contextual anomaly detection | |
CN117076267A (zh) | 基于告警自动诊断的监控方法、装置、电子设备及介质 | |
CN115988198A (zh) | 一种基于大数据的前端感知设备的巡检方法及系统 | |
CN116185964A (zh) | 日志处理方法、装置、电子设备和存储介质 | |
CN116340108A (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 |