当前位置:首页 > 产品测评 > 正文

海康威视iSC (iSecure Center)运维后台MQ测试工具

      Mq消息队列是种应用程序对应用程序的通信方法,实际在iSC平台上,MQ实际上是有两个的,一个用于外部事件处理的消息队列机制叫ActiveMQ,而另一个是程序内部事件处理的消息队列机制叫notify

一、ActiveMQ

对外事件的处理简称AMQ,其界面如下,可以在自检这块登录到其消息队列界面

海康威视iSC (iSecure Center)运维后台MQ测试工具  第1张

       ActiveMQ自检页面如下,有时我们判断事件是否被接收到就可以登录到这个页面,其下有主题和队列,主题是1对多,1个事件被多个消费者消费。队列是1对1,1个事件只能被1个消费者消费。因此一般情况我们判断AMQ外部事件是否正常就可以看这个界面,刷新后是否有新的事件接收。

海康威视iSC (iSecure Center)运维后台MQ测试工具  第2张

       那么内部事件处理的消息机制notify呢?是否也可以这样一眼就能看出来是否正常呢,若是不行,该如何处理,如何判断呢?因其没有相应的界面,这就需要我们使用mq工具来测试了。

二、Notify

Notify通知服务,其核心原理也是mq消息机制,其主要处理的是内部通知。例如资源变更通知等,将某个子系统的某个变更,通过notify通知服务,通知其他子系统接收变更并作出相应的处理,其位于核心服务内如下所示。

海康威视iSC (iSecure Center)运维后台MQ测试工具  第3张


三、MQClient(JAVA)

      MQClient(JAVA)是mq的测试工具,可以创建消费者,订阅事件,并从MQ中获取相应的信息,其使用方法如下:

工具位置:ftp:// hikftp.hikvision.com:400/产品资料/02.系统业务/18.软件交付/03.综合安防/01.综合安防/03.常用工具/iSC/ MQClient(JAVA).jar

  1. 设置环境变量并运行程序

(1)将工具拷贝至出问题的组件所在服务器,解压后,快速打开本文件夹命令行,shift+右键

海康威视iSC (iSecure Center)运维后台MQ测试工具  第4张


(2)为保证与服务器所处环境相同,需要设置环境变量,其环境变量加载的jar位置为平台jre18win64.1/bin目录。在上面打开的命令窗里输入,例如:

set path= D:\Program Files\hikvision\web\components\jre18win64.1\bin

海康威视iSC (iSecure Center)运维后台MQ测试工具  第5张

(3)设置完成环境变量后,运行程序,可以在命令行里输入exe名称如下,并回车:海康威视iSC (iSecure Center)运维后台MQ测试工具  第6张

 会弹出如下页面此工具加载成功

 海康威视iSC (iSecure Center)运维后台MQ测试工具  第7张


2、登录notify

(1)运行后,我们需要设置MQ测试工具的监听地址和端口,登录MQ的用户名和密码,具体的页面如下,其中信息需要去配置文件中查找。

海康威视iSC (iSecure Center)运维后台MQ测试工具  第8张


(2)以视频的配置文件为例,找到如下:

D:\Program Files\hikvision\web\components\vms.1\conf\config.properties打开,找到bic.notify的选项,其中包含IP,端口,账号,密码,密码需要使用解密工具解密

海康威视iSC (iSecure Center)运维后台MQ测试工具  第9张

 (3)填入信息

海康威视iSC (iSecure Center)运维后台MQ测试工具  第10张

3、监听队列或主题

(1)找到问题队列或主题,例如监听区域变更的主题,其监听队列名称和查找路径如下:

D:\Program Files\hikvision\web\components\tomcat85win64.1\webapps\isupm\WEB-INF\classes\application-context-notify

bic.ldap.topic.resource_change此队列即为区域资源变更需监听的主题海康威视iSC (iSecure Center)运维后台MQ测试工具  第11张


(2)找到队列或主题后,将其添加到工具的监听项中,如下:

海康威视iSC (iSecure Center)运维后台MQ测试工具  第12张


4、开始测试

(1)上述操作完成后,点击右上角的开始按钮,开启监听,bic.ldap.topic.resource_change以此队列为例,如下:

 海康威视iSC (iSecure Center)运维后台MQ测试工具  第13张

 (2)前端系统管理内新增区域测试,测试后收到消息如下。海康威视iSC (iSecure Center)运维后台MQ测试工具  第14张


可以看到Json报文,拷贝出来如下所示,此为新增区域的消息推送

{"data":{"comId":"rtree","ids":[{"DN":"regionId=4267b2a4-3526-4101-8daf-71b3e1ece978,regionId=67162a3e-2eb4-42e6-8087-ee99c4982251,regionId=61fe7cf3-04c2-41bc-ac28-87905d6d8c89,regionId=root000000,ou=region,dc=businessview,dc=platform,dc=hikvision,dc=com","indexCode":"4267b2a4-3526-4101-8daf-71b3e1ece978"}]},"operate":"add","resourceType":"region"}


核心服务提供的通用通知包括:组织、资源、人员、license、菜单、帮助、下载和服务的变更通知。Topic的命名如下表所示:


队列命名

描述

bic.ldap.topic.org_change

组织机构变更

bic.ldap.topic.person_change

人员变更

bic.core.topic.device_change

设备变更

bic.license.topic.license_change

授权变更

bic.core.topic.menu_change

菜单变更

bic.core.topic.help_change

帮助信息变更

bic.core.topic.download_change

下载信息变更

bic.core.topic.service_change

服务信息变更

bic.core.topic.netdomain_change

多线路变更通知

bic.ldap.topic.resource_change

区域变更

bic.cas.topic.sso_logout  

sso登出队列