掌桥专利:专业的专利平台
掌桥专利
首页

监控告警方法、装置和电子设备

文献发布时间:2023-06-19 18:30:43


监控告警方法、装置和电子设备

【技术领域】

本说明书实施例涉及互联网技术领域,尤其涉及一种监控告警方法、装置和电子设备。

【背景技术】

现有相关技术中,第三方支付平台会监控自身提供服务的情况,以便及时发现错误,处理错误。但是,如果每监测到一次错误码,就进行一次告警,会导致告警的噪音较大,造成噪音污染,因此一般会设置当某一个错误在5分钟内监测到的次数大于2时才会进行告警。

但是在某些场景,例如券核销场景下,如果监测到了参数非法的错误码,由于告警策略为在5分钟内同一错误码监测到的次数大于2时进行告警,这样就会导致首次监测到参数非法的错误码这一事件不会触发告警,进而可能导致用户资产损失和用户投诉。

因此需要提供一种基于服务维度的监控告警方案,以实现对历史上首次出现的错误码进行告警。

【发明内容】

本说明书实施例提供了一种监控告警方法、装置和电子设备,以实现对历史上首次出现的错误码进行预警,并在预警被确认为有效告警之后,才进行告警,既可避免用户资产损失和用户投诉,又可以避免频繁告警导致的告警噪音污染。

第一方面,本说明书实施例提供一种监控告警方法,包括:从接口处获取接口请求和接口返回值;其中,所述接口包括被监控的应用与监控系统之间的接口;根据所述接口请求获取监控信息,以及根据所述接口返回值获取错误码;其中,所述监控信息包括以下之一或组合:所述被监控的应用的应用名、所述应用对应的租户和服务;判断缓存中是否存在与所述监控信息和所述错误码相匹配的数据;如果不存在,则进行预警通知;如果接收到所述预警通知为有效告警的指示,则进行告警处理,并将所述错误码标注为零容忍错误码。

上述监控告警方法中,从接口处获取接口请求和接口返回值之后,根据上述接口请求获取监控信息,以及根据上述接口返回值获取错误码,然后判断缓存中是否存在与上述监控信息和上述错误码相匹配的数据,如果缓存中不存在与上述监控信息和上述错误码相匹配的数据,则进行预警通知,如果接收到上述预警通知为有效告警的指示,则进行告警处理,并将上述错误码标注为零容忍错误码,从而可以实现对历史上首次出现的错误码进行预警,并在预警被确认为有效告警之后,才进行告警,这样既可避免用户资产损失和用户投诉,又可以避免频繁告警导致的告警噪音污染。

其中一种可能的实现方式中,所述判断缓存中是否存在与所述监控信息和所述错误码相匹配的数据之后,还包括:如果所述缓存中存在与所述监控信息和错误码相匹配的数据,则当所述错误码为零容忍错误码时,进行告警处理。

其中一种可能的实现方式中,所述进行预警通知之后,还包括:如果接收到所述预警通知不是有效告警的指示,则将所述错误码标注为非零容忍错误码。

其中一种可能的实现方式中,所述根据所述接口请求获取监控信息,以及根据所述接口返回值获取错误码之后,还包括:判断数据库中是否存在与所述监控信息和所述错误码相匹配的数据;如果不存在,则将所述监控信息和所述错误码分别存入所述数据库和所述缓存。

其中一种可能的实现方式中,所述判断缓存中是否存在与所述监控信息和所述错误码相匹配的数据之后,还包括:如果所述数据库中存在与所述监控信息和所述错误码相匹配的数据,则将所述数据库和所述缓存中保存的所述错误码的数量增加预定数值。

第二方面,本说明书实施例提供一种监控告警装置,包括:获取模块,用于从接口处获取接口请求和接口返回值;其中,所述接口包括被监控的应用与监控系统之间的接口;以及根据所述接口请求获取监控信息,根据所述接口返回值获取错误码;其中,所述监控信息包括以下之一或组合:所述被监控的应用的应用名、所述应用对应的租户和服务;判断模块,用于判断缓存中是否存在与所述监控信息和所述错误码相匹配的数据;预警模块,用于当所述缓存中不存在与所述监控信息和所述错误码相匹配的数据时,进行预警通知;告警模块,用于当接收到所述预警通知为有效告警的指示时,进行告警处理,并将所述错误码标注为零容忍错误码。

