一种软件运行状态监控系统及其实现方法

文档序号:9730282阅读:1050来源:国知局
一种软件运行状态监控系统及其实现方法
【技术领域】
[0001]本发明涉及软件和服务器监控技术领域,特别是一种软件运行状态监控系统及其实现方法。
【背景技术】
[0002]随着互联网的发展,企业根据业务需求研发各种应用软件,如何监控这些软件的运行状态并保障其正常运行,是企业的系统运维人员需面对的一个难题。一般的监控系统只是对软件进程或服务器资源进行监控,无法对软件运行状态进行深入的监控,如监控软件各个线程运行的详细信息等,也无法提供控制软件启停等操作的功能,因此不能很好的保障软件正常工作及提高软件的可信性。

【发明内容】

[0003]本发明解决的技术问题之一在于提供一种软件运行状态监控系统。
[0004]本发明解决的技术问题之二在于提供一种软件运行状态监控的实现方法。
[0005]本发明解决上述技术问题之一的技术方案是:
[0006]所述的系统由监控代理、监控信息库和WEB监控界面组成;
[0007]所述的监控信息库负责存储各类监控信息和日志,主要包括软件运行状态信息、服务器运行状态信息、软件控制操作日志等;
[0008]所述的WEB监控界面负责将软件运行状态、服务器运行状态等各类监控信息及故障预警展示给系统运维人员,同时提供控制软件启动、停止、重启等各种操作的界面;
[0009]所述的监控代理,部署在每台需要监控软件运行状态的应用服务器上,主要负责采集监控信息和控制软件,它由监控信息采集、监控探针、脚本模块及Web Service接口组成;
[0010]所述的监控信息采集,负责采集由监控探针和脚本模块获取的各类监控信息;
[0011]所述的监控探针,是一段具有获取软件运行状态的代码,可以根据实际需要,注入在软件源代码中的不同位置,当软件触发监控探针时,监控探针就会获取软件当前的运行状态,然后发送到监控信息采集模块;
[0012]所述的脚本模块,由一系列shell脚本构成,包括但不局限于软件日志分析脚本、软件进程监控脚本、软件内存占用情况脚本、软件控制脚本、服务器CPU使用率脚本、服务器磁盘使用率脚本、服务器内存使用率脚本等,主要负责执行监控服务器使用情况、软件运行状态及控制软件等;
[0013]所述的WebService接口,主要是提供给外部应用程序调用脚本模块,执行控制软件或者获取相关监控信息的脚本。
[0014]本发明解决上述技术问题之二的技术方案是:
[0015]所述的方法按照以下流程步骤处理:
[0016]第一步,根据实际监控需要,将监控探针注入到软件源代码的不同位置;
[0017]第二步,软件运行时,触发监控探针,监控探针获取软件运行的各种状态,发送监控信息到监控信息采集模块;
[0018]第三步,监控信息采集模块搜集各个监控探针发回的监控信息,整合后存储到监控信息库;
[0019]第四步,监控信息采集模块根据配置,调用脚本模块的各类脚本,获取软件进程信息、软件内存使用信息及服务器各类资源使用情况等各种监控信息,存储到监控信息库;
[0020]第五步,运维人员通过WEB监控界面,查看软件运行状态、服务器资源使用情况等各类监控信息;
[0021 ]第六步,当软件运行状态或服务器资源使用情况等监控信息与预置的正常状态不符,则在WEB监控界面出现故障预警;并通过短信和邮件的方式通知运维人员,运维人员可通过WEB监控界面提供的软件控制界面,对软件进行重启操作;
[0022]第七步,WEB监控界面的软件控制界面通过监控代理的Web Service接口,调用脚本模块中的软件控制脚本,完成对软件的重启操作。
[0023]所述的监控代理可以部署在任意操作系统的服务器,且每台服务器只需部署一个代理。
[0024]所述的WEB监控界面可以实现对一个或多个监控代理的集中管控。
[0025]本发明由监控探针和脚本模块获取软件运行状态和服务器运行状态,由监控信息采集负责搜集和整合监控信息,由监控信息库存储监控信息和日志,由WEB监控界面展示监控信息和故障预警,并可通过操作界面控制软件的启停等,实现保障软件和服务器的正常工作、提高软件的可信性。因此,采用本发明的系统及方法,具有以下有益效果:(1)适用于分布式环境下使用,统一管控;(2)采用监控探针注入的方式,获取详细的软件运行状态;
(3)集成脚本模块,通过shell脚本可获取软件和服务器的各种监控信息;(4)采用WebService技术,不受系统平台的限制;(5)同时实现监控及故障预警功能;(6)配置灵活、运维方便。
【附图说明】
[0026]下面结合附图对本发明进一步说明:
[0027]图1是本发明的架构示意图。
【具体实施方式】
[0028]如图1所示,本发明的系统主要由监控代理、监控信息库和WEB监控界面三大组件组成。
[0029]1、监控代理:监控代理是核心组件,部署在每台需要监控软件运行状态的应用服务器上,主要负责采集监控信息和控制软件,它由监控信息采集、监控探针、脚本模块及WebService接口组成;
[0030](1)监控信息采集:监控信息采集负责采集由监控探针和脚本模块获取的各类监控信息;
[0031](2)监控探针:监控探针是一段具有获取软件运行状态的代码,可以根据实际需要,注入在软件源代码中的不同位置,当软件触发监控探针时,监控探针就会获取软件当前的运行状态,然后发送到监控信息采集模块;
[0032](3)脚本模块:脚本模块由一系列shell脚本构成,包括但不局限于软件日志分析脚本、软件进程监控脚本、软件内存占用情况脚本、软件控制脚本、服务器CPU使用率脚本、服务器磁盘使用率脚本、服务器内存使用率脚本等,主要负责执行监控服务器使用情况、软件运行状态及控制软件等;
[0033](4)f
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1