一种基于业务逻辑进行警报配置的方法及装置
技术领域
本发明涉及对多通信路径分析领域,尤其是一种基于业务逻辑进行警报配置的方法及装置。
背景技术
当今社会网络的安全与稳定是必不可少的,为了让网络更健康的运行人们更多的会使用分析软件来了解网络运行情况。相当多的分析软件通过配置相应网络业务(用户配置的特定网络任务)来对自身网络进行分析。这种分析能大大提升网络的运行维护能力和故障处置效率,有效的减少故障时间。而对业务中警报的配置对于用户后期分析业务,快速发现问题所在起到了至关重要的作用。
相当多的技术在配置警报时只能以单一化的方式来配置警报与警报触发条件。不能多维度,多视角的去配置想要的警报,用户往往需要配置多个复杂不直观的警报。
发明内容
本发明所要解决的技术问题是:针对现有技术存在的问题,提供一种基于业务逻辑进行警报配置的方法及装置。通过自定义警报、智能警报、异步双工长连接警报的配置、展示方式。即通过不同的树状结构还原对应警报数据实现集中,高效的管理及配置业务警报。
本发明采用的技术方案如下:
一种基于业务逻辑进行警报配置的方法包括:
自定义警报配置展示步骤,通过tab栏的方式切换显示内容,将业务逻辑数据以树状结构的方式展示在Web页面一侧,形成自定义警报配置栏;树状结构至少为三层,第一层为业务层,第二层为应用层,第三层到第n层是应用层、服务器层或者客户端层;将每一层对应的警报数与警报总数显示在当前层对应的节点后,对各层进行操作,以列表方式将警报展示在Web页面另一侧;n大于等于3;;每个节点配置m个警报;m大于等于1;
智能警报展示步骤,通过tab栏的方式切换显示内容,将通信路径中包含至少两个探针的业务逻辑数据以树状结构方式展示在Web页面一侧,形成智能警报展示栏;树状结构为三层,第一层为业务层,第二层为应用层,第三层是客户端层;同时通过第三层节点ID过滤出警报相关参数后,以列表的方式将智能警报展示在Web页面另一侧;
异步双工长连接警报步骤,通过tab栏的方式切换显示内容,当某应用节点配置为异步双工长连接应用时,将该应用节点的业务逻辑数据以树状结构方式展示在Web页面一侧,形成异步双工长连接警报栏;通过该应用节点ID过滤出警报相关参数后,以列表方式展示在Web页面另一侧。
进一步的,所述自定义警报配置展示步骤具体包括:
业务逻辑树状结构建立步骤,将业务逻辑数据,用zTree.js方式还原,并以树状结构的方式展现在Web页面一侧;树状结构至少为三层,第一层为业务层,第二层为应用层,第三层到第n层是应用层、服务器层或者客户端层;同时通过zTree.js方式将每一层对应的警报数与警报总数显示在当前层对应的节点名称(例如,图1中第一层节点名称为“柜面***”、第二层节点名称为“192.168.0.183”、第三层节点名称为“应用”、“服务器”和“北京”、第四层节点名称“192.168.0.183”)后;
查看警报步骤,点击第一层或第二层树状结构可通过业务ID或应用ID在数据库中查询相应数据并分别查看该节点名称下所有的警报,所述警报数据通过jQuery.js还原Web页面另一侧的警报列表中,通过警报添加步骤对警报进行编辑、查看;
警报添加步骤,点击树状结构第三层到第n层的节点,为相应节点添加警报和对各个警报进行警报操作管理;同时通过第三层到第n层的节点ID过滤出警报相关参数后,用jQuery.js还原警报相关参数,并以列表的方式展示在Web页面另一侧的警报列表(图1中右侧6行12列的列表)中。
进一步的,所述添加警报包含自定义添加警报步骤以及选择警报模版步骤;
自定义添加警报步骤,包括对警报相关参数进行设置,通过设置警报的时间桶,设置警报参数的类型和警报触发条件,当选择时间段内数据满足配置的触发条件,则警报的触发次数加1;其中警报相关参数包括警报名称、警报描述、警报等级、警报分类、警报类型、配置员、有效时段、警报停用;将警报相关参数、警报的时间桶、警报参数的类型和警报触发条件的数据保存在数据库中,通过jQuery.js还原数据库中保存的自定义添加警报的相关数据(例如图4中“警报名称”、“警报描述”、“警报等级”、“警报分类”、“时间桶”、“警报类型”、“配置员”、“有效时间段”、“触发条件”“警报发送”、“自动保存数据包”等操作),并以列表方式展示在Web页面另一侧的警报列表中;
选择警报模版步骤,数据库获取使用者之前预先配置好的同类型警报数据,提前放到Ztree节点中,根据Ztree节点得到业务ID,应用ID,客户端ID数据,并通过jQuery.js方式还原,并以列表方式将警报相关参数、警报的时间桶、警报参数的类型和警报触发条件的数据添加入相应节点的警报列表中进行展示,重名的警报参数可覆盖或跳过(如图7所示);
警报操作管理包括对当前层对应的节点的警报列表进行启用警报操作、关闭警报操作、停用警报操作以及复制警报操作;警报停用就是通过JS表单提交改变数据库中停用字段,当在停用时段内触发警报后,如果该字段为停用状态那么就不记为警报;启用、关闭警报是直接操作;警报复制指的是先在右侧列表中勾选相同类型的警报(如:勾选两个单个客户端警报),***会通过数据库查询到所有的单个客户端,用户可挑选客户端把勾选的两个警报复制到其他单个客户端。
进一步的,所述警报触发条件包括n个警报条件的“与”、“或”关系的组合,放置于触发条件框中(如图5中所述),当点击且/或按钮时,打开弹出框后选择指标(如图6所示);其中“与”“或”关系组合展示中,开始和结束点是通过CSS元素中的before和after参数回执而成,当关系为或时,通过jQuery.js与递归方法向html中使用者选择的li元素通过append添加一个同级li元素进去;而当关系为且时,向选择的li元素中再添加一层ul与li元素。
进一步的,所述自定义添加警报步骤还包括发送到邮箱功能,发送到linux***的SYSLOG中以及自动保存数据包功能。
进一步的,所述智能警报展示步骤具体包括:
智能业务逻辑树状结构建立步骤,将通信路径中包含至少两个探针的业务逻辑数据,用zTree.js方式还原,并以树状结构的方式展示在Web页面一侧;树状结构为三层,第一层为业务层,第二层为应用层,第三层是客户端层;
智能查看警报步骤,点击第一层或第二层树状结构可通过业务ID或应用ID在数据库中查询相应数据并分别查看该节点名称下所有的警报,所述警报数据通过jQuery.js还原Web页面另一侧的警报列表中,通过警报添加步骤对警报进行编辑、查看;
智能警报添加步骤,点击树状结构第三层节点,为该客户端层节点建立唯一的智能警报,并对智能警报进行警报操作管理,同时通过第三层节点ID过滤出警报相关参数后,用jQuery.js还原警报相关参数(例如图2中“操作”、“状态”“警报名称”、“警报分类”、“时间桶”、“警报类型”、“警报描述”、“配置员”、“开始停用时间”、“结束停用时间”等操作),并以列表的方式展示在Web页面另一侧;
智能警报操作管理包括对当前层对应的节点的警报进行启用警报操作、关闭警报操作、停用警报操作以及复制警报操作;警报停用就是通过JS表单提交改变数据库中停用字段,当在停用时段内触发警报后,如果该字段为停用状态那么就不记为警报;启用、关闭警报是直接操作;警报复制指的是先在右侧列表中勾选相同类型的警报(如:勾选两个单个客户端警报),***会通过数据库查询到所有的单个客户端,用户可挑选客户端把勾选的两个警报复制到其他单个客户端。
进一步的,所述异步双工长连接警报步骤配置具体过程包括:
警报等级相关信息配置步骤,用于对警报等级、警报分类、有效时段进行参数配置,将设置的参数保存在数据库中,通过jQuery.js方式还原,并以列表方式展示在Web页面另一侧;
警报触发条件配置步骤,对警报上下行有效载荷数据包比值正常范围值进行设置,将设置的参数保存在数据库中,通过jQuery.js方式还原,并以列表方式展示在Web页面另一侧;当比值不在正常范围值内,则触发警报;
警报发送功能,用于将警报数据发送到SYSLOG或者发送到邮箱进行保存。
一种基于业务逻辑进行警报配置装置包括:
自定义警报配置展示模块,通过tab栏的方式切换显示内容,将业务逻辑数据以树状结构的方式展示在Web页面一侧,形成自定义警报配置栏;树状结构至少为三层,第一层为业务层,第二层为应用层,第三层到第n层是应用层、服务器层或者客户端层;将每一层对应的警报数与警报总数显示在当前层对应的节点后,对各层进行操作,以列表方式将警报展示在Web页面另一侧;n大于等于3;每个节点配置m个警报;m大于等于1;
智能警报展示模块,通过tab栏的方式切换显示内容,将通信路径中包含至少两个探针的业务逻辑数据以树状结构方式展示在Web页面一侧,形成智能警报展示栏;树状结构为三层,第一层为业务层,第二层为应用层,第三层是客户端层;同时通过第三层节点ID过滤出警报相关参数后,以列表的方式将智能警报展示在Web页面另一侧;
异步双工长连接警报模块,通过tab栏的方式切换显示内容,当某应用节点配置为异步双工长连接应用时,将该应用节点的业务逻辑数据以树状结构方式展示在Web页面一侧,形成异步双工长连接警报栏;通过该应用节点ID过滤出警报相关参数后,以列表方式展示在Web页面另一侧。
进一步的,所述自定义警报配置展示模块具体包括:
业务逻辑树状结构建立模块,将业务逻辑数据,用zTree.js方式还原,并以树状结构的方式展现在Web页面一侧;树状结构至少为三层,第一层为业务层,第二层为应用层,第三层到第n层是应用层、服务器层或者客户端层;同时通过zTree.js方式将每一层对应的警报数与警报总数显示在当前层对应的节点名称(例如,图1中第一层节点名称为“柜面***”、第二层节点名称为“192.168.0.183”、第三层节点名称为“应用”、“服务器”和“北京”、第四层节点名称“192.168.0.183”)后;
查看警报模块,点击第一层或第二层树状结构可通过业务ID或应用ID在数据库中查询相应数据并分别查看该节点名称下所有的警报,所述警报数据通过jQuery.js还原Web页面另一侧的警报列表中,通过警报添加模块对警报进行编辑、查看;
警报添加模块,点击树状结构第三层到第n层的节点,为相应节点添加警报和对各个警报进行警报操作管理;同时通过第三层到第n层的节点ID过滤出警报相关参数后,用jQuery.js还原警报相关参数,并以列表的方式展示在Web页面另一侧的警报列表(图1中右侧6行12列的列表)中。
进一步的,所述智能警报展示步骤具体包括:
智能业务逻辑树状结构建立步骤,将通信路径中包含至少两个探针的业务逻辑数据,用zTree.js方式还原,并以树状结构的方式展示在Web页面一侧;树状结构为三层,第一层为业务层,第二层为应用层,第三层是客户端层;
智能查看警报步骤,点击第一层或第二层树状结构可通过业务ID或应用ID在数据库中查询相应数据并分别查看该节点名称下所有的警报,所述警报数据通过jQuery.js还原Web页面另一侧的警报列表中,通过警报添加步骤对警报进行编辑、查看;
智能警报添加步骤,点击树状结构第三层节点,为该客户端层节点建立唯一的智能警报,并对智能警报进行警报操作管理,同时通过第三层节点ID过滤出警报相关参数后,用jQuery.js还原警报相关参数(例如图2中“操作”、“状态”“警报名称”、“警报分类”、“时间桶”、“警报类型”、“警报描述”、“配置员”、“开始停用时间”、“结束停用时间”等操作),并以列表的方式展示在Web页面另一侧;
智能警报操作管理包括对当前层对应的节点的警报进行启用警报操作、关闭警报操作、停用警报操作以及复制警报操作;警报停用就是通过JS表单提交改变数据库中停用字段,当在停用时段内触发警报后,如果该字段为停用状态那么就不记为警报;启用、关闭警报是直接操作;警报复制指的是先在右侧列表中勾选相同类型的警报(如:勾选两个单个客户端警报),***会通过数据库查询到所有的单个客户端,用户可挑选客户端把勾选的两个警报复制到其他单个客户端;
所述异步双工长连接警报步骤配置具体过程包括:
警报等级相关信息配置步骤,用于对警报等级、警报分类、有效时段进行参数配置,将设置的参数保存在数据库中,通过jQuery.js方式还原,并以列表方式展示在Web页面另一侧;
警报触发条件配置步骤,对警报上下行有效载荷数据包比值正常范围值进行设置,将设置的参数保存在数据库中,通过jQuery.js方式还原,并以列表方式展示在Web页面另一侧;当比值不在正常范围值内,则触发警报;
警报发送功能,用于将警报数据发送到SYSLOG或者发送到邮箱进行保存。
综上所述,由于采用了上述技术方案,本发明的有益效果是:
1.自定义警报、智能警报、异步双工长连接警报的配置、展示方式。即通过不同的树状结构还原对应警报数据实现集中,高效的管理及配置业务警报。
2.警报的停用与关闭功能便于使用者在业务逻辑需要变更或测试网络性能时能让不必要或误报的警报不再产生。
3.有效时段的配置让使用者可在指定时间段才运用该警报,减少了误报和不必要警报的产生。
4.警报的复制,方便使用者快捷高效的在不同业务下配置相同的警报。
5.在自定义警报时触发通过参考值的方式便于用户配置出准确的警报触发条件。
6.产生警报后通过SYSLOG或邮件方式告知用户警报的产生。
附图说明
本发明将通过例子并参照附图的方式说明,其中:
图1是自定义警报配置示意图。
图2是智能警报配置示意图。
图3是异步双工警报配置示意图。
图4是自定义警报添加中警报添加示意图。
图5是触发条件的与或关系组合示意图。
图6是警报触发条件设置示意图。
图7是警报模版选择示意图。
图8是警报停用示意图。
图9是应用规则的添加示意图。
图10为本发明中多路径分析图。
图11为本发明中通信路径设置界面。
图12为本发明中探针设置界面,
图13为本发明中应用配置图
图14为本发明中应用添加完成后的显示界面的树状结构图。
图15为本发明中自定义IP图
图16为本发明中自定义网段的显示界面
图17为为客户端添加完成后的显示界面。
图18为本发明中三条通信路径选择的显示界面。
图19为本发明中业务逻辑图。
具体实施方式
本说明书中公开的所有特征,或公开的所有方法或过程中的步骤,除了互相排斥的特征和/或步骤以外,均可以以任何方式组合。
本说明书中公开的任一特征,除非特别叙述,均可被其他等效或具有类似目的的替代特征加以替换。即,除非特别叙述,每个特征只是一系列等效或类似特征中的一个例子而已。
本发明相关说明:
某应用节点配置为异步双工长连接应用具体步骤是:先在右侧列表中勾选相同类型的警报。如:勾选两个单个客户端警报。那么***会通过数据库查询到所有的单个客户端,用户可挑选客户端把勾选的两个警报复制到其他单个客户端中.如图8所示。
本发明相关说明:
1、把网络中的访问客户端归类为一种节点,即互联网客户端节点。探针节点,即部署在网络中的关键数据包采集点,采集并存储网络通信数据的服务器,探针节点为固定的一类节点。互联网客户端节点可以与探针节点建立通信路径,IP节点可以与探针节点建立通信路径,探针节点之间可以建立通信路径,互联网客户端节点与IP节点不能建立通信路径。
2、通信路径节点添加步骤:当检测到用户触发通信路径节点添加条件时,本实施例中当检测到用户点击图10界面上的添加通信路径节点按钮时,通信通信路径节点的添加窗口,接收用户通过该窗口输入的节点类型及节点信息并在界面上显示一个通信路径节点,同时显示该通信路径节点的节点信息;用户在图11所示的窗口中输入信息后点击确认,便在界面中出现一个通信路径节点。当通信路径节点为IP节点时,其IP地址可以是单个IP地址或者某个网段或某个IP范围。探针添加步骤:如图12所示,根据网络中的数据采集口设置为探针,并在界面把探针显示为一类节点。参见图10中的节点197上网口及5.157net。
通信路径添加步骤:当检测到用户触发通信路径添加条件时弹出通信路径的添加窗口,接收用户通过该窗口输入的通信路径起点及终点,在起点与终点之间显示一条通信路径,通信路径的箭头指向终端。
在其他实施例中,还包括通信路径节点编辑步骤:当检测到用户将鼠标放置于通信路径节点并点击右键时弹出节点编辑窗口,窗口中设有添加通信路径按钮、编辑节点按钮及删除节点按妞。
通信路径节点编辑步骤进一步包括:
通信路径添加步骤:当检测到用户点击添加通信路径按钮时进一步弹出通信路径添加窗口,通信路径添加窗口中只需用户输入通信路径的终点,默认用户鼠标点击的通信路径节点为通信路径的起点。通信路径节点信息编辑步骤:当检测到用户点击编辑节点按钮时,弹出节点编辑窗口,供用户修改通信路径节点的节点信息。
通信路径节点删除步骤:当检测到用户点击删除节点按钮时则从界面上删除该通信路径节点。
本发明的又一实施例还可以对已添加的通信路径进行编辑操作:当检测到用户将鼠标放置于通信路径上并点击右键时,则弹出通信路径编辑窗口,所述窗口中设置有通信路径删除按钮及通信路径设置按钮。
通信路径编辑步骤进一步包括:
通信路径删除步骤:当检测到用户点击通信路径删除按钮时删除该通信路径。
通信路径设置步骤:当检测到用户点击通信路径设置按钮时弹出通信路径设置界面,所述界面显示该通信路径及添加网络设备按钮;当检测用户点击添加网络设备按钮时弹出添加网络设备界面供用户为该通信路径增加网络设备。
其中,设置n个服务器与客户端之间的通信路径步骤包括;当检测到用户点击通信路径设置按钮时弹出通信路径设置界面,所述界面显示该通信路径及添加网络设备按钮;当检测用户点击添加网络设备按钮时弹出添加网络设备界面供用户为该通信路径增加网络设备。
当检测到用户点击通信路径设置按钮时弹出通信路径设置界面,所述界面显示该通信路径及添加网络设备按钮;当检测用户点击添加网络设备按钮时弹出添加网络设备界面供用户为该通信路径增加网络设备。参见图11用户在添加业务逻辑图界面上选择应用“upmserver”,点击确定后,参见图10。
4、设置n个服务器与客户端之间的通信路径中客户端与应用是基于业务逻辑图配置获得。业务逻辑图配置过程是:
配置业务逻辑图的具体过程是:
41.首先配置应用(应用是提前配置好的)。
42.然后配置客户端(客户端我们会通过数据帮助用户获取真实环境中与应用关联的IP/网段)
43.配置通信路径(用于后期多路径分析,数据获取源的确定等)通信路径如果用户不配置如果有自动获取到的我们默认会选择一条最短的路径作为用户的通信路径;如果没有那就必须先在另一个模块配置好通信路径,因为没有路径即是代表没有数据获取源这样的路径是错误的路径
44.关联业务。即是用户配置时如果觉得这个客户端或者应用与其他业务有关联即可配置。(用于在分析时快速跳转到其他业务进行分析)。
45.业务逻辑图的合并显示(这个是为了更大的方便用户自定义逻辑图用于后期分析)。具体包括:
基于Web页面,图13为用户在业务逻辑中配置应用关系(应用数据由用户在其他配置页面已配置好)。使用者在配置业务逻辑时,对应用的选择相当重要,所以***会获取用户配置的应用方便用户进行选择。添加应用后(见图14),逻辑图和右侧树状结构均出现此应用的展示。(逻辑图通过D3.js实现,树状结构由zTree.js实现,而生成的数据是由用户的定义好的应用配置所得。在生成逻辑图节点与树状结构节点时我们会通过特定方式(时间+应用ID或客户端IP地址或网段+MD5)生成唯一加密ID用户后期警报的配置,分析等)其中逻辑图中圆圈代表了主机,方块代表了应用即代表此主机上有应用存在(均是通过D3.js向svg元素中append或者insert元素与元素数据进行绘制)。而树状结构中服务器为用户配置应用时所配置的服务器地址,而客户端中***也会自动获取用户配置应用时配置好的已添加客户端地址。如图10的客户端处可见添加按钮,方便用户自定义应用下的客户端。点击添加按钮后(见图15,图16),打开的弹出框中用户可对客户端的名称,类型(包含IP地址、网段、所有客户端),自动获取IP,自动获取网段,IP地址,网段,NAT映射,关联业务等进行配置(点击客户端对应列的编辑按钮还可以对相关配置进行编辑操作),得到如图10中“成都”客户端。其中请注意自动获取IP与自动获取网段项,此配置中的IP地址与网段均是***通过探针获取到的用户真实的客户端IP地址与网段,方便用户选择配置,也可避免用户配置错误。
配置客户端完成后可见图17,树状结构中客户端列多出了刚刚配置好的客户端。(在此步骤中会通过客户端所在的应用、时间等参数生成客户端的唯一的加密ID,此ID在通过D3.JS绘制逻辑图时也会是客户端节点的唯一ID,包括后面的分析,警报的产生都是靠此ID进行关联的,此处与上方应用添加是相同的。添加完成后通过zTree.js中的addNodes方法在树状结构中添加客户端进行显示,而编辑各种数据则是用updateNode方法,删除则是removeNode。)(客户端列后方三个按钮分别为:编辑客户端,编辑通信路径,删除客户端操作)如果此客户端到对应的应用服务器有网络通信路径(通信路径即代表网络数据从客户端到服务器的过程中经过了哪些探针,设备等。此处配置的路径会在多路径这个专利中得到体现)那么***自动会配置上一条最短的通信路径用于用户分析。如果没有路径或者路径需要重新选择,点击通信路径设置按钮后打开弹出框进行配置。路径图配置操作中的编辑按钮可对路径进行编辑(此步骤在其他页面中配置)。获取通信路径按钮,可自动获取到所有路径提供用户选择(这个通信路径图是通过D3.JS在svg中绘图自己绘制的一种路径展示。使用者可以将不同的设备、探针放置于路径中用于后期分析,而这些参数都是可以放在每个设备和探针的元素中作用于后期分析的。例如:我们会把探针的id,设备的类型、名称等放置与元素对象中)。确定好通信路径后,勾选客户端列前方的通信路径复选框可见,逻辑图中已出现自定义客户端节点到应用节点的逻辑图。且当添加的节点客户端IP地址/网段与已存在的客户端IP地址/网段绝对相同时,***会自动合并节点,应用服务器IP地址与添加的客户端存在包含关系时也会自动合并节点(如下图(见图18:CRM应用中的客户端segment为网段客户端,且配置时的网段范围为192.168.5.0/24,即代表其包含了所有5网段的IP地址。而157回溯服务器应用的服务器IP地址正好为192.168.5.157包含于5网段中。所以***会自动合并把逻辑图中的157回溯服务节点作为appMerge(appMerge中存在CRM应用与upmserver应用)的客户端进行连线)。
逻辑图节点可拖动方便用户自定义业务逻辑的布局,当节点拖动到靠近另一节点的时候会判断用户正在进行合并节点操作,并可支持用户自定义合并节点后的新名称。当两个节点合并后,如果此节点有多个主机用空心圆圈表示,多个应用用空心方块表示(如下图(见图19):appMerge节点为CRM应用与upmserver的手动合并节点,由于有多个应用存在,所以应用标识为空心方块,而clientMerge为CRM应用下的客户端client与157回溯服务器应用下的客户端client的手动合并节点,无应用所以为空心圆圈。而157回溯服务器应用与其客户端segment均无手动合并操作,所以展示为实心圆圈与方块)。
(手动合并后端实现[以下所有坐标、数据等都是在通过D3.js还原mongodb数据库中的数据用于逻辑图展现后用data方法获得]为:拖动节点的X,Y坐标与被合并点的X,Y坐标均在5像素之内,当使用者选择取消合并,会把拖动节点的X,Y坐标远离被合并点。当确定合并时,首先我们通过D3.js的filter方法找到被合并点,并强行修改其样式为空心圆,当拖动点与被合并点均为应用时会将其改变为空心圆+空心方块。然后获取到拖动点的一些重要数据[如:id,类型等]后将其添加进被合并点的指定对象mergeNode中,如A与B合并后,那么A的mergeNode就会有A-ID、A-TYPE、B-ID、B-TYPE等参数,并对被合并点的一些相关数据进行直接修改,然后删除拖动点。完成对点的修改后,判断合并点是否与其他节点有连线关系。如果有则更改连线数据中source或者target对象使其找到合并后的节点。如果合并后连线有重叠,则删掉之前拖动点所存在的连线,把被合并点的连线中的mergeLink对象数据加1。由于逻辑图与树状图存在关联关系。所以当用户取消客户端的勾选或者删除应用后,***将遍历所有节点的ID[即上方应用与客户端生成的ID]的同时会遍历节点数据mergeNode对象中所有的ID,如果是此ID存在于mergeNode中先删除mergeNode中的数据,然后删除对应的合并连线。这些操作做完后再去判断剩余的mergeNode是否有多个,且是什么类型。如果有多个,且类型仍然和之前保持一致那么此节点不发生变化,如果只剩下一个节点或者一个应用那么会修改相应的节点样式,具体判断见上方列子。删完节点信息后,判断对应的mergeLink是否有重合,有重合mergeLink数据减1,如果mergeLink本身就为0那么直接删除连线)。根据上述原理,设计如图10中客户端(成都)、应用名称(upmserver)等业务逻辑图。
根据以上配置后,用户可以配置出一份准确性高且直观易于展示理解的业务逻辑图。
实施例一:基于Web页面,图一,图二,图三分别为用户在警报配置页面中所看到的具体结果。
在图一,自定义警报配置中,包含了***中所有的业务。通过获取业务逻辑数据用zTree.js还原数据以树状结构的方式展现。树状结构的层级关系为:业务>应用>应用/服务器/客户端。每个树状节点后,列出了该节点内包含启用的警报数和警报总数。点击第一层或第二层树状结构可通过业务ID或应用ID在数据库中查询相应数据并分别查看该节点业务或应用下所有的警报,并可对警报进行编辑、停用、复制等功能。点击第三层的节点及点击应用/服务器/客户端节点因为此节点包含了业务ID,应用ID,客户端ID所以除了以上功能外还可以给对应的节点添加警报(添加警报包含了自定义添加警报与选择警报模版这两种不同的方式)。
点击添加警报按钮,打开弹出框可见(图四)以下内容:
.名称:警报的名称不能重复。
.描述:描述警报的影响、可能引起的故障等信息。
.等级:设置警报的等级,包括高、中、低3个级别。
.分类:设置警报的分类,用户可以自定义分类,也可以选择之前已经添加的分类。
.警报类型:选择警报所属类型,允许添加的警报类型与用户选中的节点有关。选中应用根节点时,不能添加任何警报。选中应用节点时,只能添加应用监控警报。选中服务器根节点时,只能添加任意服务器警报。选中单个服务器节点时,只能添加单个服务器警报。选中“IP客户端”类型节点时,只能添加单个客户端警报。单个客户端警报定义:客户端的任意一个IP满足警报条件就报警。选中“所有客户端”类型节点时,只能添加任意客户端警报。选中“网段客户端”类型节点时:未映射NAT IP的网段客户端:只能配置网段客户端警报;映射成NAT IP的网段客户端:能配置“网段客户端”警报和“单个客户端”警报。
.配置员:设置该警报的配置人员。
.有效时段:设置该警报的有效时间,***默认为所有时段。选择“指定时段”单选按钮,弹出指定时段的设置框,用户可以根据需要,指定该警报生效的时间。
.警报停用,用于设置该警报的排除时段,在停用时段内,警报不生效。
.时间桶:设置警报的时间桶,***提供了“1秒”、“10秒”和“60秒”这3种时间桶。即通过计算选择时间段内数据和是否大于配置的触发条件。
.触发条件:设置警报参数的类型和警报触发条件,支持多个警报条件之间进行“与”、“或”关系的组合,放置于触发条件下方的方框中(见图五)。点击且/或按钮时,打开弹出框(见图六)后选择指标,***会通过历史数据获取到对应选择参数类型最近三天的平均值与峰值供用户填写参数时进行参考保证了参数的准确可用性。与或关系组合展示中,开始和结束点是通过CSS中元素的before和after参数绘制而成的。当关系为或时,通过jQuery.js与递归方法向html中使用者选择的li元素通过append添加一个同级li元素进去(此li元素中包含了参数名,触发条件)。而当关系为且时,向选择的li元素中再添加一层ul与li元素。
.勾选“发送到邮箱”,弹出收信人输入框。可以自定义添加多个收信人信息。
.勾选“发送到SYSLOG”,警报将会发送到syslog中。
.自动保存数据包:设置是否自动保存数据包,以及需要保存数据包的时间范围。选择自动保存数据包后,触发该警报时,***会自动将该警报的数据包下载到服务器。
以上描述中,警报停用可用于使用者在使用过程中业务需变更修改、网络需中断检查等时候停止不必要警报的产生。而有效时段则可更高效智能的让使用者选择如工作日、特定节假日才启用警报。而触发条件通过与、或关系配置则可以让警报多样化满足多个条件警报的合集不用再像之前的一些软件一样只能进行单条件的单个配置。
配置完成后,可点击评估按钮对参数进行评估。查看此警报用于历史数据时的可用性与准确性。(见专利号:CN201510777904.X)。
点击选择警报模版按钮,打开弹出框可见(图七)以下内容:
可通过数据库获取使用者之前预先配置好的同类型警报,通过节点获取到的业务ID,应用ID,客户端ID使其快捷添加入此节点的警报列表中,重名的警报可覆盖或跳过。
在列表左上方的四个蓝色图标中,分别为启用警报、关闭警报、停用警报、复制警报。均是用于对下方列表中勾选中的警报进行批量操作。其中启用与关闭功能为直接操作。停用警报则需要配置好停用的开始时间与结束时间,设置好后***每分钟会遍历一次警报看是否达到了停用条件,如果达到条件则不触发该警报,超过结束时间***自动把警报状态改为启用。复制警报则需要通过选择节点位置获取到业务ID、应用ID、客户端ID,并且获取到勾选的警报类型,通过以上条件可以选择其余业务中对应的层级进行粘贴,复制警报是对已有警报配置运用在其他业务中的快速添加,避免使用者重复的操作提高配置过程的效率。
在图二,智能警报的节点中,只包含了允许配置智能警报的节点,即代表此条客户端到服务器的通信路径中包含了最少两个探针,通过查询所有业务下满足以上条件的所有数据,依靠zTree.js还原树状结构,树状结构的层级关系为:业务>应用>客户端。由于每个节点只能配置一个智能警报,所以在智能警报中只能点击客户端节点,若该节点在业务配置的业务逻辑图中,已经配置智能警报,点击客户端节点查询所有业务逻辑中通信路径数据并用业务ID,应用ID,客户端ID过滤到相应客户端智能警报的数据通过jQuery.js还原数据到右侧列表中,用于下一步的查看和编辑。
在图三,异步双工长连接警报中,节点只包含了异步双工长连接应用。通过应用ID过滤出警报数据后用jQuery.js还原数据到右侧列表中,用于下一步的查看和编辑。
本发明并不局限于前述的具体实施方式。本发明扩展到任何在本说明书中披露的新特征或任何新的组合,以及披露的任一新的方法或过程的步骤或任何新的组合。