分布式监控系统及其监控和调度方法与装置制造方法及图纸

技术编号:15706569 阅读:68 留言:0更新日期:2017-06-26 20:32
本发明专利技术公开了一种分布式监控系统及其监控和调度的方法与装置。分布式监控系统包括主服务器和多个代理服务器,其中,主服务器发布监控任务,代理服务器获取监控任务并且插件化运行监控任务。通过构建插件驱动的监控服务化平台,改变了监控开发的方式。只需在前端选择合适的模板和插件即可实现监控,整个过程无需写任何代码,降低了开发成本。另外,通过插件抽象,获取了可包括各种通用插件和业务方自定义插件的插件,且插件的功能相对独立简单、高复用,从而进一步降低开发和维护成本。

Distributed monitoring system and monitoring and scheduling method and device thereof

The invention discloses a distributed monitoring system and a method and a device for monitoring and scheduling. The distributed monitoring system includes the main server and several proxy servers, in which the main server issues monitoring tasks, the proxy server gets the monitoring task, and the plug-in runs the monitoring task. Through the construction of plug-in driven monitoring service platform, it changes the way of monitoring and development. Only by selecting the appropriate template and plug-in at the front to monitor, the whole process does not need to write any code, thus reducing the development cost. In addition, through plug-in abstraction, access can include various plug-in universal plug and business party custom plug-ins, plug-ins and relatively independent function is simple, high complex, so as to further reduce the cost of development and maintenance.

【技术实现步骤摘要】
分布式监控系统及其监控和调度方法与装置
本专利技术涉及监控领域,特别是涉及一种分布式监控系统及其监控和调度方法与装置。
技术介绍
为了提升互联网产品的线上服务质量,常常需要对互联网产品进行监控。现有的监控方案主要是根据需要监控的互联网产品,开发对应的脚本和/或工具来实现监控。随着互联网产品的迭代速度越来越快,需要不断更新监控方案,而现有的通过开发脚本和/或工具实现监控的方案已经跟不上产品的迭代速度。进一步地,为了能够保证监控质量,不仅需要产品开发、产品测试等技术人员参与监控,还需要同样对业务和产品了解的产品人员和评测人员能够参与进来,而当前传统的基于脚本和工具的监控方式则很难让产品人员、评测人员等非技术人员参与到产品的监控开发中去。
技术实现思路
本专利技术的主要目的在于提供一种分布式式监控系统及其相应的监控和调度方法与装置,其通过采用C/S架构,由主服务器端下发监控任务,并由相应的代理服务器使用插件完成下发的监控任务,使得整个监控过程无需开发代码即可实现,从而极大地提高了监控开发和运维的效率,同时相应地降低了成本。根据本专利技术的一个方面,提供了一种分布式监控系统,包括主服务器和多个代理服务器,其中,主服务器发布监控任务,代理服务器获取监控任务并且插件化运行监控任务。由此,通过以主服务器下发插件化监控任务的形式,实施具体监控任务的业务方只需要根据监控内容选择合适的插件串联起来即可,无需开发代码或极少开发代码,极大地降低了开发成本。另一方面,了解监控内容的非开发人员(例如,产品和评测人员)也可以通过简单地添加插件来参与监控,从而可以提升监控效率,并为进一步优化监控提供可能。主服务器可以发布用例化监控任务。相应地,代理服务器可以使用与用例相对应的插件实现监控任务的运行。这样,可以在任务下发阶段就将监控任务分解成功能独立的一个或多个用例,使得代理服务器通过简单选取与用例相对应的插件即可实现监控任务的运行,由此方便业务端的操作。主服务器可以在其自身或与其相连的数据库中存储多个代理服务器在运行监控任务时需要使用的全部或部分插件,代理服务器获取与其要运行的监控任务相对应的插件用于监控任务的插件化运行。由此实现主服务器对插件的集中管理和下发,以进一步提升监控系统的运行效率。代理服务器可以包括用于运行通用监控任务的通用代理服务器和用于运行专用监控任务的专用代理服务器。主服务器可以针对特定的专用代理服务器发布特定的专用监控任务,并且针对不特定通用代理服务器发布通用监控任务。由此,提升了通用任务的监控灵活性,以进一步提升系统监控效率。专用代理服务器执行专用监控任务中至少部分使用的专用插件可以根据实际应用从主服务器获取或其自身存储。由此满足系统统一部署管理或是业务方各自维护的灵活性需求。各代理服务器可以从主服务器获取插件模板,或其自身可以存储插件模板。每个插件模板与特定监控任务相对应,代理服务器可以通过将特定插件插入插件模板的对应位置来实现特定监控任务的运行。于是,监控任务的运行通过选取模板并插入插件就能实现,由此进一步提升系统监控的易用性。代理服务器还可以包括用于插件化运行监控任务的监控引擎,监控引擎用于装载插件模板,将一个多个插件插入插件模板的对应位置,按预定顺序执行每个插件并保存每个插件返回的变量,以获得监控任务的运行结果。由此,通过引入将插件合理串联的全局配置,能够确保插件化用例的正确执行,方便用户添加监控任务。监控引擎还可以用于:将获取监控任务用例化并转换成适合代理服务器处理的格式;或者直接将主服务器已用例化的监控任务转换成适合代理服务器处理的格式,使用与用例相对应的插件实现监控任务的运行。代理服务器可以向主服务器通知监控任务运行完毕或失败;主服务器根据通知更新监控任务的状态。进一步地,代理服务器和/或主服务器可以在监控任务运行失败的情况下报警。根据本专利技术的另一个方面,还提供了一种分布式监控系统的调度装置,分布式系统包括用于插件化运行监控任务的多个监控装置,该调度装置用于向多个监控装置发布监控任务,并且包括:任务用例化单元,用于将监控任务分解成功能独立的一个或多个用例;以及任务发布单元,用于向多个监控装置发布用例化的监控任务。该调度装置还可以包括:插件存储单元,用于存储多个监控装置在运行监控任务时需要使用且与用例相对应的全部或部分插件。任务发布单元可以用于:针对特定的专用监控装置发布特定的专用监控任务;针对至少两个或全部的通用监控装置发布通用监控任务。根据本专利技术的又一个方面,还提供了一种分布式系统的调度方法,分布式系统包括用于插件化运行监控任务的多个监控装置,该调度方法包括:将监控任务分解成功能独立的一个或多个用例;以及向多个监控装置发布用例化的监控任务。该调度方法可以包括:存储多个监控装置在运行监控任务时需要使用且与用例相对应的全部或部分插件。向多个监控装置发布用例化的监控任务可以包括:针对特定的专用监控装置发布特定的专用监控任务;针对至少两个或全部的通用监控装置发布通用监控任务。根据本专利技术的再一个方面,还提供了一种分布式监控系统的监控装置,分布式系统包括用于发布监控任务的调度装置,并且监控装置包括:任务获取单元,用于获取调度装置发布的监控任务;插件化运行单元,用于使用一个或多个功能独立的插件来实现监控任务的运行。该监控装置还可以包括任务转换单元,用于:将监控任务分解成功能独立的一个或多个用例并转换成适合代理服务器处理的格式;或者直接将主服务器已用例化的监控任务转换成适合代理服务器处理的格式。该监控装置还可以包括存储单元,用于:存储运行监控任务时需要使用的、与用例相对应的插件;以及存储与特定监控任务相对应的插件模板,其中,监控装置通过将特定插件插入插件模板的对应位置来实现特定监控任务的运行插件化运行单元可以装载插件模板,将一个多个插件插入插件模板的对应位置,按预定顺序执行每个插件并保存每个插件返回的变量,以获得监控任务的运行结果。监控装置可以是用于运行通用监控任务的通用监控装置并且任务获取单元用于获取任意的通用监控任务;或者监控装置可以是用于运行专用监控任务的专用监控装置,并且任务获取单元用于获取与专用调度装置相对应的专用监控任务。根据本专利技术的还一个方面,还提供了一种分布式监控系统的监控方法,分布式系统包括用于发布监控任务的调度装置,并且监控方法包括:获取调度装置发布的监控任务;使用一个或多个功能独立的插件来实现监控任务的运行。该监控方法还可以包括:将监控任务分解成功能独立的一个或多个用例并转换成适合代理服务器处理的格式;或者直接将主服务器已用例化的监控任务转换成适合代理服务器处理的格式。该监控方法还可以包括:存储运行监控任务时需要使用的、与用例相对应的插件;以及存储与特定监控任务相对应的插件模板,其中,调度装置通过将特定插件插入插件模板的对应位置来实现特定监控任务的运行。使用一个或多个功能独立的插件来实现监控任务的运行可以包括:装载插件模板;将一个多个插件插入插件模板的对应位置;以及按预定顺序执行每个插件并保存每个插件返回的变量,以获得监控任务的运行结果。本专利技术的分布式监控系统及其监控和调度方法与装置,通过将至少部分(优选为全部)监控任务抽象为能够独立执行的一个或多个插件,可以将监控任务的实现过程变成串联插件本文档来自技高网...
分布式监控系统及其监控和调度方法与装置

