一种基于网络服务与应用的监控分析系统的制作方法
【专利摘要】本发明提供一种基于网络服务与应用的监控分析系统,其直接采集、代理、传感器等方式获得目标的结构化资源和监控数据,并储存在特定结构的数据库中;实现从逻辑结构上查询任意目标节点和目标的结构化资源,或者任意选取结构化资源的任意节点进行水平和垂直方向的比对与分析,并输出报表和告警信息。本发明的基于网络服务与应用的监控分析系统对目标资源进行实时性监控和可配置的任务监控,进而获得实际网络中运行的网络服务与应用的运行状态,然后以图形、数据和报表等直观形式将数据分析结果提供给网络维护和管理人员;同时可对网络突发事件给出实时警告,并进行准确的网络节点定位,将发现时间降低到最小,为及时处理提供支持。
【专利说明】—种基于网络服务与应用的监控分析系统
【技术领域】
[0001]本发明涉及网络监控的【技术领域】,特别是涉及一种基于网络服务与应用的监控分析系统。
【背景技术】
[0002]目前,随着各种网络技术和网络设备迅速发展并投入实际应用与生产当中,网络环境发生了翻天覆地的变化。在具体的商业应用中,在特定网络中存在各式各样的网络服务和应用。大至全球数据中心,小至企业网络、校园网络,随着其中运行的网络服务日益重要,急需一个覆盖面广、功能强大、配置和使用灵活的监控与统计分析工具,从而在降低网络维护成本的同时,又能提供强大管理与统计分析功能。
[0003]由于网络服务与应用千差万别,对其的监控根据实际的情况需要采用不同的技术和网络协议。目前我们对监控目标提供全面的技术支持,在此基础上获得大量的结构化监控资源信息和监控数据,并使用特有的结构化存储与管理功能进行统计和分析。目前,在网络设备管理方面国内一些大型的设备供应商如华为、H3C、中兴等,都提供类似的针对网络设备的管理和监控功能,如华为的eSight、H3C的iMC等。
[0004]现有网络管理软件大部分针对网络设备进行管理,提供对网络设备的监控和管理。有些软件也会提供一些有限的针对网络服务与应用的监控,但是提供对网络服务与应用的监控软件的功能及覆盖面不够广泛。同时,现有的网络服务与应用的监控软件对于所监控目标的详细监控资源的组织、管理、查询功能非常不合理,造成的结果是可操作性差,自定义资源与监控指标的组合难以实现,资源的特定情况的横向与纵向对比无法实现,进而无法全方位、灵活的统计出选定资源的详细信息。
[0005]综上所述,随着目前网络技术的快速发展,已有的网络管理方式和方法已无法满足我们的对网络使用的需求。伴随着网络规模和复杂度的增加,网络管理和网络设备的维护所需的人力和财力越来越大,但是却远远没有达到管理的目标。
【发明内容】
[0006]鉴于以上所述现有技术的缺点,本发明的目的在于提供一种基于网络服务与应用的监控分析系统,主要应用于特定网络,如企业网,教育网等网络软硬件复杂的环境中,提供全方位的应用与网络服务的监控和分析功能,能够及时处理网络异常,发现和监控网络性能瓶颈,并将突发事故造成的影响降低到最小,从而降低了网络管理和维护成本。
[0007]为了实现上述目的,本发明提供了一种基于网络服务与应用的监控分析系统,至少包括:
[0008]数据采集模块,用于采集网络服务与应用的结构化资源数据和监控数据;
[0009]数据验证模块,用于对采集到的结构化资源数据和监控数据进行有效性验证和阈值判断;
[0010]数据处理模块,用于结构化资源数据构建结构化资源列表,根据监控数据构建指标列表;
[0011]数据管理模块,用于将结构化资源数据和监控数据进行存储管理;
[0012]数据查询与分析模块,用于对存储的结构化资源数据和监控数据进行查询和分析。
[0013]根据上述的基于网络服务与应用的监控分析系统,其中:所述数据采集模块中针对不同的监控目标采用专用的采集适配器进行数据采集。
[0014]根据上述的基于网络服务与应用的监控分析系统,其中:所述数据处理模块中,将每个种类资源的最小树形结构作为一个结构化资源模板;结构化资源列表使用结构化资源模板为蓝本,在结构化资源模板的最小规模的树形结构中扩展出一个与实际资源结构逻辑上相同的大规模树形结构。
[0015]根据上述的基于网络服务与应用的监控分析系统,其中:指标为资源的监控属性,对目标进行的监控就是对指定目标的所有规定的指标进行取值,指标模板使用结构化资源模板的形式,指标列表为树形结构。
[0016]根据上述的基于网络服务与应用的监控分析系统,其中:所述数据处理模块中,指标列表拼接到结构化资源列表之后,再加上监控资源对应的配置信息。
[0017]进一步地,根据上述的基于网络服务与应用的监控分析系统,其中:所述配置信息包括结构化资源列表的阈值上限与下限、条目的启用开关、紧急程度。
[0018]根据上述的基于网络服务与应用的监控分析系统,其中:所述数据管理模块中,按照指标的层级和结构分组将监控数据分散存储在不同的物理数据存储单元。
[0019]根据上述的基于网络服务与应用的监控分析系统,其中:在结构化资源数据和监控数据存入数据库之前,所述数据验证模块对所述结构化资源数据和监控数据进行验证,对于超过阈值的结构化资源数据和监控数据进行告警操作。
[0020]根据上述的基于网络服务与应用的监控分析系统,其中:所述数据分析与查询模块中,使用数据表格或线性图或饼图输出结果。
[0021]根据上述的基于网络服务与应用的监控分析系统,其中:所述数据分析与查询模块中,首先构建动态查询语句查询监控数据,资源数据则作为过滤条件再配合用户输入。
[0022]如上所述,本发明基于网络服务与应用的监控分析系统,具有以下有益效果:
[0023](I)具有覆盖面极为广泛的监控采集功能;
[0024](2)能够对支持的监控目标给出符合用户直观感受的、合理化的资源模板,并根据模板格式化出目标的结构化资源列表,在此基础上配合设计的特殊指标列表,高效率地实现对大数据量中采集数据的有效性和配置的阈值的验证;
[0025](3)本发明使用可配置的、分散的数据存储方式,保证了大范围的数据均匀分布和小范围的数据的有效性,即大范围数据采用宽松式存储结构和小范围数据采用资源分组的结构化存储结构;
[0026](4)由于优秀的数据存储管理,在配合资源和指标的前提下,本发明可以快速的定位数据存储位置,并且在不影响查询效率的前提下提供各种维度的数据分析对比功能。
【专利附图】
【附图说明】
[0027]图I显示为本发明的基于网络服务与应用的监控分析系统的结构示意图;[0028]图2显示为本发明中的数据采集流程图;
[0029]图3显示为本发明中的数据处理流程图;
[0030]图4显示为本发明中数据查询与分析流程图。
【具体实施方式】
[0031]以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的【具体实施方式】加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。
[0032]需要说明的是,本实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
[0033]本发明的基于网络服务与应用的监控分析系统对网络中可访问的服务与应用提供完善的监控功能,其中主要包括网络状态、目标服务与应用的可用性和目标的特定性能统计、可扩展指标等;同时提供目标服务与应用的实时状态展示和历史数据统计和分析功能,并针对获得的数据进行安全分析,以及对用户设定的条件进行分析与判断,并根据最终结果判断是否需要使用必要通知手段告知管理人员或用户。
[0034]本发明针对复杂多变的网络环境中的网络服务与应用使用,直接采集、代理、传感器等方式获得目标的结构化资源和监控数据,并储存在特定结构的数据库中,使结构化资源和监控数据维持一种物理结构上松散,但是查询和逻辑上紧密的关系。在此基础上,可以从逻辑结构上查询任意目标节点和目标的结构化资源,也可以任意选取结构化资源的任意节点进行水平和垂直方向的比对与分析,并输出报表和告警信息。
[0035]本发明的基于网络服务和应用的监控分析系统包括数据采集模块、数据处理模块、数据管理模块、数据验证模块和数据分析与查询模块。下面具体介绍各个模块的结构与功能。
[0036]( I)数据采集模块
[0037]数据采集是数据统计与管理的基础,本发明在数据采集方面做到了最大范围的覆盖,几乎覆盖到所有的网络服务和应用。其中,针对某些特殊类别,如中间件等进行了专门的采集处理,从而可全面地、系统地获得监控目标的结构化资源数据。针对某些特定目标编写专用代理,在不影响目标使用的前提下真实直接的获得结构化资源数据和监控数据。在服务器端针对不同的目标使用统一或专用的适配器对其进行数据对接,从而获得目标的结构化资源类型和资源的监控数据。
[0038]首先对资源进行定义。将监控目标,即网络服务与应用作为一个运行在IP设备上的单独实体,此实体定义为组件。组件包含很多结构化资源,即具体的数据采集对象,如一个单独进程、线程、数据库连接池等。
[0039]资源组织形式存在逻辑的包含关系。组件与资源及其下属资源存在逻辑的从属关系。该从属关系可以使用树形结构进行管理。
[0040]对于资源的管理通常遵循主观感知,但是实际的资源存在结构从数据结构和编程角度来看与主观感知不同,这时以主观感知为准,抽象出虚拟资源和资源分组的概念。如Oracle有统计前N条逻辑读、物理写等指标的需求,但是这是一个二维结构,所以这里抽象出一个分组叫做执行Top N,在这个组下面对执行Top N条语句这个资源进行管理。其中,指标是对资源的监控属性的描述。一个资源存在各个不同的属性,并且属性的数量大于等于二。对目标进行的监控就是对指定目标的所有规定的指标进行取值。
[0041]本发明中数据采集模块可通过提高硬件和网络带宽获得更好的运行速度和运行效果,在大范围高强度的监控任务下,为数据库所在磁盘保留足够剩余空间会达到很好的处理效果。
[0042]根据监控目标的多种多样,数据采集采用的具体监控方式与技术实现也千差万另IJ,为了达到统一的效果,目前的做法是针对每一种甚至每个版本的监控目标,专门采用一个采集适配器程序实现数据采集。参照图2,采用Http/Smtp/pop/Https/ftp适配器对Http/Smtp/pop/Https/ftp 目标进行数据采集;采用 DNS/WMI/JMX/SQL/Exchange 适配器对DNS/WMI/JMX/SQL/Exchange目标进行数据采集等等。
[0043]服务方面,apache基于HTTP请求服务器状态信息并进行文本解析。
[0044]邮件方面采用SMTP协议监控邮件服务器的邮件发送服务;采用POP协议监控邮件服务器的邮件接收服务;采用WMI协议监控Exchange邮件服务,包括其中运行的各个事件队列以及处理信息;使用FTP协议监控FTP服务器文件上传下载信息及目录文件。
[0045]中间件方面,websphere采用代理的方式获取读取websphere的详细状态信息,闭关通过HTTP方式返回XML格式监控数据。Tomcat采用JMX方式启动Tomcat默认的JMX服务器,远程采用JAVA内置JMX连接方式获取信息。JBoss启用JBoss内部的JMX服务,并使用JBoss提供的库文件执行JMX连接获取数据。Weblogic同样启用自带的JMX服务并使用Weblogic提供的库文件进行连接。其中Tomcat不同版本间存在取值的微弱区别,JBooss、Weblogic大版本之间取值完全不同,基本是重新实现。
[0046]数据库方面,MySQL、SQLServer、Oracle、DB2、Sybase 都升级基于 JAVA 标准的JDBC协议获取采集数据。
[0047](2)数据验证模块
[0048]在存在资源树的前提下,用户根据资源信息设置此资源的告警阈值,并在结构化资源数据进入数据库之前对其进行验证,对于超过阈值的数据将会进行告警操作。
[0049]设置告警阈值的前提是资源必须存在,也就是说采集至少成功执行一次;然后根据用户根据监控项查找资源或者根据资源查找监控项,在监控项和指标都存在的前提下,对这个指标对应的监控项设置告警阈值。
[0050]以上条件都满足后,在数据采集入库环节,已知此数据对应的监控项和资源,所以可直接获得对应的阈值,然后根据阈值设置的条件进行简单的运算与判断,并产生告警。
[0051]此功能与告警环节紧密相关,并且是建立在数据采集前提之上的,虽然在程序逻辑上是一个简单地顺序流程,但是其确实为监控的核心功能。
[0052](3)数据处理模块
[0053]参照图3,数据处理是将采集获得结构化资源数据和监控数据进行处理的过程。这个过程中会构建具体的结构化资源列表,并对结构化资源列表提供阈值设置。如果资源存在已设置好的阈值,将会在数据验证模块中对采集获得的数据进行阈值的安全性验证,超过阈值则进入通知流程。
[0054]资源存在一定的组织结构,并且每个种类资源的组织方式都不同。本发明将每个种类资源的最小树形结构制作为一个结构化资源模板。采集适配器获得的结构化资源以相应的结构化资源模板为基础。
[0055]每个指标都依赖于对应的资源,由于资源的结构化,并且为了保证未来的可扩展性,每个指标都不会存在可复用性设计,并且指标模板使用结构化资源模板的组织形式,从结构上与结构化资源模板的树形结构相对应,从而形成一个节点和相互挂接融合在一起的两个树形结构。
[0056]结构化资源列表为实际采集回来的监控目标的资源组织形式。结构化资源列表使用结构化资源模板为蓝本,在结构化资源模板的最小规模的树形结构中扩展出一个与实际资源结构逻辑上相同的大规模树形结构。以此结构作为目标资源处理的基础。
[0057]在资源列表和指标列表存在的两个前提下,可以进行给定资源对应的指标的阈值设置。为了配合用户的一般的思考习惯,使用指标列表拼接到具体资源列表的方式在选中资源后,加上挂接上去指标确定出的一个监控资源对应配置信息。配置信息包括阈值上限与下限、此条目的启用开关、紧急程度。
[0058]由于设计出特殊的资源与指标管理方式,在具体采集到的数据进行存储时就有了非常大的便利性;并且由于监控获得的数据量非常巨大,所以本发明采取了完全不同的数据存储方式。本发明按照指标的层级和结构分组将监控数据分散存储在不同的物理数据存储单元。这些单元是灵活的和可配置的,通过对单元配置的更改可以达到数据的无缝迁移和切换,进而达到资源结构和巨量的监控数据的分离,并存在一定数据结构上的可查询关联。
[0059]由于监控目标的监控线已知,所以监控项自己构成一个存在上下级关系的树形结构,这个结构同时也反应的监控目标资源结构。在监控目标资源结构的基础上,将第一次采集到的数据分离出资源信息,按照监控目标资源结构构建出一棵监控目标所包含资源的存在从属关系的树形结构。
[0060]结构化资源树与指标树拥有同样的层级关系,但是结构化资源树在规模上要大于指标树,并且结构化资源树是针对每个具体的监控目标的,如Tomcat服务器,所以实际中其资源的层级是小于等于指标树的,同时在同一级上可能存在多个同级别的监控资源,如多个线程池,多个线程的问题。对于这类资源系统会新增一个虚拟分组,作为逻辑上的资源供界面展示,但是程序对其不做任何操作。同时由于资源与监控项存在层级的对等关系,所以他们可以进行非常好的相互转换。
[0061]当第一次获得采集到的数据生成资源树后,后续的数据将会按照结构化资源树与指标树的ID被存储到不同的数据表中,进行分类管理,在数据表中数据之间没有任何关联关系,仅有的关系是数据是归属于哪个资源的。
[0062](4)数据管理模块
[0063]数据管理模块实际是对于采集到的数据进行维护和管理,由于此处的数据之间不存在任何的关联关系,所以仅仅从采集到的数据这里无法获得任何信息;同时由于采集到的数据是按照监控目标和资源分散到不同的表甚至是数据库中,所以监控数据所在的数据库实际是与具体的业务逻辑没有关系的,他们的存储位置由监控项中默认的配置决定(该配置用户无法直接进行修改)。鉴于以上原因,监控数据可以独立于主程序中相对较珍贵的数据资源,避免监控数据不断膨胀对正常业务数据造成的影响,同时对于数据的查询展示必须同时获得监控目标的指标树和结构化资源数,没有这两个信息数据将会毫无意义。所以数据安全性可以得到保障,这部分监控数据可以独立与主程序之外。
[0064]因此,需要将所有已知的监控项按照监控目标与资源层级进行分类标识,即每个监控项都有自己的唯一性标识,并支持开启和禁用此监控项。同时与具体的数据采集方法进行对应,允许动态的配置,其中,动态的配置不仅是开启与停止,还包括增加监控项和删除监控项。
[0065]因此第一次数据采集最为关键,仅仅是根据监控项信息分析出资源的层级结构来组合成一棵资源树。以后同样的资源会直接与资源树对应获得资源ID后写入数据库。监控指标的作用是指定数据的存放位置,资源ID的作用是在存放位置中根据资源ID过滤出需要的资源。
[0066](5)数据查询与分析模块。
[0067]参照图4,由于数据存储的特殊结构,在进行数据查询时也需要特殊的方法。进行统计查询时获得资源列表的资源后可以获得其表示的资源组所在的物理存储地点,再配合指标列表,就可以确定到资源所在的具体位置。同时由于数据均匀分布,所以无论数据量如何增加,对于系统的数据写入和数据搜索几乎不会造成过多的负担。
[0068]数据分析包括非常复杂的数据挖掘与输出功能。对数据存储方式有比较苛刻的要求,数据存储不恰当会造成数据分析的不准确和较长的时间。得益于资源模板与资源列表的结构化设计,以及与监控数据分离的设计,达到了数据逻辑上的最优方案,在查找到相应的资源后可以任意交叉或者横向、纵向对资源进行统计和对比;同时支持任意类型,任意层次的资源进行选择的混合资源的查询。这样达到了对实际监控目标的全局、横向、纵向和按照时间的统计与比较的目标。
[0069]由于可能存在巨量的监控数据,所以在分析结果输出上我们使用控制输出策略。即根据统计结果使用可控制间隔的采样方式输出统计结果到界面或者报表。输出结果使用数据表格,线性图、饼图等直观的方式。在保证结果的有效性前提下控制界面的用户体验和用户的可接受性。
[0070]数据查询方式与数据的存储有密切的关系。由数据的存储方式可知,对于数据的查询需要获得资源和监控指标两个条件,所以查询的入口为选择监控对象,如Tomcat。然后同阈值设置一样,选择其下的资源和相关的监控指标。这样直接构建动态查询语句查询指标对应的监控数据,而资源则作为过滤条件再配合用户输入,如时间和数据的过滤,这样就可以在不知道数据存储位置的情况下对数据进行逻辑上的查询和过滤。
[0071]综上所述,本发明的基于网络服务与应用的监控分析系统对目标资源进行实时性监控和可配置的任务监控,进而获得实际网络中运行的网络服务与应用的运行状态,然后以图形、数据和报表等直观形式将数据分析结果提供给网络维护和管理人员;同时可对网络突发事件,如网络服务停止运行、网络应用无法访问、网络中断,网站响应速度降低、DNS污染等给出实时警告,并进行准确的网络节点定位,将发现时间降低到最小,为及时处理提供支持。所以,本发明有效克服了现有技术中的种种缺点而具有高度生产利用价值。
[0072]上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属【技术领域】中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。
【权利要求】
1.一种基于网络服务与应用的监控分析系统,其特征在于,至少包括: 数据采集模块,用于采集网络服务与应用的结构化资源数据和监控数据; 数据验证模块,用于对采集到的结构化资源数据和监控数据进行有效性验证和阈值判断; 数据处理模块,用于结构化资源数据构建结构化资源列表,根据监控数据构建指标列表; 数据管理模块,用于将结构化资源数据和监控数据进行存储管理; 数据查询与分析模块,用于对存储的结构化资源数据和监控数据进行查询和分析。
2.根据权利要求I所述的基于网络服务与应用的监控分析系统,其特征在于:所述数据采集模块中针对不同的监控目标采用专用的采集适配器进行数据采集。
3.根据权利要求I所述的基于网络服务与应用的监控分析系统,其特征在于:所述数据处理模块中,将每个种类资源的最小树形结构作为一个结构化资源模板;结构化资源列表使用结构化资源模板为蓝本,在结构化资源模板的最小规模的树形结构中扩展出一个与实际资源结构逻辑上相同的大规模树形结构。
4.根据权利要求I所述的基于网络服务与应用的监控分析系统,其特征在于:指标为资源的监控属性,对目标进行的监控就是对指定目标的所有规定的指标进行取值,指标模板使用结构化资源模板的形式,指标列表为树形结构。
5.根据权利要求I所述的基于网络服务与应用的监控分析系统,其特征在于:所述数据处理模块中,指标列表拼接到结构化资源列表之后,再加上监控资源对应的配置信息。
6.根据权利要求5所述的基于网络服务与应用的监控分析系统,其特征在于:所述配置信息包括结构化资源列表的阈值上限与下限、条目的启用开关、紧急程度。
7.根据权利要求I所述的基于网络服务与应用的监控分析系统,其特征在于:所述数据管理模块中,按照指标的层级和结构分组将监控数据分散存储在不同的物理数据存储单元。
8.根据权利要求I所述的基于网络服务与应用的监控分析系统,其特征在于:在结构化资源数据和监控数据存入数据库之前,所述数据验证模块对所述结构化资源数据和监控数据进行验证,对于超过阈值的结构化资源数据和监控数据进行告警操作。
9.根据权利要求I所述的基于网络服务与应用的监控分析系统,其特征在于:所述数据分析与查询模块中,使用数据表格或线性图或饼图输出结果。
10.根据权利要求I所述的基于网络服务与应用的监控分析系统,其特征在于:所述数据分析与查询模块中,首先构建动态查询语句查询监控数据,资源数据则作为过滤条件再配合用户输入。
【文档编号】H04L12/24GK103532739SQ201310447261
【公开日】2014年1月22日 申请日期:2013年9月25日 优先权日:2013年9月25日
【发明者】苏民举 申请人:上海斐讯数据通信技术有限公司