本发明属于业务诊断技术领域,尤其涉及一种对视频监控环境的业务可用性诊断方法及装置。
背景技术:
在视频监控业务发展早期,由于业务组网中涉及组件较少,配置简单,功能较为单一,实况、回放、存储等业务可用性通常使用人工排查即可。在当前视频监控领域飞速发展情况下,各类特色功能层出不穷,组网日益复杂,且组网中各类组件及设备数量爆炸式增长,组网配置、视频业务可用性人工排查的难度越来越大。
因此,当前针对视频业务可用性出现很多诊断设备和方法,但大多数诊断方法由于涉及业务过于单一,只能简单的检测到视频质量、或设备之间网络连通性,有时发现业务不可用后,还需要人工介入排查具体原因,耗时耗力。
通过统计诊断中发现的问题来看,有近65%的问题为非软件版本问题,在这近65%的非软件版本问题中,又有33%的配置不当和18%的环境、网络因素导致的问题,而当前业务诊断方案通常只能发现大多数网络异常导致的问题,无法发现其中占异常中三分之一的配置类问题。
技术实现要素:
本发明的目的是提供一种针对视频监控环境的业务可用性诊断方法及装置,用以克服现有业务可用性诊断方法通常只针对某一种业务、功能过于单一、及异常诊断层面过浅,无法深入业务流程发现等问题
为了实现上述目的,本发明技术方案如下:
一种针对视频监控环境的业务可用性诊断方法,所述针对视频监控环境的业务可用性诊断方法,包括:
步骤1、执行业务可用性诊断任务,在发现所诊断的业务不可用时,进入下一步,否则执行下一个业务可用性诊断任务,直到所有业务可用性诊断任务执行结束;
步骤2、根据预先设定的当前所诊断的业务对应的组件进行网络连通性检查,如果连通性异常,则上报异常详情并返回步骤1执行下一个业务可用性诊断任务,否则进入下一步;
步骤3、根据预先设定的当前所诊断的业务对应的各组件的配置模板,获取各个组件的配置参数,与配置模板中的各个组件的配置参数进行对比,如果各个组件的配置参数不符合配置模板中对应的配置参数,则上报异常详情并返回步骤1执行下一个业务可用性诊断任务,否则进入下一步;
步骤4、进行信令层检查,根据错误码和具体信令信息以及关键日志,确认出错组件,返回步骤1执行下一个业务可用性诊断任务。
进一步地,所述各组件的配置模板中为每个配置参数还设置了对应的权重分值。
进一步地,所述与配置模板中的各个组件的配置参数进行对比,如果各个组件的配置参数不符合配置模板中对应的配置参数,则上报异常详情,包括:
对每个与配置模板不符合的配置参数对应的分值进行统计,如果单个组件内部配置参数对应的总分低于第一阈值,将该组件列入第一故障列表,如果单个组件内部配置参数对应的总分低于第二阈值,将该组件列入第二故障列表。
本发明还提出了一种针对视频监控环境的业务可用性诊断装置,所述针对视频监控环境的业务可用性诊断装置,包括:
可用性检测模块,用于执行业务可用性诊断任务,在发现所诊断的业务不可用时,进入连通性检查模块进行连通型检查,否则执行下一个业务可用性诊断任务,直到所有业务可用性诊断任务执行结束;
连通性检查模块,用于根据预先设定的当前所诊断的业务对应的组件进行网络连通性检查,如果连通性异常,则上报异常详情并返回可用性检测模块执行下一个业务可用性诊断任务,否则进入配置参数检查模块进行配置参数检查;
配置参数检查模块,用于根据预先设定的当前所诊断的业务对应的各组件的配置模板,获取各个组件的配置参数,与配置模板中的各个组件的配置参数进行对比,如果各个组件的配置参数不符合配置模板中对应的配置参数,则上报异常详情并返回可用性检测模块执行下一个业务可用性诊断任务,否则进入信令层检查模块进行信令层检查;
信令层检查模块,用于进行信令层检查,根据错误码和具体信令信息以及关键日志,确认出错组件,返回可用性检测模块执行下一个业务可用性诊断任务。
本发明提出的一种针对视频监控环境的业务可用性诊断方法及装置,在业务不可用的情况下,分层进行异常检查,更是从配置层面出发,运用加权衡量算法,提供更为详细、精确的视频监控业务感知的网络诊断方法。在近65%的非软件版本问题中,有33%是因为配置不当造成的,通过本发明的方法可以发现这些由于配置不当造成的异常。从历年工作量来评估的,通常每年人力投入在版本维护、局点问题处理的工作量在50%左右,按照这个50%的工作量中有33%的配置问题来看,通过本申请的方法能够将总占比达16.5%的工作量释放出来,大大降低了人工成本。本发明提供了更为深层次的异常诊断方法,提高了诊断精确度,精准发现问题所在;同时也降低了人力排查成本。
附图说明
图1为本发明一种针对视频监控环境的业务可用性诊断方法流程图。
具体实施方式
下面结合附图和实施例对本发明技术方案做进一步详细说明,以下实施例不构成对本发明的限定。
如图1所示,本发明一种针对视频监控环境的业务可用性诊断方法的实施例,包括:
步骤1、执行业务可用性诊断任务,在发现所诊断的业务不可用时,进入下一步,否则执行下一个业务可用性诊断任务,直到所有业务可用性诊断任务执行结束。
通常将业务可用性诊断根据业务生成多个业务可用性诊断任务(以下简称任务),通过人工选择或根据配置定时选择要执行的任务执行,进行业务的可用性诊断。
通常一个任务,在诊断对应的业务是否可用时,可以按照预先配置的业务检查工序针对选中的业务进行检查,例如在诊断实况业务时,可以向视频监控系统的前端设备(例如网络摄像机ipc)发起实况,如果顺利收到实况,则业务可用,否则业务不可用。本发明不限于具体的业务检查模板,针对不同的业务有不同的业务检查工序,这里不再赘述。
如果当前诊断的业务不可用,则进入下一个步骤进行进一步诊断,否则执行下一个业务可用性诊断任务,直到所有业务可用性诊断任务执行结束。
步骤2、根据预先设定的当前所诊断的业务对应的组件进行网络连通性检查,如果连通性异常,则上报异常详情并返回步骤1执行下一个业务可用性诊断任务,否则进入下一步。
本实施例在发现所诊断的业务不可用时,则开始进行后续步骤的业务异常检查。在业务异常检查中,本实施例包括网络连通性检查、配置参数检查、信令层检查等等,本发明不限于具体的检查层次,例如可以包括网络连通性检查、配置参数检查、信令层检查,也可以仅包括其中的任意两项,也可能还包括其他检查层次,例如网络协议的检查等等,根据具体的业务进行具体的设置,这里不一一列出。
容易理解的是,每个当前执行的业务可用性诊断任务,其所对应的业务都包括所涉及的组件、每个组件所对应的配置参数、所需要检查的检查层次,这些都可以预先设置,在进行业务异常检查时,按照这些预先的设置依次进行检查。
在本步骤中,根据预先设定的当前所诊断的业务对应的组件进行网络连通性检查。例如,实况业务通常涉及前端设备(ipc)、媒体服务器(ms)、客户端设备这三个组件,如果涉及转码情况则还需要转码服务器,具体某项业务涉及组件均可通过配置提前保存以便后续检查。
确认好当前业务涉及组件后,依次检查各个组件之前网络连通性,如果各个组件之前网络连通性出现异常,则立即上报异常详情并返回步骤1,不再进行下一层次的检查(配置参数检查)。在网络连通性的检查中,可以通过发包,或者ping的方法来检查,这里不限于具体的检查方法。
在网络连通性都正常时,则考虑业务不可用的是由于其他原因产生的,需要进入下一步进行下一个层次的检查。
步骤3、根据预先设定的当前所诊断的业务对应的各组件的配置模板,获取各个组件的配置参数,与配置模板中的各个组件的配置参数进行对比,如果各个组件的配置参数不符合配置模板中对应的配置参数,则上报异常详情并返回步骤1执行下一个业务可用性诊断任务,否则进入下一步。
各个组件之间网络连通性检查正常,则需要进行本步骤的检查,由于实况业务通常涉及复杂的私网穿越、码流转码的情况,此时如果配置不合理,即使各个组件之间网络是连通的,业务依然不可用。
本实施例通过sdk获取各个组件的配置参数,使用预先设定的当前所诊断的业务对应的各组件的配置模板,依次比对各个组件的配置参数,检查是否存在不符合业务需求的配置项目,如果某个组件配置参数不符合配置规则,则立即上报异常详情,并返回步骤1执行下一个业务可用性诊断任务,不再进行下一层次的检查。
在网络连通性、配置参数都正常时,则考虑业务不可用的是由于其他原因产生的,需要进入下一步进行下一个层次的检查。
需要说明的是,本实施例通过sdk获取各个组件的配置参数,是默认sdk的方法最简单,本申请也可以通过sftp、tftp等方式获取各个组件指定目录下配置文件来读取配置参数,这里不再赘述。
步骤4、进行信令层检查,根据错误码和具体信令信息以及关键日志,确认出错组件,返回步骤1执行下一个业务可用性诊断任务。
本实施例在网络连通性、设备配置检查正常时,进行信令检查,通过sdk返回错误码和具体信令信息以及关键日志,确认出错组件。在组网环境中,各个组件异常时对应错误码有一个范围限定,比如说vm组件对应错误码范围(1000~20000)、ms组件对应错误码范围(25000~35000),其他以此类推,可以根据获取到的错误码即可知道异常的组件。关于通过错误码和具体信令信息以及关键日志,确认出错组件,已经是比较成熟的技术,这里不再赘述。
本实施例信令检查默认通过sdk触发最简单,当然也可以通过将检测工具自己模拟为一个外域平台,将需要检测的组网环境作为下级域,通过常见gb28181\db33等标准域间消息交互,针对各个业务发送所需信令并接收回应判断是否正常。
同样,在信令层检查结束后,如果确认了出错组件,则当前任务结束,返回步骤1执行下一个业务可用性诊断任务。如果没有发现异常,则也返回步骤1执行下一个业务可用性诊断任务。
需要说明的是,本技术方案在所有业务可用性诊断任务都结束,或每一个业务可用性诊断任务结束时,还将检查结果输出,提供给用户参考,这里不再赘述。
容易理解的是,本实施例业务可用性诊断任务涉及的业务涵盖实况、存储、回放等各个方面,本实施例以实况业务为例进行了说明,对于其他业务同样适用。
本发明的又一个实施例,各组件的配置模板中为每个配置参数还设置了对应的权重。
例如,各个组件的配置模板中每个配置参数设置一个对应的权重,按重要程度将其分值设置为1~99不等,单个组件内部配置参数对于的总分值为100分。如果检查发现对应的配置参数与模板不符,则对应的分值为0。在检查后,对每个与配置模板不符合的配置参数对应的分值进行统计,如果单个组件内部配置参数对应的总分低于合格线(这里暂定90),说明可能存在部分配置参数不符合预期,但是不影响整体基本功能,则予以告警提示并列入第二故障点列表,同时在故障列表显示其不符合配置模板的配置参数。如果总分低于最低警戒线(这里暂定80),说明可能存在较多配置参数不符合预期,可能影响环境中业务正常使用,则直接将当前组件列入第一故障点列表,将其不符合配置模板的配置参数显示出来,并提醒用户关注。
其中,第一故障列表是在业务诊断过程中着重需要关注的地方,具体故障列表显示结果如下表所示:
表1
以下通过一个具体的实施例,来阐述本发明配置模板的具体情况。以一个实况业务为例,主要涉及的组件有:ipc、vm、ms、客户端pc,需要对vm、ms、客户端pc本地参数做配置以使业务能正常交互。
其中,vm(视频管理服务器)是视频监控系统所有业务的决策中心,vm参数配置栏中,码流格式、最大直连媒体流策略、组播地址、是否有媒体服务器且是否在线等信息正确配置,直接影响业务协商能否进行。对应的需要保存一份对应的vm配置模板,各个参数及对应的值及权重以类json文本格式展现如下:
客户端pc由于可能涉及私网穿越,目前传输协议均需要使用tcp传输协议,同时实况码流需要经过ms,则需要配置媒体传输协议、媒体服务器选择策略、回放/下载服务策略、录像回放传输协议等,对应的需要保存一份对应的客户端pc配置模板,各个参数及对应的值及权重以类json文本格式展现如下:
ms(媒体服务器)由于和客户端pc处于不同私网内,所以需要对外映射出一个公网地址,并将预先在路由器上映射的公网地址写入ms配置文件,则需要配置是否启用nat、映射后的公网地址、映射后的公网端口等,对应的需要保存一份对应的ms配置模板,各个参数及对应的值及权重以类json文本格式展现如下:
本技术方案在检查到业务异常后,依次获取vm、客户端、ms相关配置参数,与预先内置的配置模板做比较,有发现异常的项目,以直观的告警方式显示出来。一个典型的显示结果如下表:
表2
本发明技术方案,提供了更为深层次的异常诊断方法,提高了诊断精确度,精准发现问题所在;同时也降低了人力排查成本。
与上述方法对应的,这里还给出了一种针对视频监控环境的业务可用性诊断装置的实施例,所述针对视频监控环境的业务可用性诊断装置,包括:
可用性检测模块,用于执行业务可用性诊断任务,在发现所诊断的业务不可用时,进入连通性检查模块进行连通型检查,否则执行下一个业务可用性诊断任务,直到所有业务可用性诊断任务执行结束;
连通性检查模块,用于根据预先设定的当前所诊断的业务对应的组件进行网络连通性检查,如果连通性异常,则上报异常详情并返回可用性检测模块执行下一个业务可用性诊断任务,否则进入配置参数检查模块进行配置参数检查;
配置参数检查模块,用于根据预先设定的当前所诊断的业务对应的各组件的配置模板,获取各个组件的配置参数,与配置模板中的各个组件的配置参数进行对比,如果各个组件的配置参数不符合配置模板中对应的配置参数,则上报异常详情并返回可用性检测模块执行下一个业务可用性诊断任务,否则进入信令层检查模块进行信令层检查;
信令层检查模块,用于进行信令层检查,根据错误码和具体信令信息以及关键日志,确认出错组件,返回可用性检测模块执行下一个业务可用性诊断任务。
本实施例针对视频监控环境的业务可用性诊断装置作为测试工具使用,可以是一台电脑或服务器,也可以是包括处理器以及存储有若干计算机指令的非易失性存储器,该处理器执行计算机指令来实现上述针对视频监控环境的业务可用性诊断方法。
以上实施例仅用以说明本发明的技术方案而非对其进行限制,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
1.一种针对视频监控环境的业务可用性诊断方法,其特征在于,所述针对视频监控环境的业务可用性诊断方法,包括:
步骤1、执行业务可用性诊断任务,在发现所诊断的业务不可用时,进入下一步,否则执行下一个业务可用性诊断任务,直到所有业务可用性诊断任务执行结束;
步骤2、根据预先设定的当前所诊断的业务对应的组件进行网络连通性检查,如果连通性异常,则上报异常详情并返回步骤1执行下一个业务可用性诊断任务,否则进入下一步;
步骤3、根据预先设定的当前所诊断的业务对应的各组件的配置模板,获取各个组件的配置参数,与配置模板中的各个组件的配置参数进行对比,如果各个组件的配置参数不符合配置模板中对应的配置参数,则上报异常详情并返回步骤1执行下一个业务可用性诊断任务,否则进入下一步;
步骤4、进行信令层检查,根据错误码和具体信令信息以及关键日志,确认出错组件,返回步骤1执行下一个业务可用性诊断任务。
2.根据权利要求1所述的针对视频监控环境的业务可用性诊断方法,其特征在于,所述各组件的配置模板中为每个配置参数还设置了对应的权重分值。
3.根据权利要求2所述的针对视频监控环境的业务可用性诊断方法,其特征在于,所述与配置模板中的各个组件的配置参数进行对比,如果各个组件的配置参数不符合配置模板中对应的配置参数,则上报异常详情,包括:
对每个与配置模板不符合的配置参数对应的分值进行统计,如果单个组件内部配置参数对应的总分低于第一阈值,将该组件列入第一故障列表,如果单个组件内部配置参数对应的总分低于第二阈值,将该组件列入第二故障列表。
4.一种针对视频监控环境的业务可用性诊断装置,其特征在于,所述针对视频监控环境的业务可用性诊断装置,包括:
可用性检测模块,用于执行业务可用性诊断任务,在发现所诊断的业务不可用时,进入连通性检查模块进行连通型检查,否则执行下一个业务可用性诊断任务,直到所有业务可用性诊断任务执行结束;
连通性检查模块,用于根据预先设定的当前所诊断的业务对应的组件进行网络连通性检查,如果连通性异常,则上报异常详情并返回可用性检测模块执行下一个业务可用性诊断任务,否则进入配置参数检查模块进行配置参数检查;
配置参数检查模块,用于根据预先设定的当前所诊断的业务对应的各组件的配置模板,获取各个组件的配置参数,与配置模板中的各个组件的配置参数进行对比,如果各个组件的配置参数不符合配置模板中对应的配置参数,则上报异常详情并返回可用性检测模块执行下一个业务可用性诊断任务,否则进入信令层检查模块进行信令层检查;
信令层检查模块,用于进行信令层检查,根据错误码和具体信令信息以及关键日志,确认出错组件,返回可用性检测模块执行下一个业务可用性诊断任务。
5.根据权利要求4所述的针对视频监控环境的业务可用性诊断装置,其特征在于,所述各组件的配置模板中为每个配置参数还设置了对应的权重分值。
6.根据权利要求5所述的针对视频监控环境的业务可用性诊断装置,其特征在于,所述与配置模板中的各个组件的配置参数进行对比,如果各个组件的配置参数不符合配置模板中对应的配置参数,则上报异常详情,包括:
对每个与配置模板不符合的配置参数对应的分值进行统计,如果单个组件内部配置参数对应的总分低于第一阈值,将该组件列入第一故障列表,如果单个组件内部配置参数对应的总分低于第二阈值,将该组件列入第二故障列表。
技术总结