计算机系统异常监控的完备性巡检方法及其设备与流程

文档序号:17475328发布日期:2019-04-20 06:05阅读:221来源:国知局
计算机系统异常监控的完备性巡检方法及其设备与流程

本申请涉及计算机系统的异常监控,特别涉及计算机系统异常监控的完备性巡检技术。



背景技术:

线上的计算机系统,都需要各种业务和技术监控,来及时发现线上的异常情况。传统的线上计算机系统上线和更新都遵循图1中的状态流转。具体地说,业务上线时人工配置监控。如果运行时发现线上异常,则马上采取人工应急措施,及时止损。对于新上线一个功能、业务或者应用,经常会出现漏配置某些监控,导致线上出现故障初期无法及时发现,往往在引发投诉、舆情等严重的问题时,才能发现问题,并在事后复盘时进行监控的补救配置。因此,如何在出现线上故障之前自动地尽早发现人工配置的监控中的问题,就成为本领域急需解决的问题。



技术实现要素:

本申请的目的在于提供一种计算机系统异常监控的完备性巡检方法及其设备,利用可以以系统自动化的方式及时发现人工监控配置中的疏漏。

为了解决上述问题,本申请公开了一种计算机系统异常监控的完备性巡检方法,包括:

预先设置至少一个监控对象和为每个监控对象设置至少一个监控项目;

系统运行时,如果出现新的监控对象则将该监控对象和属于该监控对象的监控项目上报到监控对象仓库;

将监控对象仓库中的监控对象及其监控项目与用户配置的监控进行匹配,如果存在没有对应监控的监控对象或监控项目则输出预警。

在一个优选例中,该监控对象包括以下之一或其任意组合:应用间服务调用,应用本身监控。

在一个优选例中,该应用间服务调用的监控项目包括以下之一或其任意组合:每秒事务处理量,延时。

在一个优选例中,该应用本身监控的监控对象包括以下之一或其任意组合:处理器,内存,磁盘,网络流量,io。

在一个优选例中,该如果出现新的监控对象则将该监控对象和属于该监控对象的监控项目上报到监控对象仓库,进一步包括:

应用启动时,向该监控对象仓库上报的监控对象为应用本身监控,上报的监控项目为处理器,内存,磁盘,网络流量和io。

在一个优选例中,该如果出现新的监控对象则将该监控对象和属于该监控对象的监控项目上报到监控对象仓库,进一步包括:

当一个应用调用另一个应用的服务时,向该监控对象仓库上报的监控对象为应用间服务调用,上报的监控项目为每秒事务处理量和延时。

在一个优选例中,在该将监控对象仓库中的监控对象及其监控项目与用户配置的监控进行匹配之前,还包括:

根据来自人机交互界面的输入,将用户自定义的监控对象及其监控项目添加到该监控对象仓库中。

在一个优选例中,该将监控对象仓库中的监控对象及其监控项目与用户配置的监控相匹配之前,还包括:

根据来自人机交互界面的输入,配置该监控和该监控对应的监控点和监控标签。

本申请还公开了一种计算机系统异常监控的完备性巡检设备,包括:

配置模块,用于存储至少一个监控对象和属于每个监控对象的监控项目;

监控项目上报模块,用于在出现新的监控对象时,将该监控对象和属于该监控对象的监控项目上报到监控对象仓库;

匹配模块,用于将监控对象仓库中的监控对象及其监控项目与用户配置的监控进行匹配,如果存在没有对应监控的监控对象或监控项目则输出预警。

在一个优选例中,该监控对象包括以下之一或其任意组合:应用间服务调用,应用本身监控。

在一个优选例中,该应用间服务调用的监控项目包括以下之一或其任意组合:每秒事务处理量,延时。

在一个优选例中,该应用本身监控的监控对象包括以下之一或其任意组合:处理器,内存,磁盘,网络流量,io。

在一个优选例中,该监控项目上报模块进一步包括:

第一上报子模块,用于在应用启动时,向该监控对象仓库上报的监控对象为应用本身监控,上报的监控项目为处理器,内存,磁盘,网络流量,和io。

在一个优选例中,该监控项目上报模块进一步包括:

第二上报子模块,用于当一个应用调用另一个应用的服务时,向该监控对象仓库上报的监控对象为应用间服务调用,上报的监控项目为每秒事务处理量和延时。

在一个优选例中,还包括用户配置模块,用于根据来自人机交互界面的输入,将用户自定义的监控对象及其监控项目添加到该监控对象仓库中。

在一个优选例中,监控配置模块,用于根据来自人机交互界面的输入,配置该监控和该监控对应的监控点和监控标签。

本申请还公开了一种计算机系统异常监控的完备性巡检设备,包括:

存储器,用于存储计算机可执行指令;以及,

处理器,用于在执行该计算机可执行指令时实现如前文描述的方法中的步骤。

本申请还公开了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机可执行指令,该计算机可执行指令被处理器执行时实现如前文描述的方法中的步骤。

本申请实施方式对已有系统监控的全面性的衡量提供比对依据,利用系统自动化的方式来弥补人工由于经验不足、疏漏等造成的线上计算机系统监控缺失问题。通过历史配置经验的总结,对不同的应用监控进行分类和打上对应的监控项目,并针对应用调用等应用节点进行自动埋点监控,定期巡检匹配对应的监控项目是否有缺失,一旦缺失将自动预警通知对应人员进行确认和预警的添加补充,从而确保业务的不断发展和计算机应用的不断更新下,异常监控的完备性依然能得到保障。

本申请的说明书中记载了大量的技术特征,分布在各个技术方案中,如果要罗列出本申请所有可能的技术特征的组合(即技术方案)的话,会使得说明书过于冗长。为了避免这个问题,本申请上述发明内容中公开的各个技术特征、在下文各个实施方式和例子中公开的各技术特征、以及附图中公开的各个技术特征,都可以自由地互相组合,从而构成各种新的技术方案(这些技术方案均因视为在本说明书中已经记载),除非这种技术特征的组合在技术上是不可行的。例如,在一个例子中公开了特征a+b+c,在另一个例子中公开了特征a+b+d+e,而特征c和d是起到相同作用的等同技术手段,技术上只要择一使用即可,不可能同时采用,特征e技术上可以与特征c相组合,则,a+b+c+d的方案因技术不可行而应当不被视为已经记载,而a+b+c+e的方案应当视为已经被记载。

附图说明

图1是根据传统的线上计算机系统上线和更新的状态流转示意图

图2是根据本申请第一实施方式的计算机系统异常监控的完备性巡检方法示意图

图3是根据本申请第一实施方式的一个自动上报监控对象及其监控项目的例子

图4是根据本申请第一实施方式的线上计算机系统上线和更新的状态流转示意图

图5是根据本申请第一实施方式的原理示意图

图6根据本申请第二实施方式的计算机系统异常监控的完备性巡检设备结构示意图

具体实施方式

在以下的叙述中,为了使读者更好地理解本申请而提出了许多技术细节。但是,本领域的普通技术人员可以理解,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也可以实现本申请所要求保护的技术方案。

部分概念的说明:

tps:每秒事务处理量(transactionpersecond)

io:输入/输出(input/output)

为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请的实施方式作进一步地详细描述。

本申请的第一实施方式涉及一种计算机系统异常监控的完备性巡检方法,其流程如图2所示,该方法包括以下步骤:

在步骤201中,预先设置至少一个监控对象和为每个监控对象设置至少一个监控项目。监控对象可以是根据需要设定,例如应用间服务调用,应用本身监控,等等。每个监控对象可以分别设定一个或多个监控项目,或者说每一个监控对象都具有一个或多个属于该监控对象的监控项目。在一个实施例中,应用间服务调用作为一个监控对象,属于它的监控项目包括每秒事务处理量,延时等等。在一个实施例中,应用本身监控作为一个监控对象,属于它的监控项目包括处理器,内存,磁盘,网络流量,io等等。

在步骤202中,系统运行时,如果出现新的监控对象则将该监控对象和属于该监控对象的监控项目上报到监控对象仓库。监控对象仓库是监控对象及其监控项目的存储者或记录者。在一个实施例中,监控对象仓库以数据库实现。在其他实施例中,也可以以xml文件等方式实现。

在一个实施例中,应用启动时,向监控对象仓库上报的监控对象为应用本身监控,上报的监控项目为处理器,内存,磁盘,网络流量和io。

在一个实施例中,当一个应用调用另一个应用的服务时,向监控对象仓库上报的监控对象为应用间服务调用,上报的监控项目为每秒事务处理量和延时。

在一个实施例中,可以通过在应用的程序中埋点的方式来实现监控对象和监控项目的自动上报。当应用运行到埋点位置,会执行上报监控对象和监控项目的代码。

步骤202是计算机系统以自动的方式将监控对象和监控项目上报到监控对象仓库。除了这种自动的方式,也可以以手动的方式在监控对象仓库中配置监控对象和监控项目。即根据来自人机交互界面的输入,将用户自定义的监控对象及其监控项目添加到监控对象仓库中。在一个实施例中,主要以自动方式配置监控对象及其监控项目,辅助以少量的手动方式配置监控对象及其监控项目。

在步骤203中,将监控对象仓库中的监控对象及其监控项目与用户配置的监控进行匹配,如果存在没有对应监控的监控对象或监控项目则输出预警。这里的用户配置的监控是用户预先配置好的。用户在配置监控时,需要通过人机交互界面配置该监控对应的监控对象和监控项目。与监控对应的监控点和监控标签可以是手动配置的,也可以是自动根据用户配置的监控对象生成。在一个实施例中,用户可以参考系统运行日志来配置监控,例如,如果一个应用在运行时启动过,在日志里就会有相应的记录,就可以据此配置针对cpu,内存等的监控,如果发生了应用间的功能调用,也会有相应的日志记录,可以据此配置针对tps和延时的监控,用户操作的配置软件根据对日志的分析,在用户配置监控时可以自动识别出该监控对应的监控对象和监控项目。

步骤203的执行时机可以是多种多样的。在一个实施例中,步骤203可以在一个或多个约定的时间执行。在一个实施例中,步骤203可以周期性地执行。在一个实施例中,步骤203可以根据管理员的命令立即执行。

