CN115051979B - 监控数据调试系统、方法、车辆和计算机可读存储介质 - Google Patents
监控数据调试系统、方法、车辆和计算机可读存储介质 Download PDFInfo
- Publication number
- CN115051979B CN115051979B CN202210459936.5A CN202210459936A CN115051979B CN 115051979 B CN115051979 B CN 115051979B CN 202210459936 A CN202210459936 A CN 202210459936A CN 115051979 B CN115051979 B CN 115051979B
- Authority
- CN
- China
- Prior art keywords
- data
- monitoring data
- middleware
- target monitoring
- event
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
- H04L67/025—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3065—Monitoring arrangements determined by the means or processing involved in reporting the monitored data
- G06F11/3072—Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/04—Processing captured monitoring data, e.g. for logfile generation
- H04L43/045—Processing captured monitoring data, e.g. for logfile generation for graphical visualisation of monitoring data
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Quality & Reliability (AREA)
- Signal Processing (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请涉及一种监控数据调试系统、方法、车辆和计算机可读存储介质。系统包括:上位机和下位机,上位机与下位机连接;上位机包括终端界面和第一中间件,下位机包括第二中间件;第一中间件与第二中间件之间建立发布订阅模式关系;终端界面用于输入终端控制命令;第一中间件用于向第二中间件发布终端控制命令对应的事件;第二中间件用于接收事件,根据事件获取目标监控数据,并向第一中间件发布目标监控数据,使得第一中间件将目标监控数据发送至终端界面;目标监控数据为与事件对应的监控数据,采用本方法解决了在进行监控系统数据调试时无法针对其中特定的信息进行关闭或筛选显示,提高了监控调试系统数据输出的灵活性和查看效率。
Description
技术领域
本申请涉及汽车电子技术领域,特别是涉及一种监控数据调试系统、方法、车辆和计算机可读存储介质。
背景技术
随着自动驾驶技术的迅速发展,基于多核平台的面向服务的体系结构(Service-Oriented Architecture,简称为SOA)中间件逐渐成为自动驾驶领域的主流形式。在基于SOA中间件进行功能开发及运行调试过程中,运行负载及线程状态等调试监控信息是开发者开发调试过程中必不可少的数据参照,大量的调试监控数据不仅能够保障功能的稳定性,还能通过数据更快的定位问题优化功能。
目前,调试程序较常用的方式是在程序中预先设置调试打印信息并通过串口或网口连接查看,这种方式仅能显示程序预设的打印信息,无法针对其中特定的信息进行关闭或筛选显示。
发明内容
基于此,有必要针对上述技术问题,提供一种监控数据调试系统、方法、车辆和计算机可读存储介质。
第一方面,本申请提供了一种监控数据调试系统。所述系统包括:
上位机和下位机,所述上位机与所述下位机连接;所述上位机包括终端界面和第一中间件,所述下位机包括第二中间件;所述第一中间件与所述第二中间件之间建立发布订阅模式关系;
所述终端界面用于输入终端控制命令;
所述第一中间件用于接收所述终端控制命令,并向所述第二中间件发布所述终端控制命令对应的事件;
所述第二中间件用于接收所述事件,根据所述事件获取目标监控数据,并向所述第一中间件发布所述目标监控数据,使得所述第一中间件将所述目标监控数据发送至所述终端界面;所述目标监控数据为与所述事件对应的监控数据。
在其中一个实施例中,所述第二中间件还包括监控服务模块、多个数据监控模块和多个功能数据节点;所述数据监控模块与所述监控服务模块连接;所述功能数据节点与所述数据监控模块连接;所述数据监控模块的数量与所述第二中间件中的进程数量相同;
所述功能数据节点用于采集目标监控数据;
所述监控服务模块用于接收所述事件,并向所述数据监控模块发布所述事件;
所述数据监控模块用于接收所述事件,并在接收所述事件后通知所述功能数据节点上报所述目标监控数据,使得所述数据监控模块将所述目标监控数据发送至所述监控服务模块,所述监控服务模块将所述目标监控数据发送至所述上位机。
在其中一个实施例中,所述监控服务模块通过下述方式将所述目标监控数据发送至所述上位机:
所述监控服务模块用于根据所述目标监控数据确定所述目标监控数据的长度,根据所述目标监控数据的长度定义所述目标监控数据的名称,获取数据链路映射关系和所述监控服务模块对应的发布节点名称,根据所述数据链路映射关系、所述监控数据的名称和所述监控服务模块对应的发布节点名称,确定所述目标监控数据对应的数据链路,通过所述数据链路将所述目标监控数据发送至所述上位机;所述数据链路映射关系表示监控数据名称、发布节点名称与数据链路之间的映射关系。
在其中一个实施例中,所述终端界面包括命令输入窗口、监控数据可视化显示窗口和监控数据文本输出窗口;
所述命令输入窗口用于输入所述终端控制命令;
所述监控数据文本输出窗口用于以文本的形式显示所述目标监控数据;
所述监控数据可视化显示窗口用于显示与所述目标监控数据对应的变化曲线图。
在其中一个实施例中,所述向所述第一中间件发布所述目标监控数据,之后包括:
所述第一中间件用于接收所述目标监控数据,将所述目标监控数据串化为json数据格式,得到字符串后的目标监控数据,并将所述字符串后的目标监控数据发送至所述终端界面;
所述终端界面用于接收所述字符串后的目标监控数据,将所述字符串后的目标监控数据转化为字典数据格式,并显示转化后的目标监控数据。
第二方面,本申请还提供了一种监控数据调试方法。应用于监控数据调试系统,所述系统包括上位机和下位机,所述上位机与所述下位机连接;所述上位机包括终端界面和第一中间件,所述下位机包括第二中间件;
所述方法包括:
接收事件,根据所述事件获取目标监控数据,并向所述第一中间件发布所述目标监控数据,使得所述第一中间件将所述目标监控数据发送至所述终端界面;所述事件为所述第一中间件根据所述终端界面输入的数据控制指令确定的事件;所述目标监控数据为与所述事件对应的监控数据。
在其中一个实施例中,所述向所述第一中间件发布所述目标监控数据,包括:
根据所述目标监控数据确定所述目标监控数据的长度;
根据所述目标监控数据的长度定义所述目标监控数据的名称;
获取数据链路映射关系和所述目标监控数据对应的发布节点名称;所述数据链路映射关系表示监控数据名称、发布节点名称与数据链路之间的映射关系;
根据所述数据链路映射关系、所述目标监控数据对应的发布节点名称和所述监控数据的名称,确定所述目标监控数据对应的数据链路;
通过所述数据链路向所述第一中间件发布所述目标监控数据。
第三方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
接收事件,根据所述事件获取目标监控数据,并向所述第一中间件发布所述目标监控数据,使得所述第一中间件将所述目标监控数据发送至所述终端界面;所述事件为所述第一中间件根据所述终端界面输入的数据控制指令确定的事件;所述目标监控数据为与所述事件对应的监控数据。
第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
接收事件,根据所述事件获取目标监控数据,并向所述第一中间件发布所述目标监控数据,使得所述第一中间件将所述目标监控数据发送至所述终端界面;所述事件为所述第一中间件根据所述终端界面输入的数据控制指令确定的事件;所述目标监控数据为与所述事件对应的监控数据。
第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
接收事件,根据所述事件获取目标监控数据,并向所述第一中间件发布所述目标监控数据,使得所述第一中间件将所述目标监控数据发送至所述终端界面;所述事件为所述第一中间件根据所述终端界面输入的数据控制指令确定的事件;所述目标监控数据为与所述事件对应的监控数据。
上述监控数据调试系统、方法、车辆和计算机可读存储介质,通过在上位机、下位机中分别增加第一中间件和第二中间件,第一中间件与所述第二中间件之间建立发布订阅模式关系,因此,在终端界面用于输入终端控制命令时,第一中间件可以接收所述终端控制命令,并向所述第二中间件发布所述终端控制命令对应的事件,其中,终端控制命令可以对特定的信息进行关闭和筛选显示,即使用者可以通过终端界面自定义输出当前监控调试系统输出的内容,第二中间件可以接收所述事件,根据所述事件获取目标监控数据,并向所述第一中间件发布所述目标监控数据,使得所述第一中间件将所述目标监控数据发送至所述终端界面;所述目标监控数据为与所述事件对应的监控数据,解决了在进行监控系统数据调试时无法针对其中特定的信息进行关闭或筛选显示,提高了监控调试系统数据输出的灵活性和查看效率。
附图说明
图1为一个实施例中一种监控数据调试系统的结构示意图;
图2为一个实施例中另一种监控数据调试系统的结构示意图;
图3为一个实施例中目标监控数据的组成示意图;
图4为一个实施例中目标监控数据名称与数据链路之间映射关系的示意图;
图5为一个实施例中终端界面的组成示意图;
图6为一个实施例中监控数据调试系统的数据流向示意图;
图7为一个实施例中又一种监控数据调试系统的结构示意图;
图8为一个实施例中监控数据调试系统的应用环境示意图;
图9为一个实施例中监控数据调试系统的通信链路示意图;
图10为一个实施例中一种监控数据调试系统的数据采集管理示意图;
图11为一个实施例中另一种监控数据调试系统的数据采集管理示意图;
图12为一个实施例中向第一中间件发布目标监控数据方法的流程示意图;
图13为一个实施例中监控数据调试方法的终端的硬件结构框图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
除另作定义外,本申请所涉及的技术术语或者科学术语应具有本申请所属技术领域具备一般技能的人所理解的一般含义。在本申请中的“一”、“一个”、“一种”、“该”、“这些”等类似的词并不表示数量上的限制,它们可以是单数或者复数。在本申请中所涉及的术语“包括”、“包含”、“具有”及其任何变体,其目的是涵盖不排他的包含;例如,包含一系列步骤或模块(单元)的过程、方法和系统、产品或设备并未限定于列出的步骤或模块(单元),而可包括未列出的步骤或模块(单元),或者可包括这些过程、方法、产品或设备固有的其他步骤或模块(单元)。在本申请中所涉及的“连接”、“相连”、“耦接”等类似的词语并不限定于物理的或机械连接,而可以包括电气连接,无论是直接连接还是间接连接。在本申请中所涉及的“多个”是指两个或两个以上。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。通常情况下,字符“/”表示前后关联的对象是一种“或”的关系。在本申请中所涉及的术语“第一”、“第二”、“第三”等,只是对相似对象进行区分,并不代表针对对象的特定排序。
在一个实施例中,如图1所示,提供了一种监控数据调试系统,该系统包括:上位机11和下位机12,上位机11与下位机12连接;上位机11包括终端界面13和第一中间件14,下位机12包括第二中间件15;第一中间件14与第二中间件15之间建立发布订阅模式关系;
终端界面13用于输入终端控制命令;
第一中间件14用于接收终端控制命令,并向第二中间件15发布终端控制命令对应的事件;
第二中间件15用于接收事件,根据事件获取目标监控数据,并向第一中间件14发布目标监控数据,使得第一中间件14将目标监控数据发送至终端界面13;目标监控数据为与事件对应的监控数据。
具体地,使用者可以在终端界面13自定义的输入终端控制命令,通过终端控制命令可以来筛选和/或开关相应的监控调试信息,比如,在夜晚使用场景可以通过在终端界面13输入终端控制命令开启红外摄像头的监控调试信息,关闭彩色摄像头的监控调试信息,在白天使用场景中可以通过在终端界面13输入终端控制命令关闭红外摄像头的监控调试信息,开启彩色摄像头的监控调试信息。
示例的,第一中间件14与第二中间件15之间可以通过数据分发服务(DataDistribution Service,DDS)建立发布订阅模式关系,需要说明的是,DDS以数据为中心的发布-订阅模型为所有分布式节点之间建立了一个虚拟共享的全局数据空间GDS。在该模型下分布式节点在网络上以发布或订阅的方式传输数据,节点可以是发布者和/或订阅者。
通过上述方式,第一中间件14与第二中间件15之间建立发布订阅模式关系,因此,第一中间件14可以接收终端控制命令,并向第二中间件15发布终端控制命令对应的事件,其中,终端控制命令可以对特定的信息进行关闭和筛选显示,第二中间件15可以根据事件获取目标监控数据,并向第一中间件14发布目标监控数据,使得第一中间件14将目标监控数据发送至终端界面13;目标监控数据为与事件对应的监控数据,即使用者可以通过终端控制命令自定义的获取监控调试数据,解决了在进行监控系统数据调试时无法针对其中特定的信息进行关闭或筛选显示,提高了监控调试系统数据输出的灵活性和查看效率。
另外,在进行监控数据调试时,多核、多进程运行输出的调试监控信息于同一个终端界面13进行显示,会造成输出的调试监控信息混杂的情况,导致开发调试人员查看不便或监控信息混淆,本申请通过下述方式解决该问题。
在一个实施例中,如图2所示,第二中间件15还包括监控服务模块20、多个数据监控模块22和多个功能数据节点24;数据监控模块22与监控服务模块20连接;功能数据节点24与数据监控模块22连接;数据监控模块22的数量与第二中间件15中的进程数量相同;
功能数据节点24用于采集目标监控数据;
监控服务模块20用于接收事件,并向数据监控模块发布事件;
数据监控模块22用于接收事件,并在接收事件后通知功能数据节点24上报目标监控数据,使得数据监控模块22将目标监控数据发送至监控服务模块20,监控服务模块20将目标监控数据发送至上位机11。
具体地,功能数据节点24包括以下至少之一:
雷达、摄像头、进程负载数据节点、核温数据节点和用户自定义节点。
在第二中间件15的每个进程上部署一个数据监控模块22,监控服务模块20与数据监控模块22之间建立发布订阅模式关系,从而监控服务模块20可以向数据监控模块22发布事件,数据监控模块22可以将功能数据节点24上报的目标监控数据发送至监控服务模块20。
可以理解的,在本实施例中,在第二中间件15的每个进程上部署一个数据监控模块22,可以分别去查看每个进程对应的监控调试数据,并可以将每个进程对应的调试监控数据独立的显示至终端界面13,解决了开发调试人员查看不便或监控信息混淆的问题,提高了查看监控调试信息的准确率和效率。
在一个实施例中,监控服务模块20通过下述方式将目标监控数据发送至上位机:
监控服务模块20用于根据目标监控数据确定目标监控数据的长度,根据目标监控数据的长度定义目标监控数据的名称,获取数据链路映射关系和监控服务模块20对应的发布节点名称,根据数据链路映射关系、监控数据的名称和监控服务模块20对应的发布节点名称,确定目标监控数据对应的数据链路,通过数据链路将目标监控数据发送至上位机11;数据链路映射关系表示监控数据名称、发布节点名称与数据链路之间的映射关系。
具体地,不同的监控服务模块20对应的发布节点不同,本实施例中用发布节点名称去区分不同的监控服务模块20管理的监控数据;本实施例中可以用目标监控数据的长度来唯一确定上报的目标监控数据具体是哪个功能数据节点采集的数据,示例的,目标监控数据的组成示意图如图3所示,位选数据前16位(即0-15位)用于表示中间件定义接口数据(如雷达、摄像头数据等),其大小为接口数据类型大小;后16位(即16-31位)用于表示用户自定义变量数据,其数据类型根据不同位表示不同类型变量数据,16-23位表示8字节整型变量数据,24-31位表示8字节浮点变量数据,每一位以0、1表示该位代表数据是否存在,0为数据不存在,1为数据存在,图3所示的监控数据中包括摄像头数据、雷达1数据和雷达5数据;
假设目标监控数据都是通过同一个监控服务模块20将目标监控数据发送至上位机11,那可以通过哈希表来定义目标监控数据的名称与数据链路之间的映射关系,如图4所示,图4为一个实施例中目标监控数据名称与数据链路之间映射关系的示意图,使用哈希映射表保存监控数据路由关系,数据发布时通过目标监控数据名称计算哈希键值查询获取对应数据链路,并通过该数据链路发送目标监控数据至上位机,目标监控数据名称定义方式以数据大小对齐8+(n*16)字节,如数据大小为24字节的目标监控数据名称为DATA_24BYTE、目标监控数据大小为40字节的数据名称为DATA_40BYTE;上位机11接收到目标监控数据后解析数据,目标监控数据中前8字节为位选数据,用于保存目标监控数据的组成,根据该位选数据解析目标监控数据,得到终端控制命令对应的调试数据。
可以理解的,在本实施例中,不同的监控服务模块20用不同的发布节点名称来区分,不同功能数据节点上报的目标监控数据的长度来定义目标监控数据的名称,从而根据目标监控数据的名称能够具体确实是哪些功能数据节点上报的数据,进一步的,根据目标监控数据的名称和发布节点名称来确定唯一的数据链路,因此,不同发布节点管理的数据通过不同的数据链路发送至上位机,同一发布节点管理的不同的目标监控数据通过不同的数据链路发送至上位机,避免不同发布节点或者同一发布节点发送的监控数据之间的混淆。
在一个实施例中,如图5所示,终端界面13包括命令输入窗口、监控数据可视化显示窗口和监控数据文本输出窗口;
命令输入窗口用于输入终端控制命令;
监控数据文本输出窗口用于以文本的形式显示目标监控数据;
监控数据可视化显示窗口用于显示与目标监控数据对应的变化曲线图。
具体地,命令输入窗口用于用户输入终端控制命令,并反馈命令输入错误及帮助信息;监控数据文本输出窗口用于以文本形式输出上位机11收到的目标监控数据,文本形式文件包括excel表格文件;监控数据可视化显示窗口用于输出上位机收到的目标监控数据的变化曲线,可有多个显示子窗口显示不同监控数据的变化曲线。
通过上述方式,使用终端界面13显示相应数据变化曲线,从而直观表现目标监控数据,提高数据查看效率;同时记录输出文本日志文件及csv数据文件,方便后期日志查看及数据变化曲线重绘分析。
在一个实施例中,向第一中间件14发布目标监控数据,之后包括:
第一中间件14用于接收目标监控数据,将目标监控数据串化为json数据格式,得到字符串后的目标监控数据,并将字符串后的目标监控数据发送至终端界面13;
终端界面13用于接收字符串后的目标监控数据,将字符串后的目标监控数据转化为字典数据格式,并显示转化后的目标监控数据。
具体地,如图6所示,图6为一个实施例中监控数据调试系统的数据流向示意图,用户在终端界面13输入终端控制命令,终端界面13进程通过共享内存发送终端控制命令至上位机中间件;上位机中间件接收到控制命令后发布命令对应事件至下位机中间件节点;下位机接收到事件后于监控服务模块中提取事件对应的调试监控数据,再通过下位机中间件向上位机中间件发布调试监控数据;上位机中间件接收到数据后将其字符串化为json数据格式,并通过共享内存将串化后的数据发送至终端界面进程;终端界面进程接收到数据后将其反字符串化重新转化为字典形式保存,处理后于调试监控数据输出窗口输出,并针对不同数据绘制数据变化曲线图显示。
通过上述方式,将目标监控数据先串化为json数据格式,并将字符串后的目标监控数据发送至终端界面13,进一步的,终端界面13可以将json数据格式转化为字典数据格式,从而能够在终端界面13显示目标监控数据。
在一个实施例中,如图7所示,提供了又一种监控数据调试系统,该监控数据调试系统可应用于图8的应用环境中,如图8所示,域控制器可为整车车载域控制器也可为单独域控制器开发板,在域控制器运行过程中,使用车载以太网转接与上位机进行物理网络连接,上位机可实时获取域控制器的调试监控信息,并绘制变化曲线显示;上位机可通过输入命令切换或关闭调试监控信息,同时可输出文本及表格形式记录当前调试监控信息用作后期重绘分析。其中上位机可为但不限于各种个人计算机、笔记本等终端设备。
该监控数据调试系统包括上位机71和下位机72,在Windows平台上位机71中部署一套简易中间件,实现命令及监控调试数据转发功能,通过DDS构建通讯数据链路,上位机71中的中间件与下位机72中间件间建立节点发布订阅关系,上位机71及下位机72间同一节点发布或订阅不同监控调试数据通过定义不同数据名进行区分,具体地,请参阅图9,上位机71中间件与下位机72中间件间建立一组DDS节点用于事件的发布订阅,一组DDS节点用于调试监控数据的发布订阅。下位机72接收到上位机71事件请求后,主动周期性上报发布调试监控数据,实时上传调试监控数据至上位机71终端输出显示;
具体地,用户通过终端界面输入终端控制命令,终端界面获取终端控制命令并解析,判断终端控制命令是否有效,若输入终端控制命令异常,放弃该条命令并于终端界面反馈错误信息,等待下条终端控制命令输入,若输入的终端控制命令有效,则处理该命令并发送命令对应的事件至上位机中间件。上位机中间件周期性检测当前共享内存数据,当捕获到命令事件传入后,通过DDS链路向下位机发布命令事件数据;下位机中间件接收到事件数据后,解析命令事件数据,并通知监控服务端获取对应的调试监控数据,通过DDS链路回传至上位机中间件。上位机中间件接收到数据后,根据回传数据中的位选数据,解析提取对应数据格式,并转化数据形式后写入共享内存,传至终端界面进程;终端界面进程捕获到数据传入后,解析事件数据保存,转化为文本形式输出至输出窗口,并实时绘制各数据变化曲线显示。
示例的,记录调试监控数据流程主要包含,用户启动记录功能,记录调试监控数据,用户停止记录功能将记录数据输出至文件。其中,用户于命令输入界面输入“record”命令,终端界面进程启动数据记录功能,并等待调试监控输入。终端界面进程捕获到调试监控数据后,将输出显示文本信息记录添加事件信息后保存至文本对象中,同时保存曲线绘制数据至表格对象中。用户于命令输入界面输入“record stop”命令,终端界面进程停止数据记录功能,将输出文本写入文本文件,同时将可视化数据以CSV格式存储,完成该次调试监控数据记录。
另外,上位机中间件与终端界面进程间使用两片共享内存进行终端命令及调试监控数据的异步传输。请参阅图10,下位机中间件内部通过在每个进程(或处理核)上部署一个数据调试监控模块作为监控客户端,并于主进程上部署一个监控服务端;监控客户端周期性于底层软件、应用功能及中间件内部中获取本进程(或处理核)的调试监控数据,并主动上报至监控服务端集中管理,需要说明的是,本实施例中的监控客户端为上文的数据监控模块,本实施例中的监控服务端为上文中的监控服务模块。
此外,请继续参阅图11,各进程内部监控客户端与功能数据节点间建立数据发布订阅关系,如雷达、摄像头等传感器功能模块数据,进程负载、核温等物理数据以及用户自定义变量自定义数据;监控客户端接收到监控服务端下发的事件命令后通知对应一个或多个功能数据节点,周期性上报相应数据至监控客户端汇总。
可以理解的,在本实施例中,通过命令交互形式控制调试监控功能,使用终端界面中的命令窗口输入来筛选或开关相应功能、模块的调试监控信息,即由使用者自定义当前输出调试监控信息内容,从而提高数据监控调试输出的灵活性与查看效率;另外,通过基于中间件构建上位机调试监控信息接收端,与下位机间以广播形式建立节点发布订阅关系,无需设置目标地址端口,通讯协议内化,无连接工具依赖,从而简化终端连接方式;此外,下位机中间件内部建立监控系统,集中多核、多进程调试监控数据管理,通过同一进程统一管理输出,保证调试监控信息输出同步,从而保证输出调试监控信息的完整性与独立性,使用界面显示相应数据变化曲线,从而直观表现调试监控数据,提高数据查看效率;同时记录输出文本日志文件及csv数据文件,方便后期日志查看及数据变化曲线重绘分析。
在一个实施例中,提供了一种监控数据调试方法,应用于监控数据调试系统,系统包括上位机和下位机,上位机与下位机连接;上位机包括终端界面和第一中间件,下位机包括第二中间件;
该监控数据调试方法包括:
第二中间件接收事件,根据事件获取目标监控数据,并向第一中间件发布目标监控数据,使得第一中间件将目标监控数据发送至终端界面;事件为第一中间件根据终端界面输入的数据控制指令确定的事件;目标监控数据为与事件对应的监控数据。
具体地,用户在终端界面输入终端控制命令;第一中间件用于接收终端控制命令,并向第二中间件发布终端控制命令对应的事件。
可以理解的,在本实施例中,通过命令交互形式控制调试监控功能,使用终端界面中的命令窗口输入来筛选或开关相应功能、模块的调试监控信息,即由使用者自定义当前输出调试监控信息内容,从而提高数据监控调试输出的灵活性与查看效率;另外,通过基于中间件构建上位机调试监控信息接收端,与下位机间以广播形式建立节点发布订阅关系,无需设置目标地址端口,通讯协议内化,无连接工具依赖,从而简化终端连接方式。
在一个实施例中,如图12所示,向第一中间件发布目标监控数据,包括如下步骤:
步骤1201,根据目标监控数据确定目标监控数据的长度。
步骤1202,根据目标监控数据的长度定义目标监控数据的名称。
步骤1203,获取数据链路映射关系和目标监控数据对应的发布节点名称;数据链路映射关系表示监控数据名称、发布节点名称与数据链路之间的映射关系。
步骤1204,根据数据链路映射关系、目标监控数据对应的发布节点名称和监控数据的名称,确定目标监控数据对应的数据链路。
步骤1205,通过数据链路向第一中间件发布目标监控数据。
可以理解的,在本实施例中,不同的监控服务模块用不同的发布节点名称来区分,不同功能数据节点上报的目标监控数据的长度来定义目标监控数据的名称,进一步的,根据目标监控数据的名称和发布节点名称来确定唯一的数据链路,因此,不同发布节点管理的数据通过不同的数据链路发送至上位机,同一发布节点管理的不同的目标监控数据通过不同的数据链路发送至上位机,避免不同发布节点或者同一发布节点发送的监控数据之间的混淆。
应该理解的是,虽然如上的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
在本实施例中提供的方法实施例可以在终端、计算机或者类似的运算装置中执行。比如在终端上运行,图13是本申请实施例提供的一种监控数据调试方法的终端的硬件结构框图。如图13所示,终端可以包括一个或多个(图13中仅示出一个)处理器1301和存储器1302,其中,处理器1301可以包括但不限于中央处理单元CPU、微处理器MCU或可编程逻辑器件FPGA等的处理装置,存储器1302可以包括只读存储器ROM和/或随机访问存储器RAM,处理器1301可以根据存储在ROM中的计算机程序指令或者从存储单元1307加载到RAM中的计算机程序指令,来执行各种适当的动作和处理。在RAM中,还可存储终端操作所需的各种程序和数据。处理器1301和存储器1302通过总线1303彼此相连。输入/输出接口1304也连接至总线1303。
终端中的多个部件连接至输入/输出接口1304,包括:输入单元1305,例如键盘、鼠标等;输出单元1306,例如各种类型的显示器、扬声器等;存储单元1307,例如磁盘、光盘等;以及通信单元1308,例如网卡、调制解调器、无线通信收发机等。通信单元1308允许终端通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
在本实施例中提供的方法实施例的各个过程和处理,可由处理器1301执行。例如,在一些实施例中,本实施例中提供的方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元1307。在一些实施例中,计算机程序的部分或者全部可以经由ROM和/或通信单元1308而被载入和/或安装到终端上。当计算机程序被加载到RAM并由CPU执行时,可以执行本实施例中提供的方法的步骤。
在一个实施例中,车辆,包括路端传感器、通讯模块、存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,路端传感器包括激光雷达、毫米波雷达和摄像头,处理器分别连接处理器、路端传感器和通讯模块,处理器执行计算机程序时实现以下步骤:
接收事件,根据事件获取目标监控数据,并向第一中间件发布目标监控数据,使得第一中间件将目标监控数据发送至终端界面;事件为第一中间件根据终端界面输入的数据控制指令确定的事件;目标监控数据为与事件对应的监控数据。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
接收事件,根据事件获取目标监控数据,并向第一中间件发布目标监控数据,使得第一中间件将目标监控数据发送至终端界面;事件为第一中间件根据终端界面输入的数据控制指令确定的事件;目标监控数据为与事件对应的监控数据。
在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
接收事件,根据事件获取目标监控数据,并向第一中间件发布目标监控数据,使得第一中间件将目标监控数据发送至终端界面;事件为第一中间件根据终端界面输入的数据控制指令确定的事件;目标监控数据为与事件对应的监控数据。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
接收事件,根据事件获取目标监控数据,并向第一中间件发布目标监控数据,使得第一中间件将目标监控数据发送至终端界面;事件为第一中间件根据终端界面输入的数据控制指令确定的事件;目标监控数据为与事件对应的监控数据。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (6)
1.一种监控数据调试系统,其特征在于,所述系统包括:上位机和下位机,所述上位机与所述下位机连接;所述上位机包括终端界面和第一中间件,所述下位机包括第二中间件;所述第一中间件与所述第二中间件之间建立发布订阅模式关系;
所述终端界面用于输入终端控制命令;
所述第一中间件用于接收所述终端控制命令,并向所述第二中间件发布所述终端控制命令对应的事件;
所述第二中间件用于接收所述事件,根据所述事件获取目标监控数据,并向所述第一中间件发布所述目标监控数据,使得所述第一中间件将所述目标监控数据发送至所述终端界面;所述目标监控数据为与所述事件对应的监控数据;
所述第二中间件还包括监控服务模块、多个数据监控模块和多个功能数据节点;所述数据监控模块与所述监控服务模块连接;所述功能数据节点与所述数据监控模块连接;所述数据监控模块的数量与所述第二中间件中的进程数量相同;
所述功能数据节点用于采集目标监控数据;
所述监控服务模块用于接收所述事件,并向所述数据监控模块发布所述事件;
所述数据监控模块用于接收所述事件,并在接收所述事件后通知所述功能数据节点上报所述目标监控数据,使得所述数据监控模块将所述目标监控数据发送至所述监控服务模块,所述监控服务模块将所述目标监控数据发送至所述上位机;
所述监控服务模块通过下述方式将所述目标监控数据发送至所述上位机:
所述监控服务模块用于根据所述目标监控数据确定所述目标监控数据的长度,根据所述目标监控数据的长度定义所述目标监控数据的名称,获取数据链路映射关系和所述监控服务模块对应的发布节点名称,根据所述数据链路映射关系、所述监控数据的名称和所述监控服务模块对应的发布节点名称,确定所述目标监控数据对应的数据链路,通过所述数据链路将所述目标监控数据发送至所述上位机;所述数据链路映射关系表示监控数据名称、发布节点名称与数据链路之间的映射关系。
2.根据权利要求1所述的系统,其特征在于,所述终端界面包括命令输入窗口、监控数据可视化显示窗口和监控数据文本输出窗口;
所述命令输入窗口用于输入所述终端控制命令;
所述监控数据文本输出窗口用于以文本的形式显示所述目标监控数据;
所述监控数据可视化显示窗口用于显示与所述目标监控数据对应的变化曲线图。
3.根据权利要求1所述的系统,其特征在于,所述向所述第一中间件发布所述目标监控数据,之后包括:
所述第一中间件用于接收所述目标监控数据,将所述目标监控数据串化为json数据格式,得到字符串后的目标监控数据,并将所述字符串后的目标监控数据发送至所述终端界面;
所述终端界面用于接收所述字符串后的目标监控数据,将所述字符串后的目标监控数据转化为字典数据格式,并显示转化后的目标监控数据。
4.一种监控数据调试方法,其特征在于,应用于监控数据调试系统,所述系统包括上位机和下位机,所述上位机与所述下位机连接;所述上位机包括终端界面和第一中间件,所述下位机包括第二中间件;
所述方法包括:
接收事件,根据所述事件获取目标监控数据,并向所述第一中间件发布所述目标监控数据,使得所述第一中间件将所述目标监控数据发送至所述终端界面;所述事件为所述第一中间件根据所述终端界面输入的数据控制指令确定的事件;所述目标监控数据为与所述事件对应的监控数据;
所述向所述第一中间件发布所述目标监控数据,包括:
根据所述目标监控数据确定所述目标监控数据的长度;
根据所述目标监控数据的长度定义所述目标监控数据的名称;
获取数据链路映射关系和所述目标监控数据对应的发布节点名称;所述数据链路映射关系表示监控数据名称、发布节点名称与数据链路之间的映射关系;
根据所述数据链路映射关系、所述目标监控数据对应的发布节点名称和所述监控数据的名称,确定所述目标监控数据对应的数据链路;
通过所述数据链路向所述第一中间件发布所述目标监控数据。
5.一种车辆,包括路端传感器、通讯模块、存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述路端传感器包括激光雷达、毫米波雷达和摄像头,所述处理器分别连接所述处理器、路端传感器和通讯模块,其特征在于,所述处理器执行所述计算机程序时实现如权利要求4所述的监控数据调试方法。
6.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求4所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210459936.5A CN115051979B (zh) | 2022-04-28 | 2022-04-28 | 监控数据调试系统、方法、车辆和计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210459936.5A CN115051979B (zh) | 2022-04-28 | 2022-04-28 | 监控数据调试系统、方法、车辆和计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115051979A CN115051979A (zh) | 2022-09-13 |
CN115051979B true CN115051979B (zh) | 2023-09-19 |
Family
ID=83157715
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210459936.5A Active CN115051979B (zh) | 2022-04-28 | 2022-04-28 | 监控数据调试系统、方法、车辆和计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115051979B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101515863A (zh) * | 2008-02-22 | 2009-08-26 | 中国移动通信集团公司 | 一种网络数据采集方法、采集机及采集系统 |
CN104954469A (zh) * | 2015-06-19 | 2015-09-30 | 长沙廖氏软件科技有限公司 | 一种异构系统信息交换方法 |
CN110806960A (zh) * | 2019-11-01 | 2020-02-18 | 中国联合网络通信集团有限公司 | 信息处理方法、装置及终端设备 |
CN110865919A (zh) * | 2019-11-04 | 2020-03-06 | 苏宁云计算有限公司 | 基于java进程的监控方法、装置和计算机设备 |
EP3702856A1 (en) * | 2019-03-01 | 2020-09-02 | ABB Schweiz AG | Network centric process control |
CN112181683A (zh) * | 2020-09-27 | 2021-01-05 | 中国银联股份有限公司 | 消息中间件的并发消费方法以及装置 |
CN112783920A (zh) * | 2021-02-05 | 2021-05-11 | 树根互联股份有限公司 | 基于数据编排的工业物联网数据实时计算方法和系统 |
CN113391979A (zh) * | 2021-06-21 | 2021-09-14 | 中国农业银行股份有限公司 | 监控数据展示的处理方法、设备、系统及存储介质 |
CN114095522A (zh) * | 2020-07-30 | 2022-02-25 | 阿波罗智联(北京)科技有限公司 | 车辆监控方法、服务系统、管理终端、车辆及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060140199A1 (en) * | 2004-12-28 | 2006-06-29 | Matsushita Electric Industrial Co., Ltd. | SIP/UPnP bridging middleware architecture for a service gateway framework |
-
2022
- 2022-04-28 CN CN202210459936.5A patent/CN115051979B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101515863A (zh) * | 2008-02-22 | 2009-08-26 | 中国移动通信集团公司 | 一种网络数据采集方法、采集机及采集系统 |
CN104954469A (zh) * | 2015-06-19 | 2015-09-30 | 长沙廖氏软件科技有限公司 | 一种异构系统信息交换方法 |
EP3702856A1 (en) * | 2019-03-01 | 2020-09-02 | ABB Schweiz AG | Network centric process control |
CN110806960A (zh) * | 2019-11-01 | 2020-02-18 | 中国联合网络通信集团有限公司 | 信息处理方法、装置及终端设备 |
CN110865919A (zh) * | 2019-11-04 | 2020-03-06 | 苏宁云计算有限公司 | 基于java进程的监控方法、装置和计算机设备 |
CN114095522A (zh) * | 2020-07-30 | 2022-02-25 | 阿波罗智联(北京)科技有限公司 | 车辆监控方法、服务系统、管理终端、车辆及存储介质 |
CN112181683A (zh) * | 2020-09-27 | 2021-01-05 | 中国银联股份有限公司 | 消息中间件的并发消费方法以及装置 |
CN112783920A (zh) * | 2021-02-05 | 2021-05-11 | 树根互联股份有限公司 | 基于数据编排的工业物联网数据实时计算方法和系统 |
CN113391979A (zh) * | 2021-06-21 | 2021-09-14 | 中国农业银行股份有限公司 | 监控数据展示的处理方法、设备、系统及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN115051979A (zh) | 2022-09-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111723160B (zh) | 一种多源异构增量数据同步方法及系统 | |
US10242506B2 (en) | Visualization method and system, and integrated data file generating method and apparatus for 4D data | |
CN106953901A (zh) | 一种提高消息传递性能的集群通信系统及其方法 | |
US20040215764A1 (en) | Method, system, and program for rendering a visualization of aggregations of network devices | |
CN113010565B (zh) | 基于服务器集群的服务器实时数据处理方法及系统 | |
CN104468274A (zh) | 一种集群监控管理方法及系统 | |
CN108170832B (zh) | 一种面向工业大数据的异构数据库的监控系统及监控方法 | |
CN112328448A (zh) | 基于Zookeeper的监控方法、监控装置、设备及存储介质 | |
US10585678B2 (en) | Insertion of custom activities in an orchestrated application suite | |
CN111400393A (zh) | 基于多应用平台的数据处理方法和装置、存储介质 | |
JP5268589B2 (ja) | 情報処理装置及び情報処理装置の運用方法 | |
CN111181769B (zh) | 网络拓扑图绘制方法、系统、装置及计算机可读存储介质 | |
CN113962597A (zh) | 一种数据分析方法、装置、电子设备及存储介质 | |
CN115051979B (zh) | 监控数据调试系统、方法、车辆和计算机可读存储介质 | |
CN110380902B (zh) | 拓扑关系生成方法、装置、电子设备及存储介质 | |
CN116594834A (zh) | 一种用于多协议服务器的运维数据处理方法及装置 | |
CN113242254B (zh) | 通信报文处理方法、装置、终端设备和存储介质 | |
CN113656369A (zh) | 一种大数据场景下的日志分布式流式采集及计算方法 | |
CN114756301A (zh) | 日志处理方法、装置和系统 | |
US11372887B2 (en) | Method, device and computer program product for providing visual representation | |
CN113792008A (zh) | 网络拓扑结构的获取方法、装置、电子设备及存储介质 | |
CN113626869A (zh) | 数据处理方法、系统、电子设备以及存储介质 | |
CN117093207B (zh) | 多业务数据模型的实体处理方法、装置及系统 | |
CN116610683B (zh) | 数据绑定方法及装置 | |
US11983187B2 (en) | Global status monitoring for open data platform |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |