Weblogic实例监控方法及装置与流程

文档序号:11681107阅读:347来源:国知局
Weblogic实例监控方法及装置与流程

本发明涉及计算机技术,尤其涉及一种weblogic实例监控方法及装置。



背景技术:

weblogic(oracle公司出品的应用服务器软件)是基于javaee(即j2ee,java2platformenterpriseedition,java2平台企业版)架构的中间件,可作为用于开发、集成、部署和管理大型分布式web应用、网络应用和数据库应用的java应用服务器。weblogic将java的动态功能和javaenterprise(java企业)标准的安全性引入大型网络应用的开发、集成、部署和管理之中,具有开发简便、可扩展性强、灵活性和可靠性较高等优势。

在weblogic系统中,应用程序部署在大量的weblogic实例上,weblogic实例运行的状态可能会直接影响前台业务的业务受理。

目前对weblogic实例的监控还缺乏研究,基本停留在人工监控阶段,一些自动监控,也只能对weblogic实例运行的服务器的硬件状态进行监控。而对weblogic实例监控不及时,可能会导致weblogic实例出现问题,影响服务器处理效率,系统稳定性较差。



技术实现要素:

本发明提供一种weblogic实例监控方法及装置,用以解决现有技术中weblogic实例监控不及时的技术问题。

本发明提供一种weblogic实例监控方法,包括:

获取weblogic实例的执行状态参数;

判断所述weblogic实例的执行状态参数是否超过阈值;

若超过阈值,则向用户发送警示信息。

进一步地,获取weblogic实例的执行状态参数,包括:

通过嗅探接口获取weblogic实例的运行状态;

判断所述weblogic实例的运行状态是否正常;

若正常,则通过嗅探接口获取weblogic实例的执行状态参数。

进一步地,所述方法还包括:

若所述weblogic实例的执行状态参数超过阈值,则获取weblogic实例的进程编码,并进行快照保存,供用户后续查看;

强制关闭所述weblogic实例,并重新启动所述weblogic实例。

进一步地,判断所述weblogic实例的执行状态参数是否超过阈值,包括:

获取所述weblogic实例的执行进程数;

判断所述weblogic实例的执行状态数是否超过对应的阈值;

其中,在判断所述weblogic实例的执行进程数是否超过对应的阈值之前,还包括:

每隔预设时间,获取服务器中所有weblogic实例的执行进程数;

根据所有weblogic实例的执行进程数中的最高值,确定执行进程数对应的阈值。

进一步地,判断所述weblogic实例的执行状态参数是否超过阈值,包括:

判断所述weblogic实例的连接池是否泄漏;

若没有泄漏,则获取所述weblogic实例的连接池连接数;

判断所述weblogic实例的连接池连接数是否超过对应的阈值;

其中,在判断所述weblogic实例的连接池连接数是否超过对应的阈值之前,还包括:

每隔预设时间,获取服务器中所有weblogic实例的连接池连接数;

根据所有weblogic实例的连接池连接数中的最高值,确定连接池连接数对应的阈值。

进一步地,判断所述weblogic实例的执行状态参数是否超过阈值,包括:

获取所述weblogic实例的事务回滚数;

判断所述weblogic实例的事务回滚数是否超过对应的阈值;

其中,在判断所述weblogic实例的事务回滚数是否超过对应的阈值之前,还包括:

根据服务器与数据库之间的请求数确定事务回滚数对应的阈值。

本发明还提供一种weblogic实例监控装置,包括:

获取模块,用于获取weblogic实例的执行状态参数;

判断模块,用于判断所述weblogic实例的执行状态参数是否超过阈值;

发送模块,用于在超过阈值时,向用户发送警示信息。

进一步地,所述获取模块具体用于:

通过嗅探接口获取weblogic实例的运行状态;

判断所述weblogic实例的运行状态是否正常;

若正常,则通过嗅探接口获取weblogic实例的执行状态参数。

进一步地,所述发送模块还用于:

若所述weblogic实例的执行状态参数超过阈值,则获取weblogic实例的进程编码,并进行快照保存,供用户后续查看;

强制关闭所述weblogic实例,并重新启动所述weblogic实例。

进一步地,所述判断模块具体用于:

获取所述weblogic实例的执行进程数;

判断所述weblogic实例的执行状态数是否超过对应的阈值;

其中,在判断所述weblogic实例的执行进程数是否超过对应的阈值之前,还包括:

每隔预设时间,获取服务器中所有weblogic实例的执行进程数;

根据所有weblogic实例的执行进程数中的最高值,确定执行进程数对应的阈值。

进一步地,所述判断模块具体用于:

判断所述weblogic实例的连接池是否泄漏;

若没有泄漏,则获取所述weblogic实例的连接池连接数;

判断所述weblogic实例的连接池连接数是否超过对应的阈值;

其中,在判断所述weblogic实例的连接池连接数是否超过对应的阈值之前,还包括:

每隔预设时间,获取服务器中所有weblogic实例的连接池连接数;

根据所有weblogic实例的连接池连接数中的最高值,确定连接池连接数对应的阈值。

进一步地,所述判断模块具体用于:

获取所述weblogic实例的事务回滚数;

判断所述weblogic实例的事务回滚数是否超过对应的阈值;

其中,在判断所述weblogic实例的事务回滚数是否超过对应的阈值之前,还包括:

根据服务器与数据库之间的请求数确定事务回滚数对应的阈值。

本发明提供的weblogic实例监控方法及装置,通过获取weblogic实例的执行状态参数,并判断所述weblogic实例的执行状态参数是否超过阈值,若超过阈值,则向用户发送警示信息,能够及时发现存在问题隐患的weblogic实例并通知用户,提高服务器处理效率以及系统运行稳定性。

附图说明

图1为本发明实施例一提供的weblogic实例监控方法的流程图;

图2为本发明实施例二提供的weblogic实例监控方法的流程图;

图3为本发明实施例三提供的weblogic实例监控装置的结构框图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

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

应当理解,本文中使用的术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。

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

还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的商品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种商品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的商品或者系统中还存在另外的相同要素。

实施例一

本发明实施例一提供一种weblogic实例监控方法。图1为本发明实施例一提供的weblogic实例监控方法的流程图。如图1所示,本实施例中的方法,可以包括:

步骤101、获取weblogic实例的执行状态参数。

具体地,可以通过嗅探接口(嗅探器)来获取weblogic实例的执行状态参数。weblogic实例的执行状态参数是指能够表征weblogic实例当前的执行状态的参数,例如可以是weblogic实例的等待队列数、执行进程数、事务回滚数等。

步骤102、判断所述weblogic实例的执行状态参数是否超过阈值。

所述执行状态参数可能包括多个种类,例如,所述执行状态参数可以包括等待队列数和执行进程数,则不同类型的执行状态参数可以对应不同的阈值,例如,所述等待队列数对应的阈值可以为100,所述执行进程数对应的阈值可以为50。

所述阈值可以由用户根据实际需要来设置,也可以采用默认设置。

优选的是,本实施例中,weblogic实例的执行状态参数可以包括下述至少一项:weblogic实例的执行进程数、连接池连接数、事务回滚数。相应的,本步骤中的判断所述weblogic实例的执行状态参数是否超过阈值,可以包括下述三项中的至少一项:

(1)、获取所述weblogic实例的执行进程数;判断所述weblogic实例的执行状态数是否超过对应的阈值;

(2)、判断所述weblogic实例的连接池是否泄漏;若有泄漏,则向用户发送警示信息,若没有泄漏,则获取所述weblogic实例的连接池连接数;判断所述weblogic实例的连接池连接数是否超过对应的阈值;

(3)、获取所述weblogic实例的事务回滚数;判断所述weblogic实例的事务回滚数是否超过对应的阈值。

进一步地,在判断所述weblogic实例的执行进程数是否超过对应的阈值之前,还可以:每隔预设时间,获取服务器中所有weblogic实例的执行进程数;根据所有weblogic实例的执行进程数中的最高值,确定执行进程数对应的阈值。

在判断所述weblogic实例的连接池连接数是否超过对应的阈值之前,还可以:每隔预设时间,获取服务器中所有weblogic实例的连接池连接数;根据所有weblogic实例的连接池连接数中的最高值,确定连接池连接数对应的阈值。

其中,根据所有weblogic实例的执行进程数/连接池连接数中的最高值,确定执行进程数/连接池连接数对应的阈值,可以具体为:对于每一时段来说,确定所有weblogic实例的执行进程数/连接池连接数在该时段的最高值;对各个时段的执行进程数/连接池连接数的最高值取平均,得到执行进程数/连接池连接数对应的阈值。

这样,根据之前的执行进程数/连接池连接数的最高值,来确定对应的阈值,能够及时发现执行进程数/连接池连接数突然出现异常的weblogic实例,防止系统崩溃。

进一步地,在判断所述weblogic实例的事务回滚数是否超过对应的阈值之前,还可以:根据服务器与数据库之间的请求数确定事务回滚数对应的阈值。

具体的,服务器与数据库之间的请求数越多,所述事务回滚数对应的阈值可以越高,服务器与数据库之间的请求数越少,所述事务回滚数对应的阈值可以越低,例如,所述事务回滚数对应的阈值可以为请求数的10%。

通过服务器与数据库之间的请求数来确定事务回滚数的阈值,能够使阈值随请求数的变化而变化,避免单一阈值,更能适应复杂的应用环境。

步骤103、若超过阈值,则向用户发送警示信息。

若weblogic实例的执行状态参数超过阈值,则可以认为weblogic实例出现异常。如果所述执行状态参数中包括多个参数,如既获取了等待队列数又获取了执行进程数,则本步骤中的若超过阈值,则向用户发送警示信息,可以包括:

若所述执行状态参数中的每个参数都超过了对应的阈值,则向用户发送警示信息,反之则不发送,例如,只有在等待队列数超过了对应的阈值100且执行进程数超过了对应的阈值50的时候,才向用户发送警示信息;

或者,若所述执行状态参数中的至少一个参数超过了对应的阈值,则向用户发送警示信息,反之则不发送,例如,只要等待队列数超过了对应的阈值100或执行进程数超过了对应的阈值50,就向用户发送警示信息。

向用户发送警示信息可以具体包括:在显示界面向用户推送警示信息,或者,通过短信或邮件向用户发送警示信息。用户接受到警示信息后,可以及时对出现问题的weblogic实例进行处理。

进一步地,若所述weblogic实例的执行状态参数超过阈值,除了向用户发送警示信息以外,还可以自动进行异常处理,异常处理可以包括:

获取weblogic实例的进程编码,并进行快照保存,供用户后续查看;强制关闭所述weblogic实例,并重新启动所述weblogic实例。

在实际应用中,可以采用本实施例提供的方法对每个weblogic实例进行监控,每个一段时间采集weblogic实例的执行状态参数,若weblogic实例的执行状态参数有异常,则记录异常信息,并通知用户。若weblogic实例的执行状态参数没有异常,则进行下一个weblogic实例的监控,全部weblogic实例扫描完后,可以记录扫描数据,并将数据通过短信或邮件等方式发送给用户。

本实施例提供的weblogic实例监控方法,通过获取weblogic实例的执行状态参数,并判断所述weblogic实例的执行状态参数是否超过阈值,若超过阈值,则向用户发送警示信息,能够及时发现存在问题隐患的weblogic实例并通知用户,提高服务器处理效率以及系统运行稳定性。

实施例二

本发明实施例二提供一种weblogic实例监控方法。图2为本发明实施例二提供的weblogic实例监控方法的流程图。如图2所示,本实施例中的方法,可以包括:

步骤201、通过嗅探接口获取weblogic实例的运行状态。

步骤202、判断所述weblogic实例的运行状态是否正常。

步骤203、若正常,则通过嗅探接口获取weblogic实例的执行状态参数。

本实施例中,在获取weblogic实例的执行状态参数之前,可以首先利用嗅探接口获取weblogic实例的运行状态,weblogic实例的运行状态可能为正常或异常,若weblogic实例的运行状态为异常,则向用户发送警示信息,无需再比对执行状态参数与阈值的关系;若weblogic实例的运行状态为正常,则通过嗅探接口获取weblogic实例的执行状态参数。

通过嗅探接口获取weblogic实例的运行状态以及weblogic实例的执行状态参数的具体实现方法属于现有技术,此处不再赘述。