其中一种可能的实现方式中,所述告警模块,还用于当所述缓存中存在与所述监控信息和错误码相匹配的数据,并且所述错误码为零容忍错误码时,进行告警处理。

其中一种可能的实现方式中,所述装置还包括:标注模块,用于在所述预警模块进行预警通知之后,如果接收到所述预警通知不是有效告警的指示,则将所述错误码标注为非零容忍错误码。

其中一种可能的实现方式中,所述装置还包括:保存模块;所述判断模块,还用于判断数据库中是否存在与所述监控信息和所述错误码相匹配的数据;所述保存模块,用于当数据库中不存在与所述监控信息和所述错误码相匹配的数据时,将所述监控信息和所述错误码分别存入所述数据库和所述缓存。

其中一种可能的实现方式中,所述保存模块,还用于在所述判断模块判断数据库中是否存在与所述监控信息和所述错误码相匹配的数据之后,当所述数据库中存在与所述监控信息和所述错误码相匹配的数据时,将所述数据库和所述缓存中保存的所述错误码的数量增加预定数值。

第三方面,本说明书实施例提供一种电子设备,包括:至少一个处理器;以及与所述处理器通信连接的至少一个存储器,其中:所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令能够执行第一方面提供的方法。

第四方面,本说明书实施例提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行第一方面提供的方法。

应当理解的是,本说明书实施例的第二~四方面与本说明书实施例的第一方面的技术方案一致,各方面及对应的可行实施方式所取得的有益效果相似,不再赘述。

【附图说明】

为了更清楚地说明本说明书实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。

图1为本说明书一个实施例提供的监控告警方法的流程图;

图2为本说明书另一个实施例提供的监控告警方法的实施例;

图3为本说明书一个实施例提供的监控告警装置的结构示意图;

图4为本说明书另一个实施例提供的监控告警装置的结构示意图;

图5为本说明书一个实施例提供的电子设备的结构示意图。

【具体实施方式】

为了更好的理解本说明书的技术方案,下面结合附图对本说明书实施例进行详细描述。

应当明确,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本说明书保护的范围。

在本说明书实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书。在本说明书实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。

现有相关技术提供的一种监控告警方法中,通过监控平台配置应用名+租户+服务+错误码,然后再在平台上配置错误码的黑名单,并将错误码标识为零容忍错误码。

但是这种方案强依赖开发日志的打印,必须有租户+服务+错误码,才能在监控平台上配置上述精细化监控;并且这种方案没有历史基线刻画的能力,对于首次出现的错误码不会自动进行预警。

基于以上问题,本说明书实施例提出一种监控告警方法,通过对应用名、租户和/或服务,以及错误码进行精细化监控,可以实现对历史上首次出现的错误码进行预警,并在预警被确认为有效告警之后,才进行告警,既可避免用户资产损失和用户投诉,又可以避免频繁告警导致的告警噪音污染。

图1为本说明书一个实施例提供的监控告警方法的流程图,上述监控告警方法可以应用于服务器,该服务器可以对应用进行监控,具体来说,上述服务器上可以安装监控系统。

如图1所示,上述监控告警方法可以包括:

步骤102,从接口处获取接口请求和接口返回值。

其中,上述接口包括被监控的应用与监控系统之间的接口;接口请求可以为从上述接口获取的由被监控的应用发出的请求,接口返回值可以为从上述接口获取的向被监控的应用发送的针对接口请求的返回值。

具体地,可以通过面向切面编程(aspect oriented programming,AOP)切面方式在接口处拦截接口请求和接口返回值。

步骤104,根据上述接口请求获取监控信息,以及根据上述接口返回值获取错误码。

其中,上述监控信息可以包括以下之一或组合:被监控的应用的应用名、上述应用对应的租户和服务。本实施例中,上述服务可以为接口的名称。

具体地,根据上述接口请求获取监控信息可以为:利用切面类的逻辑通过上下文获取上述监控信息。

步骤106,判断缓存中是否存在与上述监控信息和上述错误码相匹配的数据。然后执行步骤108或步骤112。

步骤108,如果缓存中不存在与上述监控信息和上述错误码相匹配的数据,则进行预警通知。然后执行步骤110或步骤114。

具体地,在确定缓存中不存在与上述监控信息和上述错误码相匹配的数据之后,可以调用超文本传输协议(hyper text transfer protocol,HTTP)进行预警通知。

步骤110,如果接收到上述预警通知为有效告警的指示,则进行告警处理,并将上述错误码标注为零容忍错误码。

步骤112,如果上述缓存中存在与上述监控信息和错误码相匹配的数据,则当上述错误码为零容忍错误码时,进行告警处理。

具体地,如果缓存中存在与上述监控信息和错误码相匹配的数据,说明该错误码不是首次出现,历史上已经存在这样的数据,这样就可以根据缓存中错误码的标注,来确定上述错误码是否为零容忍错误码,如果是零容忍错误码,则进行告警处理。如果上述错误码不是零容忍错误码,则可以根据预先设定好的告警策略进行告警,在此不再赘述。

步骤114,如果接收到上述预警通知不是有效告警的指示,则将上述错误码标注为非零容忍错误码。

上述监控告警方法中,从接口处获取接口请求和接口返回值之后,根据上述接口请求获取监控信息,以及根据上述接口返回值获取错误码,然后判断缓存中是否存在与上述监控信息和上述错误码相匹配的数据,如果缓存中不存在与上述监控信息和上述错误码相匹配的数据,则进行预警通知,如果接收到上述预警通知为有效告警的指示,则进行告警处理,并将上述错误码标注为零容忍错误码,从而可以实现对历史上首次出现的错误码进行预警,并在预警被确认为有效告警之后,才进行告警,这样既可避免用户资产损失和用户投诉,又可以避免频繁告警导致的告警噪音污染。

图2为本说明书另一个实施例提供的监控告警方法的实施例,如图2所示,本说明书图1所示实施例中,步骤104之后,还可以包括:

步骤202,判断数据库中是否存在与上述监控信息和上述错误码相匹配的数据。然后执行步骤204或步骤206。

步骤204,如果数据库中不存在与上述监控信息和上述错误码相匹配的数据,则将上述监控信息和上述错误码分别存入数据库和缓存。

步骤206,如果数据库中存在与上述监控信息和上述错误码相匹配的数据,则将数据库和缓存中保存的上述错误码的数量增加预定数值。

其中,上述预定数值可以在具体实现时,根据系统性能和/或实现需求等确定,本实施例对上述预定数值的大小不作限定,举例来说,上述预定数值可以为1。

本说明书实施例提供的监控告警方法通过AOP切面方式自动地获取监控信息和错误码,避免了对开发日志的强依赖,并且减少了人为配置监控的工作量;并且通过对历史上首次出现的错误码进行预警通知,并在预警被确认为有效告警之后,进行告警,实现了监控策略的自动部署,减少了人为配置黑名单的成本。另外,通过对有效告警建立闭环策略,实现了告警加监控的深度绑定,进一步促进了监控策略的自动部署。

上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。

图3为本说明书一个实施例提供的监控告警装置的结构示意图,如图3所示,上述监控告警装置可以包括:获取模块31、判断模块32、预警模块33和告警模块34;

获取模块31,用于从接口处获取接口请求和接口返回值;其中,上述接口包括被监控的应用与监控系统之间的接口;以及根据上述接口请求获取监控信息,根据上述接口返回值获取错误码;其中,上述监控信息包括以下之一或组合:被监控的应用的应用名、上述应用对应的租户和服务;

判断模块32,用于判断缓存中是否存在与上述监控信息和上述错误码相匹配的数据;

预警模块33,用于当缓存中不存在与上述监控信息和上述错误码相匹配的数据时,进行预警通知;

告警模块34,用于当接收到上述预警通知为有效告警的指示时,进行告警处理,并将上述错误码标注为零容忍错误码。

图3所示实施例提供的监控告警装置可用于执行本说明书图1所示方法实施例的技术方案,其实现原理和技术效果可以进一步参考方法实施例中的相关描述。

图4为本说明书另一个实施例提供的监控告警装置的结构示意图,与图3所示的监控告警装置相比,图4所示的监控告警装置中,告警模块34,还用于当上述缓存中存在与上述监控信息和错误码相匹配的数据,并且上述错误码为零容忍错误码时,进行告警处理。

进一步地,上述监控告警装置中还可以包括:标注模块35;

标注模块35,用于在预警模块33进行预警通知之后,如果接收到上述预警通知不是有效告警的指示,则将上述错误码标注为非零容忍错误码。

进一步地,上述监控告警装置中还可以包括:保存模块36;

判断模块32,还用于判断数据库中是否存在与上述监控信息和上述错误码相匹配的数据;

保存模块36,用于当数据库中不存在与上述监控信息和上述错误码相匹配的数据时,将上述监控信息和上述错误码分别存入数据库和缓存。

进一步地,保存模块36,还用于在判断模块32判断数据库中是否存在与上述监控信息和上述错误码相匹配的数据之后,当数据库中存在与上述监控信息和上述错误码相匹配的数据时,将数据库和缓存中保存的上述错误码的数量增加预定数值。

图4所示实施例提供的监控告警装置可用于执行本说明书图1~图2所示方法实施例的技术方案,其实现原理和技术效果可以进一步参考方法实施例中的相关描述。

图5为本说明书一个实施例提供的电子设备的结构示意图,如图5所示,上述电子设备可以包括至少一个处理器;以及与上述处理器通信连接的至少一个存储器,其中:存储器存储有可被处理器执行的程序指令,上述处理器调用上述程序指令能够执行本说明书图1~图2所示实施例提供的监控告警方法。

其中,上述电子设备可以为服务器,例如:可以对应用进行监控的服务器,本实施例对上述电子设备的形式不作限定。具体实现时,上述服务器中可以安装监控系统,另外,上述服务器可以设置在云端。

图5示出了适于用来实现本说明书实施方式的示例性电子设备的框图。图5显示的电子设备仅仅是一个示例,不应对本说明书实施例的功能和使用范围带来任何限制。

如图5所示,电子设备以通用计算设备的形式表现。电子设备的组件可以包括但不限于:一个或者多个处理器410,通信接口420,存储器430,以及连接不同组件(包括存储器430、通信接口420和处理器410)的通信总线440。

通信总线440表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,或者使用多种总线结构中的任意总线结构的局域总线。举例来说,通信总线440可以包括但不限于工业标准体系结构(industry standardarchitecture,ISA)总线,微通道体系结构(micro channel architecture,MCA)总线,增强型ISA总线、视频电子标准协会(video electronics standards association,VESA)局域总线以及外围组件互连(peripheral component interconnection,PCI)总线。

电子设备典型地包括多种计算机系统可读介质。这些介质可以是任何能够被电子设备访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。

存储器430可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(random access memory,RAM)和/或高速缓存存储器。存储器430可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本说明书图1~图2所示实施例的功能。

具有一组(至少一个)程序模块的程序/实用工具,可以存储在存储器430中,这样的程序模块包括——但不限于——操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块通常执行本说明书图1~图2所描述的实施例中的功能和/或方法。

处理器410通过运行存储在存储器430中的程序,从而执行各种功能应用以及数据处理,例如实现本说明书图1~图2所示实施例提供的监控告警方法。

本说明书实施例提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行本说明书图1~图2所示实施例提供的监控告警方法。

上述非暂态计算机可读存储介质可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只DD223154I

读存储器(read only memory,ROM)、可擦式可编程只读存储器(erasableprogrammable read only memory,EPROM)或闪存、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。

计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。

计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、电线、光缆、射频(radio frequency,RF)等等,或者上述的任意合适的组合。

可以以一种或多种程序设计语言或其组合来编写用于执行本说明书操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(localarea network,LAN)或广域网(wide area network,WAN)连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。

上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。

在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本说明书的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。

此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本说明书的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。

流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本说明书的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本说明书的实施例所属技术领域的技术人员所理解。

取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。

需要说明的是,本说明书实施例中所涉及的终端可以包括但不限于个人计算机(personal computer,PC)、个人数字助理(personal digital assistant,PDA)、无线手持设备、平板电脑(tablet computer)、手机、MP3播放器、MP4播放器等。

在本说明书所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

另外,在本说明书各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。

上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机装置(可以是个人计算机,服务器,或者网络装置等)或处理器(processor)执行本说明书各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM)、随机存取存储器(RAM)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述仅为本说明书的较佳实施例而已,并不用以限制本说明书,凡在本说明书的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本说明书保护的范围之内。

相关技术
  • 可弯曲电子设备、可弯曲电子设备的控制方法、装置及电子设备
  • 一种跨网络跨平台监控告警管理装置及方法
  • 一种电子设备的输入方法、输入装置及电子设备
  • 电子设备的显示控制方法、装置、电子设备和存储介质
  • 电子设备端口类型检测方法、装置、检测电路及电子设备
  • 监控告警策略配置方法及装置、监控告警方法及装置
  • 监控告警策略配置方法及装置、监控告警方法及装置
技术分类

06120115596430