一种监控方法和监控装置的制造方法

文档序号:10690846阅读:248来源:国知局
一种监控方法和监控装置的制造方法
【专利摘要】本文公布一种监控方法和监控装置,该方法包括:获取需要监控的应用的接口的当前返回值;判断获得的需要监控的应用的接口的当前返回值与该应用的该接口的预期返回值是否相同;当判断出获得的需要监控的应用的接口的当前返回值与该应用的该接口的预期返回值不同时,触发报警流程。本发明实施例实现了对应用的状态进行监控,从而提高了应用服务器的高可用性。
【专利说明】
_种监控方法和监控装置
技术领域
[0001]本发明实施例涉及但不限于智能终端技术,尤指一种监控方法和监控装置。
【背景技术】
[0002]随着互联网行业的不断发展,应用服务器的高可用性(High Availability)变得越来越重要。高可用性通常用来描述一个系统(应用服务器的系统),经过一些设计,减少停止服务的时间,从而使其服务保持高度的可使用性。确保高可用性,主要从系统架构、容灾性、监控报警、故障转移这四个方面来进行保障的。
[0003]其中,监控报警是指对在线服务(即当前在使用的服务)、非服务的在线服务器(SP处于开启状态的服务器,但是它并不直接提供服务)和相应的进程进行状态检测,当出现宕机或者某项服务进程僵死之后,能够在尽量短的时间获得这个信息,然后通过报警系统将信息发送给管理员或运维人员。
[0004]但是,目前还没有通过监控应用的状态来提高应用服务器的高可用性的方案,因此如何通过监控应用的状态来监控应用服务器来提高应用服务器的高可用性成为一个亟需解决的问题。

【发明内容】