步骤204、判断所述weblogic实例的执行状态参数是否超过阈值。

步骤205、若超过阈值,则向用户发送警示信息。

本实施例中的步骤204至步骤205与实施例一种的步骤102至步骤103类似,此处不再赘述。

在实际应用中,程序启动后,可以轮循获取weblogic实例的运行状态,判断weblogic实例当前发运行状态是否正常。如果异常,记录异常信息并发送给用户后直接轮循下一个weblogic实例。如果运行状态正常,则嗅探weblogic实例执行进程数,如果高于对应的阈值,则记录异常信息并向用户发送警示信息。如果执行进程数正常,则嗅探weblogic实例连接池数据,如果连接池连接数高于对应的阈值,或者连接池存在泄露,则记录异常信息并向用户发送警示信息。如果连接池正常,则获取事务回滚数,如果事务回滚数高于对应的阀值,则记录异常信息并向用户发送警示信息。如果事务回滚数也没有问题,则记录本次扫描中的各数据,并进行下一weblogic实例扫描。全部扫描后,通过邮件或短信向用户发送扫描的数据。

本实施例提供的weblogic实例监控方法,通过嗅探接口获取weblogic实例的运行状态,并判断所述weblogic实例的运行状态是否正常,在运行状态正常时才进行weblogic实例的执行状态参数是否正常的判断,能够更加准确地判断weblogic实例是否出现问题,保证系统的正常运行。

实施例三

本发明实施例三提供一种weblogic实例监控装置。图3为本发明实施例三提供的weblogic实例监控装置的结构框图。如图3所示,本实施例中的装置,可以包括:

获取模块301,用于获取weblogic实例的执行状态参数;

判断模块302,用于判断所述weblogic实例的执行状态参数是否超过阈值;

发送模块303,用于在超过阈值时,向用户发送警示信息。

本实施例中的weblogic实例监控装置,可以用于执行上述任一实施例所述的weblogic实例监控方法,其具体实现原理可参照前述实施例,此处不再赘述。

本实施例提供的weblogic实例监控装置,通过获取weblogic实例的执行状态参数,并判断所述weblogic实例的执行状态参数是否超过阈值,若超过阈值,则向用户发送警示信息,能够及时发现存在问题隐患的weblogic实例并通知用户,提高服务器处理效率以及系统运行稳定性。

进一步地,所述获取模块301具体可以用于:

通过嗅探接口获取weblogic实例的运行状态;

判断所述weblogic实例的运行状态是否正常;

若正常,则通过嗅探接口获取weblogic实例的执行状态参数。

进一步地,所述发送模块303还可以用于:

若所述weblogic实例的执行状态参数超过阈值,则获取weblogic实例的进程编码,并进行快照保存,供用户后续查看;

强制关闭所述weblogic实例,并重新启动所述weblogic实例。

进一步地,所述判断模块302具体可以用于:

获取所述weblogic实例的执行进程数;

判断所述weblogic实例的执行状态数是否超过对应的阈值;

其中,在判断所述weblogic实例的执行进程数是否超过对应的阈值之前,还包括:

每隔预设时间,获取服务器中所有weblogic实例的执行进程数;

根据所有weblogic实例的执行进程数中的最高值,确定执行进程数对应的阈值。

进一步地,所述判断模块302具体可以用于:

判断所述weblogic实例的连接池是否泄漏;

若没有泄漏,则获取所述weblogic实例的连接池连接数;

判断所述weblogic实例的连接池连接数是否超过对应的阈值;

其中,在判断所述weblogic实例的连接池连接数是否超过对应的阈值之前,还包括:

每隔预设时间,获取服务器中所有weblogic实例的连接池连接数;

根据所有weblogic实例的连接池连接数中的最高值,确定连接池连接数对应的阈值。

进一步地,所述判断模块302具体可以用于:

获取所述weblogic实例的事务回滚数;

判断所述weblogic实例的事务回滚数是否超过对应的阈值;

其中,在判断所述weblogic实例的事务回滚数是否超过对应的阈值之前,还包括:

根据服务器与数据库之间的请求数确定事务回滚数对应的阈值。

最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1