【技术保护点】
一种分布式监控系统,包括主服务器和多个代理服务器,其中,所述主服务器发布监控任务;所述代理服务器获取监控任务并且插件化运行所述监控任务。

【技术特征摘要】
1.一种分布式监控系统,包括主服务器和多个代理服务器,其中,所述主服务器发布监控任务;所述代理服务器获取监控任务并且插件化运行所述监控任务。2.如权利要求1所述的分布式监控系统,其中,所述主服务器发布监控任务包括:所述主服务器发布用例化监控任务;所述代理服务器插件化运行所述监控任务包括:所述代理服务器使用与所述用例相对应的插件实现所述监控任务的运行。3.如权利要求1所述的分布式监控系统,其中,所述主服务器在其自身或与其相连的数据库中存储所述多个代理服务器在运行监控任务时需要使用的全部或部分插件,所述代理服务器获取与其要运行的监控任务相对应的插件用于所述监控任务的插件化运行。4.如权利要求1所述的分布式监控系统,其中,所述多个代理服务器包括用于运行通用监控任务的通用代理服务器和用于运行专用监控任务的专用代理服务器,并且主服务器发布用例化的监控任务包括:针对特定的专用代理服务器发布特定的专用监控任务;以及针对至少两个或全部的通用代理服务器发布通用监控任务。5.如权利要求4所述的分布式监控系统,其中,所述专用代理服务器从所述主服务器获取或其自身存储有专用插件,并且所述专用监控任务中至少部分的运行由所述专用插件实现。6.如权利要求1所述的分布式监控系统,其中,所述多个代理服务器从所述主服务器获取或其自身存储有插件模板,每个插件模板与特定监控任务相对应,并且代理服务器通过将特定插件插入所述插件模板的对应位置来实现特定监控任务的运行。7.如权利要求6所述的分布式监控系统,其中,代理服务器包括用于插件化运行监控任务的监控引擎,所述监控引擎用于装载所述插件模板,将一个多个插件插入所述插件模板的对应位置,按预定顺序执行每个插件并保存每个插件返回的变量,以获得所述监控任务的运行结果。8.如权利要求7所述的分布式监控系统,其中,所述监控引擎还用于:将获取监控任务用例化并转换成适合所述代理服务器处理的格式;或者直接将所述主服务器已用例化的监控任务转换成适合所述代理服务器处理的格式;使用与所述用例相对应的插件实现所述监控任务的运行。9.如权利要求1所述的分布式监控系统,其中,所述代理服务器向所述主服务器通知监控任务运行完毕或失败;所述主服务器根据通知更新所述监控任务的状态。10.如权利要求9所述的分布式监控系统,其中,所述代理服务器和/或所述主服务器在监控任务运行失败的情况下报警。11.一种分布式监控系统的调度装置,所述分布式系统包括用于插件化运行监控任务的多个监控装置,该调度装置用于向所述多个监控装置发布监控任务,并且包括:任务用例化单元,用于将监控任务分解成功能独立的一个或多个用例;以及任务发布单元,用于向多个所述监控装置发布用例化的监控任务。12.如权利要求11所述的调度装置,还包括:插件存储单元,用于存储所述多个监控装置在运行监控任务时需要使用且与用例相对应的全部或部分插件。13.如权利要求11所述的调度装置,其中,所述任务发布单元用于:针对特定的专用监控装置发布特定的专用监控任务...

【专利技术属性】
技术研发人员:张坤唐铭员张驰单永生
申请(专利权)人:广州神马移动信息科技有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1