[0005]本申请提供了一种监控方法和监控装置,能够实现对应用的状态进行监控,从而提高应用服务器的高可用性。
[0006]为了达到本申请目的,本发明实施例提供了一种监控方法,包括:获取需要监控的应用的接口的当前返回值;
[0007]判断获得的需要监控的应用的接口的当前返回值与该应用的该接口的预期返回值是否相同;
[0008]当判断出获得的需要监控的应用的接口的当前返回值与该应用的该接口的预期返回值不同时,触发报警流程。
[0009]可选地,该方法之前还包括:预先设置需要监控的应用的一个或一个以上接口的访问地址、请求参数、间隔时长和预期返回值。
[0010]可选地,在所述设置需要监控的应用的一个或一个以上接口的访问地址、请求参数、间隔时长和预期返回值之后,该方法还包括:
[0011]创建并启动定时器;
[0012]当定时器的计时时长达到预先设置的需要监控的所述应用的所述接口的间隔时长时,执行所述获取需要监控的应用的接口的当前返回值的步骤。
[0013 ]可选地,所述获取需要监控的应用的接口的当前返回值包括:
[0014]获取预先设置的所述接口的访问地址和请求参数;
[0015]向获得的所述接口的访问地址发送携带有所述请求参数的请求;
[0016]接收与所述请求对应的返回值并将接收到的与所述请求对应的返回值作为需要监控的所述应用的所述接口的当前返回值。
[0017]可选地,所述触发报警流程包括:通知管理员所述应用的所述接口存在故障。
[0018]可选地,通过声音、短信、即时通信和/或邮件通知所述管理员所述应用的所述接口存在故障。
[0019]本发明实施例还提供了一种监控装置,包括:获取模块、判断模块和触发模块;其中,
[0020]获取模块,用于获取需要监控的应用的接口的当前返回值;
[0021]判断模块,用于判断获得的需要监控的应用的接口的当前返回值与该应用的该接口的预期返回值是否相同;当判断出获得的需要监控的应用的接口的当前返回值与该应用的该接口的预期返回值不同时,通知触发模块;
[0022]触发模块,用于接收到来自判断模块的通知,触发报警流程。
[0023]可选地,该装置还包括设置模块,用于预先设置需要监控的应用的一个或一个以上接口的访问地址、请求参数、间隔时长和预期返回值。
[0024]可选地,该装置还包括定时模块,用于创建并启动定时器;当定时器的计时时长达到预先设置的需要监控的所述应用的所述接口的间隔时长时,通知所述获取模块执行获取需要监控的应用的接口的当前返回值的步骤。
[0025]可选地,所述获取模块,具体用于:
[0026]获取预先设置的所述接口的访问地址和请求参数;
[0027]向获得的所述接口的访问地址发送携带有所述请求参数的请求;
[0028]接收与所述请求对应的返回值并将接收到的与所述请求对应的返回值作为需要监控的所述应用的所述接口的当前返回值。
[0029]可选地,所述触发模块,具体用于:通知管理员所述应用的所述接口存在故障。
[0030]可选地,所述触发模块通过声音、短信、即时通信和/或邮件通知所述管理员所述应用的所述接口存在故障。
[0031 ]本发明实施例包括:获取需要监控的应用的接口的当前返回值;判断获得的需要监控的应用的接口的当前返回值与该应用的该接口的预期返回值是否相同;当判断出获得的需要监控的应用的接口的当前返回值与该应用的该接口的预期返回值不同时,触发报警流程。本发明实施例实现了对应用的状态进行监控,从而提高了应用服务器的高可用性。
【附图说明】
[0032]此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
[0033]图1为本发明监控方法的流程图;
[0034]图2为本发明监控方法的实施例的流程图;
[0035]图3为本发明监控装置的结构示意图;
[0036]图4为本发明应用服务器的结构示意图。
【具体实施方式】
[0037]为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
[0038]在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明的说明,其本身并没有特定的意义。因此,"模块"与"部件"可以混合地使用。
[0039]图1为本发明监控方法的流程图,如图1所示,包括:
[0040]步骤101:获取需要监控的应用的接口的当前返回值。
[0041]可选地,该方法之前还包括:预先设置需要监控的应用的一个或一个以上接口的访问地址、请求参数、间隔时长和预期返回值。可选地,将设置后的需要监控的同一应用的一个或一个以上接口的访问地址、请求参数、间隔时长和预期返回值以表格的形式进行存储。可选地,将上述表格存储在预先创建的第一文件中或者第一数据库中。可选地,该方法还包括:管理员可以根据自身经验对已存储的表格进行修改。如,增加新的接口的访问地址、请求参数、间隔时长和预期返回值,或者删除已存储的某一接口的访问地址、请求参数、间隔时长和预期返回值等。
[0042]其中,同一应用的一个或一个以上接口的间隔时长可以设置为相同的时长,也可以设置为不同的时长。其中,管理员可以根据自身的经验设置一个或一个以上接口的间隔时长,假如应用A有5个接口,分别是接口 1、接口 2、接口 3、接口4和接口 5,其中,管理员认为接口 I非常重要(即接口 I发生故障后,可以会导致整个系统宕机或崩溃),认为接口 5不重要,那么可以设置接口 I的间隔时长是I分钟,也可以设置接口 I的间隔时长是30秒,可以设置接口 2的间隔时长是3分钟,可以设置接口 3的间隔时长是5分钟,可以设置接口 4的间隔时长是3分钟,可以设置接口 5的间隔时长是30分钟。
[0043]其中,同一应用的一个或一个以上接口的请求参数与接口本身有关。其中,请求参数包括参数名称和与参数名称对应的值;参数名称与接口一对一对应(即接口与接口的参数名称一一对应,一旦确定了接口,其参数名称也是唯一确定的);与参数名称对应的值由应用服务器的运维人员(管理员)进行设定。需要说明的是,关于如何根据接口设置与其对应的请求参数,属于本领域技术人员所熟知的惯用技术手段,此处不再赘述,并不用来限制本申请。如接口是执行发图操作的接口时,其参数名称对应的值是图片的名称(或身份标识(ID))o
[0044]其中,应用服务器的运维人员(管理员)可以根据参数名称和与参数名称对应的值设置预期返回值。需要说明的是,一旦确定了参数名称和与参数名称对应的值,则就可以设置与两者对应的预期返回值,关于如何根据参数名称和与参数名称对应的值设置预期返回值属于本领域技术人员所熟知的惯用技术手段,此处不再赘述,并不用来限制本申请。
[0045]举例说明,如果调用了某个接口,它是执行一个发图操作的接口,此时的参数名称对应的值可以是图片的名称(或ID),那么可以设置该接口的预期返值是发图成功,其中,发图成功这个值可以以编码的方式返回,也可以以其它的方式返回,如返回为O或者I等。
[0046]其中,返回值定义为与请求参数对应的返回内容。
[0047]其中,获取需要监控的应用的接口的当前返回值包括:
[0048]获取预先设置的接口的访问地址和请求参数;
[0049]向获得的接口的访问地址发送携带有请求参数的请求;
[0050]接收与请求对应的返回值并将接收到的与请求对应的返回值作为需要监控的应用的接口的当前返回值。
[0051 ] 其中,可以通过HttpClient(是Apache Jakarta Common下的子项目,可以用来提供高效的、最新的、功能丰富的支持HTTP协议的客户端编程工具包)携带该接口的请求参数访问该接口的访问地址来获取返回值。需要说明的是,关于如何通过HttpCl ient获取接口的返回值属于本领域技术人员所熟知的惯用技术手段。
[0052]可选地,在预先设置需要监控的应用的一个或一个以上接口的访问地址、请求参数、间隔时长和预期返回值之后,该方法还包括:
[0053]创建并启动定时器;
[0054]当定时器的计时时长达到预先设置的需要监控的应用的接口的间隔时长时,执行步骤101。
[0055]其中,可以采用Quartz(—个由java编写的开源作业调度框架)结合开源框架Spring(—个轻量级的Java开发框架)仓Il建定时器。需要说明的是,如何根据Quartz结合Spring创建定时器属于本领域技术人员所熟知的惯用技术手段,此处不再赘述,并不用来限制本申请。
[0056]步骤102:判断获得的需要监控的应用的接口的当前返回值与该应用的该接口的预期返回值是否相同。
[0057]举例说明,比如发图的接口,正常情况下应该返回发图成功这个值(预期返回值),但是应用可能出问题了,返回了发图失败这个值,因此这两个值是不同的。
[0058]步骤103:当判断出获得的需要监控的应用的接口的当前返回值与该应用的该接口的预期返回值不同时,触发报警流程。
[0059]其中,触发报警流程包括:通知管理员应用的该接口存在故障。可选地,通过声音、短信、即时通信和/或邮件通知管理员应用的接口存在故障。
[0060]其中,声音可以是报警铃声或蜂鸣器。
[0061]其中,短信网关服务器可以将应用的接口存在故障以短信的方式发送给预设的电话号码(管理员或称为应用服务器的运维人员的电话号码)。
[0062]其中,可以将应用的接口存在故障通过即时通信的方式发送给管理员(或称为应用服务器的运维人员)。
[0063]其中,可以将应用的接口存在故障按照预设的邮箱地址进行发送。其中,即时通信包括:微信、QQ和/或陌陌等。
[0064]可选地,当判断出获得的需要监控的应用的接口的当前返回值与该应用的该接口的预期返回值相同时,结束本流程。
[0065]可选地,当判断出获得的需要监控的应用的接口的当前返回值与该应用的该接口的预期返回值不同时,该方法还包括:将应用的接口的当前返回值与该应用的该接口的预期返回值不同的结果与该接口进行对应存储。可选地,将应用的接口的当前返回值与该应用的该接口的预期返回值不同的结果与该接口存储在预先创建的第二文件中或者第二数据库中。
[0066]可选地,当判断出获得的需要监控的应用的接口的当前返回值与该应用的该接口的预期返回值相同时,该方法还包括:将应用的接口的当前返回值与该应用的该接口的预期返回值相同的结果与该接口进行对应存储。可选地,将应用的接口的当前返回值与该应用的该接口的预期返回值相同的结果与该接口存储在预先创建的第二文件中或者第二数据库中。
[0067]其中,第一文件和第二文件可以相同,也可以不同。其中,第一数据库和第二数据库可以相同,也可以不同。
[0068]本发明实施方式中,通过判断获得的需要监控的应用的接口的当前返回值与该应用的该接口的预期返回值是否相同以及当判断出获得的需要监控的应用的接口的当前返回值与该应用的该接口的预期返回值不同时,触发报警流程,实现了对应用的状态进行监控,从而提高了应用服务器的高可用性。
[0069]图2为本发明监控方法的实施例的流程图,如图2所示,包括:
[0070]步骤201:预先设置需要监控的应用的一个或一个以上接口的访问地址、请求参数、间隔时长和预期返回值。
[0071]其中,同一应用的一个或一个以上接口的间隔时长可以设置为相同的时长,也可以设置为不同的时长。其中,管理员可以根据自身的经验设置一个或一个以上接口的间隔时长,假如应用A有5个接口,分别是接口 1、接口 2、接口 3、接口4和接口 5,其中,管理员认为接口 I非常重要(即接口 I发生故障后,可以会导致整个系统宕机或崩溃),认为接口 5不重要,那么可以设置接口 I的间隔时长是I分钟,也可以设置接口 I的间隔时长是30秒,可以设置接口 2的间隔时长是3分钟,可以设置接口 3的间隔时长是5分钟,可以设置接口 4的间隔时长是3分钟,可以设置接口 5的间隔时长是30分钟。
[0072]其中,同一应用的一个或一个以上接口的请求参数与接口本身有关。其中,请求参数包括参数名称和与参数名称对应的值;参数名称与接口一对一对应(即接口与接口的参数名称一一对应,一旦确定了接口,其参数名称也是唯一确定的);与参数名称对应的值由应用服务器的运维人员(管理员)进行设定。需要说明的是,关于如何根据接口设置与其对应的请求参数,属于本领域技术人员所熟知的惯用技术手段,此处不再赘述,并不用来限制本申请。如接口是执行发图操作的接口时,其参数名称对应的值是图片的名称(或身份标识(ID))o
[0073]其中,应用服务器的运维人员(管理员)可以根据参数名称和与参数名称对应的值设置预期返回值。需要说明的是,一旦确定了参数名称和与参数名称对应的值,则就可以设置与两者对应的预期返回值,关于如何根据参数名称和与参数名称对应的值设置预期返回值属于本领域技术人员所熟知的惯用技术手段,此处不再赘述,并不用来限制本申请。
[0074]举例说明,如果调用了某个接口,它是执行一个发图操作的接口,此时的参数名称对应的值可以是图片的名称(或ID),那么可以设置该接口的预期返值是发图成功,其中,发图成功这个值可以以编码的方式返回,也可以以其它的方式返回,如返回为O或者I等。
[0075]步骤202:将设置后的需要监控的同一应用的一个或一个以上接口的访问地址、请求参数、间隔时长和预期返回值以表格的形式进行存储。
[0076]可选地,将上述表格存储在预先创建的第一文件中或者第一数据库中。可选地,该方法还包括:管理员可以根据自身经验对已存储的表格进行修改。如,增加新的接口的访问地址、请求参数、间隔时长和预期返回值,或者删除已存储的某一接口的访问地址、请求参数、间隔时长和预期返回值等。
[0077]步骤203:创建并启动定时器。
[0078]步骤204:判断定时器的计时时长是否达到预先设置的需要监控的应用的接口的间隔时长。当定时器的计时时长达到预先设置的需要监控的应用的接口的间隔时长时,转入步骤205。
[0079 ] 步骤205:获取需要监控的应用的接口的当前返回值。
[0080]其中,返回值定义为与请求参数对应的返回内容。
[0081 ] 步骤205具体包括:
[0082]获取预先设置的接口的访问地址和请求参数;
[0083]向获得的接口的访问地址发送携带有请求参数的请求;
[0084]接收与请求对应的返回值并将接收到的与请求对应的返回值作为需要监控的应用的接口的当前返回值。
[0085]其中,可以通过HttpClient(是Apache Jakarta Common下的子项目,可以用来提供高效的、最新的、功能丰富的支持HTTP协议的客户端编程工具包)携带该接口的请求参数访问该接口的访问地址来获取返回值。需要说明的是,关于如何通过HttpCl ient获取接口的返回值属于本领域技术人员所熟知的惯用技术手段。
[0086]步骤206:判断获得的需要监控的应用的接口的当前返回值与该应用的该接口的预期返回值是否相同。当判断出获得的需要监控的应用的接口的当前返回值与该应用的该接口的预期返回值不同时,转入步骤207 ;否则,转入步骤208。
[0087]举例说明,比如发图的接口,正常情况下应该返回发图成功这个值(预期返回值),但是应用可能出问题了,返回了发图失败这个值,因此这两个值是不同的。
[0088]步骤207:触发报警流程。
[0089]本步骤具体包括:通知管理员应用的该接口存在故障。可选地,通过声音、短信、SP时通信和/或邮件通知管理员应用的接口存在故障。
[0090]其中,声音可以是报警铃声或蜂鸣器。
[0091]其中,可以将应用的接口存在故障以短信的方式发送给预设的电话号码(管理员或称为应用服务器的运维人员的电话号码)。
[0092]其中,可以将应用的接口存在故障通过即时通信的方式发送给管理员(或称为应用服务器的运维人员)。
[0093]其中,可以将应用的接口存在故障按照预设的邮箱地址进行发送。其中,即时通信包括:微信、QQ和/或陌陌等。
[0094]步骤208:将应用的接口的当前返回值与该应用的该接口的预期返回值相同的结果与该接口进行对应存储。
[0095]可选地,将应用的接口的当前返回值与该应用的该接口的预期返回值相同的结果与该接口存储在预先创建的第二文件中或者第二数据库中。
[0096]步骤209:将应用的接口的当前返回值与该应用的该接口的预期返回值不同的结果与该接口进行对应存储。
[0097]可选地,将应用的接口的当前返回值与该应用的该接口的预期返回值不同的结果与该接口存储在预先创建的第二文件中或者第二数据库中。
[0098]其中,第一文件和第二文件可以相同,也可以不同。其中,第一数据库和第二数据库可以相同,也可以不同。
[0099]图3为本发明监控装置的结构示意图,如图3所示,包括:获取模块30、判断模块31和触发模块32。其中,
[0100]获取模块30,用于获取需要监控的应用的接口的当前返回值。
[0101]其中,获取模块30,具体用于:
[0102]获取预先设置的接口的访问地址和请求参数;
[0103]向获得的接口的访问地址发送携带有请求参数的请求;
[0104]接收与请求对应的返回值并将接收到的与请求对应的返回值作为需要监控的应用的接口的当前返回值。
[0105]其中,返回值定义为与请求参数对应的返回内容。
[0106]其中,获取模块30可以通过HttpClient(是Apache Jakarta Common下的子项目,可以用来提供高效的、最新的、功能丰富的支持HTTP协议的客户端编程工具包)携带获得的该接口的请求参数访问该接口的访问地址来获取返回值。需要说明的是,关于如何通过HttpClient获取接口的返回值属于本领域技术人员所熟知的惯用技术手段。
[0107]判断模块31,用于判断获得的需要监控的应用的接口的当前返回值与该应用的该接口的预期返回值是否相同;当判断出获得的需要监控的应用的接口的当前返回值与该应用的该接口的预期返回值不同时,通知触发模块32。
[0108]触发模块32,用于接收到来自判断模块31的通知,触发报警流程。
[0109]其中,触发模块32,具体用于:通知管理员应用的接口存在故障。
[0110]其中,触发模块32通过声音、短信、即时通信和/或邮件通知管理员应用的接口存在故障。
[0111]其中,声音可以是报警铃声或蜂鸣器。
[0112]其中,可以将应用的接口存在故障以短信的方式发送给预设的电话号码(管理员或称为应用服务器的运维人员的电话号码)。
[0113]其中,可以将应用的接口存在故障通过即时通信的方式发送给管理员(或称为应用服务器的运维人员)。
[0114]其中,可以将应用的接口存在故障按照预设的邮箱地址进行发送。其中,即时通信包括:微信、QQ和/或陌陌等。
[0115]可选地,该装置还包括设置模块33,用于预先设置需要监控的应用的一个或一个以上接口的访问地址、请求参数、间隔时长和预期返回值。
[0116]其中,应用的一个或一个以上接口的请求参数与接口本身有关。其中,请求参数包括参数名称和与参数名称对应的值;参数名称与接口一对一对应(即接口与接口的参数名称一一对应,一旦确定了接口,其参数名称也是唯一确定的);与参数名称对应的值由应用服务器的运维人员(管理员)进行设定。需要说明的是,关于如何根据接口设置与其对应的请求参数,属于本领域技术人员所熟知的惯用技术手段,此处不再赘述,并不用来限制本申请。如接口是执行发图操作的接口时,其参数名称对应的值是图片的名称(或身份标识(ID))o
[0117]其中,同一应用的一个或一个以上接口的间隔时长可以设置为相同的时长,也可以设置为不同的时长。其中,管理员可以根据自身的经验设置一个或一个以上接口的间隔时长,假如应用A有5个接口,分别是接口 1、接口 2、接口 3、接口4和接口 5,其中,管理员认为接口 I非常重要(即接口 I发生故障后,可以会导致整个系统宕机或崩溃),认为接口 5不重要,那么可以设置接口 I的间隔时长是I分钟,也可以设置接口 I的间隔时长是30秒,可以设置接口 2的间隔时长是3分钟,可以设置接口 3的间隔时长是5分钟,可以设置接口 4的间隔时长是3分钟,可以设置接口 5的间隔时长是30分钟。
[0118]举例说明,如果调用了某个接口,它是执行一个发图操作的接口,此时的参数名称对应的值可以是图片的名称(或ID),那么该接口的预期返值就是发图成功,其中,发图成功这个状态可以以编码的方式返回,也可以以其它的方式返回,如返回为O或者I等。
[0119]可选地,该装置还包括存储模块34,用于将设置后的需要监控的应用的一个或一个以上接口的访问地址、请求参数、间隔时长和预期返回值以表格的形式进行存储。其中,存储模块34将上述表格存储在预先创建的第一文件中或者第一数据库中。
[0120]可选地,判断模块31,还用于当判断出获得的需要监控的应用的接口的当前返回值与该应用的该接口的预期返回值不同时,向存储模块34发送第一通知;相应地,
[0121]存储模块34,还用于接收到来自判断模块31的第一通知,将应用的接口的当前返回值与该应用的该接口的预期返回值不同的结果与该接口进行对应存储。其中,存储模块34,具体用于:接收到来自判断模块31的第一通知,将应用的接口的当前返回值与该应用的该接口的预期返回值不同的结果与该接口存储在预先创建的第二文件中或者第二数据库中。
[0122]可选地,判断模块31,还用于当判断出获得的需要监控的应用的接口的当前返回值与该应用的该接口的预期返回值相同时,向存储模块34发送第二通知;
[0123]相应地,
[0124]存储模块34,还用于接收到来自判断模块31的第二通知,将应用的接口的当前返回值与该应用的该接口的预期返回值相同的结果与该接口进行对应存储。其中,存储模块34,具体用于:接收到来自判断模块31的第二通知,将应用的接口的当前返回值与该应用的该接口的预期返回值相同的结果与该接口存储在预先创建的第二文件中或者第二数据库中。
[0125]其中,第一文件和第二文件可以相同,也可以不同。其中,第一数据库和第二数据库可以相同,也可以不同。
[0126]可选地,该装置还包括定时模块35,用于创建并启动定时器;当定时器的计时时长达到预先设置的需要监控的应用的接口的间隔时长时,通知获取模块30执行获取需要监控的应用的接口的当前返回值的步骤。
[0127]其中,定时模块35可以采用Quartz(—个由java编写的开源作业调度框架)结合开源框架Spring(—个轻量级的Java开发框架)仓Il建定时器。需要说明的是,如何根据Quartz结合Spring创建定时器属于本领域技术人员所熟知的惯用技术手段,此处不再赘述,并不用来限制本申请。
[0128]可选地,上述监控装置可以设置在应用服务器中。
[0129]较佳实施例,该较佳实施例中的监控装置包括:设置模块33、存储模块34、定时模块35、获取模块30、判断模块31和触发模块32。其中,
[0130]设置模块33,用于预先设置需要监控的应用的一个或一个以上接口的访问地址、请求参数、间隔时长和预期返回值。
[0131]其中,应用的一个或一个以上接口的请求参数与接口本身有关。其中,请求参数包括参数名称和与参数名称对应的值;参数名称与接口一对一对应(即接口与接口的参数名称一一对应,一旦确定了接口,其参数名称也是唯一确定的);与参数名称对应的值由应用服务器的运维人员(管理员)进行设定。需要说明的是,关于如何根据接口设置与其对应的请求参数,属于本领域技术人员所熟知的惯用技术手段,此处不再赘述,并不用来限制本申请。如接口是执行发图操作的接口时,其参数名称对应的值是图片的名称(或身份标识(ID))o
[0132]其中,同一应用的一个或一个以上接口的间隔时长可以设置为相同的时长,也可以设置为不同的时长。其中,管理员可以根据自身的经验设置一个或一个以上接口的间隔时长,假如应用A有5个接口,分别是接口 1、接口 2、接口 3、接口4和接口 5,其中,管理员认为接口 I非常重要(即接口 I发生故障后,可以会导致整个系统宕机或崩溃),认为接口 5不重要,那么可以设置接口 I的间隔时长是I分钟,也可以设置接口 I的间隔时长是30秒,可以设置接口 2的间隔时长是3分钟,可以设置接口 3的间隔时长是5分钟,可以设置接口 4的间隔时长是3分钟,可以设置接口 5的间隔时长是30分钟。
[0133]举例说明,如果调用了某个接口,它是执行一个发图操作的接口,此时的参数名称对应的值可以是图片的名称(或ID),那么该接口的预期返值就是发图成功,其中,发图成功这个状态可以以编码的方式返回,也可以以其它的方式返回,如返回为O或者I等。
[0134]存储模块34,用于将设置后的需要监控的应用的一个或一个以上接口的访问地址、请求参数、间隔时长和预期返回值以表格的形式进行存储。其中,存储模块34将上述表格存储在预先创建的第一文件中或者第一数据库中。
[0135]定时模块35,用于创建并启动定时器;当定时器的计时时长达到预先设置的需要监控的应用的接口的间隔时长时,通知获取模块30执行获取需要监控的应用的接口的当前返回值的步骤。
[0136]其中,定时模块35可以采用Quartz(—个由java编写的开源作业调度框架)结合开源框架Spring(—个轻量级的Java开发框架)仓Il建定时器。需要说明的是,如何根据Quartz结合Spring创建定时器属于本领域技术人员所熟知的惯用技术手段,此处不再赘述,并不用来限制本申请。
[0137]获取模块30,用于接收到来自定时模块35的通知,获取需要监控的应用的接口的当前返回值。
[0138]其中,获取模块30,具体用于:
[0139]获取预先设置的接口的访问地址和请求参数;
[0140]向获得的接口的访问地址发送携带有请求参数的请求;
[0141 ]接收与请求对应的返回值并将接收到的与请求对应的返回值作为需要监控的应用的接口的当前返回值。
[0142]其中,返回值定义为与请求参数对应的返回内容。
[0143]其中,获取模块30可以通过HttpClient(是Apache Jakarta Common下的子项目,可以用来提供高效的、最新的、功能丰富的支持HTTP协议的客户端编程工具包)携带获得的该接口的请求参数访问该接口的访问地址来获取返回值。需要说明的是,关于如何通过HttpClient获取接口的返回值属于本领域技术人员所熟知的惯用技术手段。
[0144]判断模块31,用于判断获得的需要监控的应用的接口的当前返回值与该应用的该接口的预期返回值是否相同;当判断出获得的需要监控的应用的接口的当前返回值与该应用的该接口的预期返回值不同时,通知触发模块32。
[0145]举例说明,比如发图的接口,正常情况下应该返回发图成功这个值(预期返回值),但是应用可能出问题了,返回了发图失败这个值,因此这两个值是不同的。
[0146]可选地,判断模块31,还用于当判断出获得的需要监控的应用的接口的当前返回值与该应用的该接口的预期返回值不同时,向存储模块34发送第一通知;相应地,
[0147]存储模块34,还用于接收到来自判断模块31的第一通知,将应用的接口的当前返回值与该应用的该接口的预期返回值不同的结果与该接口进行对应存储。其中,存储模块34,具体用于:接收到来自判断模块31的第一通知,将应用的接口的当前返回值与该应用的该接口的预期返回值不同的结果与该接口存储在预先创建的第二文件中或者第二数据库中。
[0148]可选地,判断模块31,还用于当判断出获得的需要监控的应用的接口的当前返回值与该应用的该接口的预期返回值相同时,向存储模块34发送第二通知;
[0149]相应地,
[0150]存储模块34,还用于接收到来自判断模块31的第二通知,将应用的接口的当前返回值与该应用的该接口的预期返回值相同的结果与该接口进行对应存储。其中,存储模块34,具体用于:接收到来自判断模块31的第二通知,将应用的接口的当前返回值与该应用的该接口的预期返回值相同的结果与该接口存储在预先创建的第二文件中或者第二数据库中。
[0151]其中,第一文件和第二文件可以相同,也可以不同。其中,第一数据库和第二数据库可以相同,也可以不同。
[0152]触发模块32,用于接收到来自判断模块31的通知,触发报警流程。
[0153]其中,触发模块32,具体用于:通知管理员应用的接口存在故障。
[0154]其中,触发模块32通过声音、短信、即时通信和/或邮件通知管理员应用的接口存在故障。
[0155]其中,声音可以是报警铃声或蜂鸣器。
[0156]其中,可以将应用的接口存在故障以短信的方式发送给预设的电话号码(管理员或称为应用服务器的运维人员的电话号码)。
[0157]其中,可以将应用的接口存在故障通过即时通信的方式发送给管理员(或称为应用服务器的运维人员)。
[0158]其中,可以将应用的接口存在故障按照预设的邮箱地址进行发送。其中,即时通信包括:微信、QQ和/或陌陌等。
[0159]如图4所示,为本发明应用服务器的结构示意图,包括:输入输出(1)总线、处理器40、存储器41、内存42和通信装置43。其中,
[0160]输入输出(1)总线分别与自身所属的服务器的其它部件(处理器40、存储器41、内存42和通信装置43)连接,并且为其它部件提供传送线路。
[0161]处理器40通常控制自身所属的服务器的总体操作。例如,处理器40执行计算和确认等操作。其中,处理器40可以是中央处理器(CPU)。
[0162]通信装置43,通常包括一个或多个组件,其允许自身所属的服务器与无线通信系统或网络之间的无线电通信。
[0163]存储器41存储处理器40可读、处理器可执行的软件代码,其包含用于控制处理器40执行本文描述的功能的指令(即软件执行功能)。
[0164]其中,上述监控装置中,实现获取模块30、判断模块31、触发模块32、设置模块33、存储模块34和定时模块35的功能的软件代码可存储在存储器41中,并由处理器40执行或编译后执行。
[0165]需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
[0166]上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
[0167]本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件(例如处理器)完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现。相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,例如通过集成电路来实现其相应功能,也可以采用软件功能模块的形式实现,例如通过处理器执行存储于存储器中的程序/指令来实现其相应功能。本发明不限制于任何特定形式的硬件和软件的结入口 ο
[0168]以上仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
【主权项】
1.一种监控方法,其特征在于,包括: 获取需要监控的应用的接口的当前返回值; 判断获得的需要监控的应用的接口的当前返回值与该应用的该接口的预期返回值是否相同; 当判断出获得的需要监控的应用的接口的当前返回值与该应用的该接口的预期返回值不同时,触发报警流程。2.根据权利要求1所述的监控方法,其特征在于,该方法之前还包括:预先设置需要监控的应用的一个或一个以上接口的访问地址、请求参数、间隔时长和预期返回值。3.根据权利要求2所述的监控方法,其特征在于,在所述设置需要监控的应用的一个或一个以上接口的访问地址、请求参数、间隔时长和预期返回值之后,该方法还包括: 创建并启动定时器; 当定时器的计时时长达到预先设置的需要监控的所述应用的所述接口的间隔时长时,执行所述获取需要监控的应用的接口的当前返回值的步骤。4.根据权利要求2所述的监控方法,其特征在于,所述获取需要监控的应用的接口的当前返回值包括: 获取预先设置的所述接口的访问地址和请求参数; 向获得的所述接口的访问地址发送携带有所述请求参数的请求; 接收与所述请求对应的返回值并将接收到的与所述请求对应的返回值作为需要监控的所述应用的所述接口的当前返回值。5.根据权利要求1所述的监控方法,其特征在于,所述触发报警流程包括:通知管理员所述应用的所述接口存在故障。6.根据权利要求5所述的监控方法,其特征在于,通过声音、短信、即时通信和/或邮件通知所述管理员所述应用的所述接口存在故障。7.一种监控装置,其特征在于,包括:获取模块、判断模块和触发模块;其中, 获取模块,用于获取需要监控的应用的接口的当前返回值; 判断模块,用于判断获得的需要监控的应用的接口的当前返回值与该应用的该接口的预期返回值是否相同;当判断出获得的需要监控的应用的接口的当前返回值与该应用的该接口的预期返回值不同时,通知触发模块; 触发模块,用于接收到来自判断模块的通知,触发报警流程。8.根据权利要求7所述的监控装置,其特征在于,该装置还包括设置模块,用于预先设置需要监控的应用的一个或一个以上接口的访问地址、请求参数、间隔时长和预期返回值。9.根据权利要求8所述的监控装置,其特征在于,该装置还包括定时模块,用于创建并启动定时器;当定时器的计时时长达到预先设置的需要监控的所述应用的所述接口的间隔时长时,通知所述获取模块执行获取需要监控的应用的接口的当前返回值的步骤。10.根据权利要求8所述的监控装置,其特征在于,所述获取模块,具体用于: 获取预先设置的所述接口的访问地址和请求参数; 向获得的所述接口的访问地址发送携带有所述请求参数的请求; 接收与所述请求对应的返回值并将接收到的与所述请求对应的返回值作为需要监控的所述应用的所述接口的当前返回值。11.根据权利要求7所述的监控装置,其特征在于,所述触发模块,具体用于:通知管理员所述应用的所述接口存在故障。12.根据权利要求11所述的监控装置,其特征在于,所述触发模块通过声音、短信、即时通信和/或邮件通知所述管理员所述应用的所述接口存在故障。
【文档编号】H04L12/24GK106059794SQ201610323049
【公开日】2016年10月26日
【申请日】2016年5月13日
【发明人】林浩
【申请人】努比亚技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1