图3示出了一个具体的例子。应用a启动时,自动上报监控对象a-app-point并自动添加cpu、mem(内存)等监控项目到该监控对象下面。应用b、c启动时也类似。应用a调用应用b的服务b1时,自动上报监控对象a-b-b1,并自动添加tps、latency(延时)等监控项目到该监控对象下面。应用a调用应用c的服务c1时,应用b调用应用c的服务c2时,也是类似的处理方式。

可以定期拉取监控对象仓库中的监控对象监控项目列表,和现有己经配置的监控列表进行逐一比对,一旦发现有监控对象和监控项目没有对应的监控,那么表示此监控对象和监控项目未覆盖对应的监控,应用输出预警给到对应人员进行预警的添加补充。由此形成的线上计算机系统上线和更新的状态流转情况如图4所示。具体地说,业务上线后对监控进行人工配置,同时通过步骤201和202实现了遗漏监控。系统会定期巡检,即执行步骤203,一旦发现有人工疏漏会通知相关人员进行事前补救,从而对大部分的疏漏可以在线上异常发生之前找出来,减少了人工应急和止损措施的执行机会。

本实施方式的一个原理示意图如图5所示。自动采集和人工采集(用户自定义)的监控对象及其监控项目被存储到监控对象仓库。用户配置的监控存储在配置监控列表中。在定期巡检时,对监控对象仓库和配置监控列表进行匹配,如果存在监控对象没有对应的监控,则预警通知工作人员,工作人员进行人工确认配置。

本申请的第二实施方式涉及一种计算机系统异常监控的完备性巡检设备,其结构如图6所示,该系统包括:

配置模块601,用于存储至少一个监控对象和属于每个监控对象的监控项目。监控对象可以是根据需要设定,例如应用间服务调用,应用本身监控,等等。每个监控对象可以分别设定一个或多个监控项目。在一个实施例中,应用间服务调用作为一个监控对象,属于它的监控项目包括每秒事务处理量,延时等等。在一个实施例中,应用本身监控作为一个监控对象,属于它的监控项目包括处理器,内存,磁盘,网络流量,io等等。

监控项目上报模块602,用于在出现新的监控对象时,将该监控对象和属于该监控对象的监控项目上报到监控对象仓库。

在一个实施例中,监控项目上报模块进一步包括:第一上报子模块,用于在应用启动时,向监控对象仓库上报的监控对象为应用本身监控,上报的监控项目为处理器,内存,磁盘,网络流量和io。第二上报子模块,用于当一个应用调用另一个应用的服务时,向监控对象仓库上报的监控对象为应用间服务调用,上报的监控项目为每秒事务处理量和延时。

匹配模块603,用于将监控对象仓库中的监控对象及其监控项目与用户配置的监控进行匹配,如果存在没有对应监控的监控对象或监控项目则输出预警。

用户配置模块604,用于根据来自人机交互界面的输入,将用户自定义的监控对象及其监控项目添加到监控对象仓库中。在一个实施例中,可以没有用户配置模块604。

监控配置模块605,用于根据来自人机交互界面的输入,配置监控和该监控对应的监控点和监控标签。

第一实施方式是与本实施方式相对应的方法实施方式,第一实施方式中的技术细节可以应用于本实施方式,本实施方式中的技术细节也可以应用于第一实施方式。

需要说明的是,本领域技术人员应当理解,上述计算机系统异常监控的完备性巡检设备的实施方式中所示的各模块的实现功能可参照前述计算机系统异常监控的完备性巡检方法的相关描述而理解。上述计算机系统异常监控的完备性巡检设备的实施方式中所示的各模块的功能可通过运行于处理器上的程序(可执行指令)而实现,也可通过具体的逻辑电路而实现。本申请实施例上述计算机系统异常监控的完备性巡检设备如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本申请各个实施例所述方法的全部或部分。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,readonlymemory)、磁碟或者光盘等各种可以存储程序代码的介质。这样,本申请实施例不限制于任何特定的硬件和软件结合。

相应地,本申请实施方式还提供一种计算机存储介质,其中存储有计算机可执行指令,该计算机可执行指令被处理器执行时实现本申请的各方法实施方式。

此外,本申请实施方式还提供一种计算机系统异常监控的完备性巡检设备,其中包括用于存储计算机可执行指令的存储器,以及,处理器;该处理器用于在执行该存储器中的计算机可执行指令时实现上述各方法实施方式中的步骤。

需要说明的是,在本专利的申请文件中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。本专利的申请文件中,如果提到根据某要素执行某行为,则是指至少根据该要素执行该行为的意思,其中包括了两种情况:仅根据该要素执行该行为、和根据该要素和其它要素执行该行为。多个、多次、多种等表达包括2个、2次、2种以及2个以上、2次以上、2种以上。

在本申请提及的所有文献都被认为是整体性地包括在本申请的公开内容中,以便在必要时可以作为修改的依据。此外应理解,在阅读了本申请的上述公开内容之后,本领域技术人员可以对本申请作各种改动或修改,这些等价形式同样落于本申请所要求保护的范围。

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