Visual monitoring platform and terminal equipment

By designing a visual monitoring platform, the monitoring problems caused by the increased complexity of the domain controller system are solved, real-time and intuitive resource status monitoring and tuning are achieved, and the performance impact on the server is reduced.

CN119882690APending Publication Date: 2025-04-25CHONGQING CHANGAN TECH CO LTD
View PDF 10 Cites 0 Cited by

Patent Information

Application Number
CN202510057404.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-01-14
Publication Date
2025-04-25

AI Technical Summary

Technical Problem

With the iteration of domain controller functions, system complexity increases, resulting in increased maintenance and development difficulties. It is difficult for existing monitoring technologies to achieve intuitive and meticulous resource status monitoring, and increase performance burden.

Method used

A visual monitoring platform has been designed, including component subscription module, component management module, component monitoring module, canvas management module and monitoring setting module. It can customize the components that need to be monitored through user customization, and display relevant information in real time through canvas to help the development and operation and maintenance teams grasp the operating status of the system.

Benefits of technology

Real-time and intuitive monitoring of the domain controller resource status is realized, potential problems are discovered in a timely manner, and tuning and maintenance are carried out, reducing the performance impact on the server side, supporting rapid deployment and uninstallation, and meeting a variety of usage scenarios.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119882690A_ABST
    Figure CN119882690A_ABST
Patent Text Reader

Abstract

The invention relates to a visual monitoring platform and terminal equipment, the platform comprises a component subscription module, a component management module, a component monitoring module, a canvas management module and a monitoring setting module, the component subscription module is used for displaying a source file of a component on a canvas; the component management module is used for importing a configuration file of a monitored component in a target source file into a canvas in response to the source file selection instruction; the canvas management module is used for storing a configuration file of a monitored component on the canvas; the component monitoring module is used for monitoring a process state of a monitored component in the target source file; and the monitoring setting module is used for setting a storage path of process state information and canvas information of the monitored component. According to the method, the components needing to be monitored are managed in a user-defined mode, related information is displayed in real time through the canvas so as to help a development, operation and maintenance team to better grasp the system operation state, meanwhile, the method can be deployed in a separated mode with the server side, rapid deployment and unloading are achieved, and various use scenes are met.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of monitoring technology, and in particular to a visual monitoring platform and terminal equipment. Background Art

[0002] With the development of new energy vehicles in China, the functions of intelligent driving are increasing, and the positioning, navigation, parking and driving functions are becoming more and more precise, which places higher and higher requirements on the performance of the domain controller in the car. As the core of the entire intelligent driving, the safe and stable operation of the domain controller is the material guarantee of all functions. However, with the iteration of the functions of the domain controller, the complexity of the entire system continues to increase, and maintenance and development are becoming increasingly difficult.

[0003] In order to timely discover potential problems of domain controllers, optimize service performance, and improve the reliability and stability of domain controllers, related technologies deploy monitoring tools in the controllers to monitor the resource status of domain controllers by printing and saving logs. This technical solution has achieved real-time monitoring of domain controller resource usage and abnormal situation warning capabilities to a certain extent, but it is not intuitive and detailed enough, and it also increases the performance burden of the domain controller. Summary of the invention

[0004] One of the purposes of the present invention is to provide a visual monitoring platform that can manage components that need to be monitored through user-defined management, and display relevant information in real time through a canvas, so as to help the development and operation and maintenance teams better understand the system operation status, discover potential problems in time, and perform effective tuning and maintenance. At the same time, the platform is deployed separately from the server, which can achieve rapid deployment and uninstallation to meet a variety of usage scenarios; the second purpose is to provide a terminal device.

[0005] In order to achieve the above object, the technical solution adopted by the present invention is as follows:

[0006] A visual monitoring platform includes: a component subscription module, a component management module, a component monitoring module, a canvas management module and a monitoring setting module, wherein the component subscription module is used to display the source file of the component on the canvas; the component management module is used to respond to the source file selection instruction and import the configuration file of the monitored component in the target source file into the canvas; the canvas management module is used to save the configuration file of the monitored component on the canvas; the component monitoring module is used to monitor the process status of the monitored component in the target source file; the monitoring setting module is used to set the storage path of the process status information of the monitored component and the canvas information.

[0007] According to the visual monitoring platform of the embodiment of the present application, the component subscription module displays the source file of the component on the canvas, the component management module responds to the source file selection instruction, and imports the configuration file of the monitored component in the target source file into the canvas, the canvas management module saves the configuration file of the monitored component on the canvas, the component monitoring module monitors the process status of the monitored component in the target source file, and the monitoring setting module sets the storage path of the process status information of the monitored component and the canvas information. Thus, the visual monitoring platform can manage the components that need to be monitored through user customization, and display relevant information in real time through the canvas, so as to help the development and operation and maintenance team better understand the system operation status, timely discover potential problems, and perform effective optimization and maintenance. At the same time, the platform is deployed separately from the server, which can achieve rapid deployment and uninstallation to meet a variety of usage scenarios.

[0008] In addition, the visual monitoring platform according to the above embodiment of the present application may also have the following additional technical features:

[0009] According to one embodiment of the present application, the component subscription module includes: a first initialization unit, used to loop through and read identifiers in configuration files of all monitored components in a preset folder, forming check box text as a check box for the monitored component; a first submission unit, used to send the selected monitored component to the component management module; and a first update unit, used to update the configuration file in the folder when re-importing the component.

[0010] According to one embodiment of the present application, the component management module includes: a first adding unit, used to add the name of the monitored component in the tree structure; a first operating unit, used to drag the monitored component in the tree structure to the canvas; and a first construction unit, used to set the drag properties of the tree structure.

[0011] According to an embodiment of the present application, the component management module further includes: a first reselection module, configured to determine a reselected component when reselecting a monitored component.

[0012] According to one embodiment of the present application, the canvas management module includes: a first clearing unit, used to clear the components in the canvas; a first saving unit, used to save the information of all monitored components in the canvas to a configuration file; a first loading unit, used to read the configuration file under a specified path and regenerate the canvas corresponding to the configuration file under the path.

[0013] According to one embodiment of the present application, the monitoring setting module is also used to set network configuration information and system information.

[0014] According to an embodiment of the present application, the monitoring setting module includes: a second initialization unit, used to initialize the default values ​​in the configuration file; and a second storage unit, used to write the parameters corresponding to the monitored component into the corresponding configuration file.

[0015] According to one embodiment of the present application, the monitoring setting module also includes: a third initialization unit, used to initialize the network configuration information; a fourth initialization unit, used to initialize the saving path of system information, the saving path of component process status information and the saving path of canvas information; a third saving unit, used to save the saving path of system information on the canvas, the saving path of the process status information of the monitored component and the saving path of the canvas information.

[0016] According to one embodiment of the present application, the component monitoring module includes: a first drawing unit, used to represent and draw the graphics element of the monitored component in the canvas; a second drawing unit, used to represent and draw the connection line graphics element between the monitored components in the canvas; a first management unit, used to manage the mapping relationship between the monitored components according to the connection lines of the monitored components; a first model unit, used to generate graphics element information according to the read configuration file, and insert the graphics element information into the mapping relationship according to the monitored component identification code as an index; a first adding unit, used to obtain the monitored component identification code according to the first model module, and obtain the pointer of the graphics element according to the mapping relationship; a second adding unit, used to obtain the pointer of the graphics element, and add the monitored component to the canvas.

[0017] According to one embodiment of the present application, the component monitoring module also includes: a third drawing unit, used to draw the details page of the monitored component; a first display unit, used to display the details page; a second display unit, used to display the function page; and a first setting unit, used to set the threshold of the attribute of the monitored component.

[0018] According to one embodiment of the present application, a first drawing unit includes: a first updating sub-unit, used to update the subscription port information and publishing port information of the monitored component, wherein the information includes text information, text position and port connection points; a second updating sub-unit, used to update the size of the monitored component; a first rewriting sub-unit, used to draw the graphics of the monitored component according to the updated subscription port information, publishing port information and updated size of the monitored component; and a second rewriting sub-unit, used to rewrite the identification information of the monitored component when the monitored component is reselected.

[0019] According to one embodiment of the present application, the second drawing unit includes: a first setting subunit, used to define the properties of the monitored components, the connection status and the data direction of the connection lines; a first calculation subunit, used to traverse all connection lines and calculate the connection line paths between the monitored components; a first conversion subunit, used to convert the connection line paths into QT internal lines for the first drawing module to draw.

[0020] According to one embodiment of the present application, the second display unit includes: a first initialization subunit, used to initialize the function page; a first saving subunit, used to save the process information of the monitored component; a second saving subunit, used to save the process information of the system; a first data writing subunit, used to output a CSV file of the monitored component according to the process information of the monitored component, and to output a CSV file of the system according to the process information of the system; a first comparison subunit, used to compare according to the attributes of the monitored component and the corresponding threshold value.

[0021] In order to achieve the above-mentioned purpose, the second embodiment of the present application proposes a terminal device, including the above-mentioned visual monitoring platform.

[0022] According to the terminal device of the embodiment of the present application, based on the above-mentioned visual monitoring platform, the components that need to be monitored can be managed through user-defined management, and relevant information can be displayed in real time through the canvas, so as to help the development and operation and maintenance teams to better understand the system operation status, discover potential problems in time, and perform effective tuning and maintenance.

[0023] Beneficial effects of the present invention:

[0024] (1) The visual monitoring platform can be configured by the user to manage the components that need to be monitored. When a monitored component is active, the canvas and details page will display the relevant information in real time in a combination of numbers and graphics, and can be recorded, which is convenient for real-time analysis of potential problems, analysis of historical problems, and troubleshooting;

[0025] (2) The visual monitoring platform can be deployed on computers other than domain controllers, so that the visual monitoring platform and the server are completely decoupled. The operation of the visual monitoring platform does not occupy the computing power of the server, which can minimize the impact on the server. BRIEF DESCRIPTION OF THE DRAWINGS

[0026] Figure 1 A connection diagram of a visual monitoring platform according to an embodiment of the present application;

[0027] Figure 2 A connection diagram of a visual monitoring platform according to an embodiment of the present application;

[0028] Figure 3A schematic diagram of the main interface of a canvas according to a specific embodiment of the present application;

[0029] Figure 4 A schematic diagram of a monitoring details interface of a canvas according to a specific embodiment of the present application;

[0030] Figure 5 It is a block diagram of a terminal device according to an embodiment of the present application.

[0031] Among them, 10-component subscription module; 11-first initialization unit; 12-first submission unit; 13-first update unit; 20-component management module; 21-first adding unit; 22-first operation unit; 23-first construction unit; 24-first reselection module; 30-component monitoring module; 31-first drawing unit; 32-second drawing unit; 33-first management unit; 34-first model unit; 35-first adding unit; 36-second adding unit; 37-third drawing unit; 38-first display unit; 39-second display unit; 310-first setting unit; 40-canvas management module; 41-clearing unit; 42-first saving unit; 43-first loading unit; 50-monitoring setting module; 51-second initialization unit; 52-second saving unit; 53-third initialization unit; 54-fourth initialization unit; 55-third saving unit; 100-visual monitoring platform; 1000-terminal device. DETAILED DESCRIPTION

[0032] The following will describe the embodiments of the present invention with reference to the accompanying drawings and preferred embodiments. Those skilled in the art can easily understand other advantages and effects of the present invention from the contents disclosed in this specification. The present invention can also be implemented or applied through other different specific embodiments, and the details in this specification can also be modified or changed in various ways based on different viewpoints and applications without departing from the spirit of the present invention. It should be understood that the preferred embodiments are only for illustrating the present invention, not for limiting the scope of protection of the present invention.

[0033] It should be noted that the illustrations provided in the following embodiments are only schematic illustrations of the basic concept of the present invention, and thus the drawings only show components related to the present invention rather than being drawn according to the number, shape and size of components in actual implementation. In actual implementation, the type, quantity and proportion of each component may be changed arbitrarily, and the component layout may also be more complicated.

[0034] The following describes the visual monitoring platform and terminal device proposed in the embodiments of the present application with reference to the accompanying drawings.

[0035] Figure 1 Schematic diagram of the connection of a visual monitoring platform according to an embodiment of the present application.

[0036] like Figure 1 As shown, the visual monitoring platform of the embodiment of the present application may include: a component subscription module 10, a component management module 20, a component monitoring module 30, a canvas management module 40 and a monitoring setting module 50.

[0037] Among them, the component subscription module 10 is used to display the source file of the component on the canvas. The component management module 20 is used to respond to the source file selection instruction and import the configuration file of the monitored component in the target source file into the canvas. The component monitoring module 30 is used to monitor the process status of the monitored component in the target source file. The canvas management module 40 is used to save the configuration file of the monitored component on the canvas. The monitoring setting module 50 is used to set the storage path of the process status information of the monitored component and the canvas information.

[0038] Specifically, the component subscription module 10 is used to manage and process the custom class of component subscription, and displays the component name imported from the local or pulled from the domain controller on the canvas interface, thereby displaying the source file of the component, and can specifically obtain the component information of the tested end through a data line connection. At the same time, the component subscription module 10 can also filter out the components that need to be monitored through user customization, so as to display the source file of the component selected by the user on the canvas.

[0039] The component management module 20 is used to accept source file selection instructions, and import the configuration file of the monitored component in the target source file based on the source file selection instructions. Taking the configuration file of the monitored component as a yaml file as an example, based on the source file selection instruction given by the user, the yaml file of the corresponding monitored component is imported from the local folder, and updated to the canvas interface; or based on the source file selection instruction, the yaml file of the corresponding monitored component is imported from the domain controller, and updated to the canvas interface, so as to display the details of the monitored component through the canvas. Among them, the yaml file is a text file written in the yaml format. Yaml is a data serialization format that stores configuration data, serializes objects, and exchanges data in an easy-to-read and easy-to-write manner. The configuration file can be used to configure applications, store data models, define system parameters, etc.

[0040] The component monitoring module 30 is used to monitor the process status of the monitored component in the target source file, and can be used to monitor the threshold of the monitored component, store monitoring data, update the canvas status based on the process status, etc. The canvas management module 40 can save the configuration files of all components in the current canvas. The monitoring setting module 50 can customize the storage path of the process status information and canvas information of the monitored component and save it to the settingModel. Among them, SettingModel is a model for managing application settings, which is used to store and process the configuration options and user preference settings of the application.

[0041] Therefore, the visual monitoring platform can be built based on the above modules to obtain a visual monitoring tool that is deployed separately from the tested end. It can provide the tested end with real-time monitoring, data visualization analysis, condition recording and other functions, helping the development and operation and maintenance teams to better understand the system operation status, discover potential problems in time, and perform effective tuning and maintenance.

[0042] Combination Figure 2 As shown, in one embodiment of the present application, the component subscription module 10 includes: a first initialization unit 11, used to loop through and read identifiers in configuration files of all monitored components in a preset folder, forming check box text as a check box for the monitored component; a first submission unit 12, used to send the selected monitored component to the component management module 20; and a first update unit 13, used to update the configuration file in the folder when re-importing the component.

[0043] Specifically, the first initialization unit 11 completes the initialization of the canvas interface based on the Init function, and calls the updateComponentName function, and reads the identifiers of the configuration files of all monitored components in the predefined folder (such as the name field in the yaml file) through a loop, and updates the component names of the monitored components read to the user interface, forming a check box text as a check box for the component name of the monitored component, and storing the checked component name in the string list. Among them, the updateComponentName function is a function for updating the component name list displayed on the user interface. When the user re-imports or pulls a new monitored component from the domain controller, the configuration file in the folder may change. The updateComponentName function detects these changes, re-reads the identifier in the configuration file, and then updates the user interface, i.e., the component name list on the canvas, to reflect the latest component information. This ensures that the component names displayed on the user interface are always the latest, and the user can select the latest component for monitoring.

[0044] The first submitting unit 12 determines whether the string list of the currently selected component name is empty based on the Submit function, and if not, sends the component name of the selected monitored component to the component management module 20. The Submit function mainly processes the component subscription information submitted by the user.

[0045] Since the configuration files in the folder will be updated when the monitored component is re-pulled or imported, the first updating unit 13 re-traverses and reads the identifiers of the configuration files in the folder based on the updateComponentName function when these changes are detected to complete the update of the user interface.

[0046] Therefore, the component subscription module 10 may include the following functions: subscription management function, that is, allowing users or other parts of the system to subscribe to specific component events or data; update distribution function, that is, when the component status changes, it is responsible for notifying all subscribers of these changes; subscription list maintenance function, that is, tracking which entities have subscribed to which component updates; subscription configuration function, that is, providing an interface for users to configure detailed parameters of the subscription, such as the frequency, type or conditions of the subscription.

[0047] In one embodiment of the present application, the component management module 20 includes: a first adding unit 21, a first operating unit 22 and a first constructing unit 23. The first adding unit 21 is used to add the name of the monitored component in the tree structure. The first operating unit 22 is used to drag the monitored component in the tree structure to the canvas. The first constructing unit 23 is used to set the drag attribute for the tree structure.

[0048] Specifically, the first adding unit 21 adds the name of the monitored component in the tree structure through the addItem function, each component name is a leaf node, and an icon is attached for display. The addItem function is a member function for adding a new item, namely the component name, to the tree structure.

[0049] The first operation unit 22 drags the monitored component in the tree structure to the canvas through the startDrag function, which is received by the canvas class. The startDrag function is used to process the start of the drag operation. When the user wants to drag an item (such as a component) in the tree list to another location (such as on the canvas), the startDrag function is called to complete the drag.

[0050] The first construction unit 23 sets draggable properties through the NodeTree constructor, such as the dragging mode and hiding the treeNode title name, where treeNode refers to a node in the tree structure.

[0051] In one embodiment of the present application, the component management module 20 further includes: a first reselection module 24, which is used to determine the reselected component in the case of reselecting the monitored component.

[0052] Specifically, in the case of reselecting the monitored component, the first reselection module 24 clears the selected item first based on the mousePressEvent function, and then defines that when the left mouse button is pressed, the currently selected item is set as the treeitem pointed by the mouse, and the startDrag function is called to perform the drag. The mousePressEvent function is an event processing function for responding to the user's mouse click event. In this function, the user can customize what should happen after the click event, such as processing the selected item, opening the menu, starting the drag operation, etc.

[0053] In one embodiment of the present application, the canvas management module 40 includes: a first clearing unit 41 , a first saving unit 42 and a first loading unit 43 .

[0054] The first clearing unit 41 is used to clear the components in the canvas. The first saving unit 42 is used to save the information of all monitored components in the canvas to the configuration file. The first loading unit 43 is used to read the configuration file under the specified path and regenerate the canvas corresponding to the configuration file under the path.

[0055] Specifically, the first clearing unit 41 obtains the IDs of all monitored components based on the clearNode function, traverses the file and deletes all related instances therefrom to achieve the effect of clearing the canvas. The clearNode function is used to clear or reset the nodes (Node) or related data in the graphical interface.

[0056] The first saving unit 42 is based on the saveCanvas function, which first pops up a path selection box to configure the saving path, then traverses all components existing in the canvas, and writes the name, id, position, size and other related information of each component into the configuration file. The saveCanvas function is used to save the current state of the canvas into a file, which is usually a file in a graphic format, such as PNG, JPEG or a format containing a scene description, such as SVG or a custom format.

[0057] The first loading unit 43 reads the configuration file under the specified path based on the loadCanvas function, and traverses all the saved component information according to the file, and calls the addComponent function to regenerate it to achieve the effect of memory reproduction. Among them, the loadCanvas function is used to load the previously saved scene state from the file and apply it to the current scene to allow the user to restore to the previous scene layout after the application is restarted. The addComponent function is used to add a new component or node to the model.

[0058] In one embodiment of the present application, the monitoring setting module 50 is also used to set network configuration information and system information.

[0059] That is, in addition to the above-mentioned function of setting the storage path of the process status information and canvas information of the monitored component, the monitoring setting module 50 also has the function of setting network configuration information and system information, and saves the set network configuration information and system information settings into the settingModel class. Among them, the settingModel class is a model for managing application settings, which is used to store and process application configuration options and user preference settings.

[0060] In one embodiment of the present application, the monitoring setting module 50 includes: a second initialization unit 51 and a second storage unit 52. The second initialization unit 51 is used to initialize the default values ​​in the configuration file. The second storage unit 52 is used to write the parameters corresponding to the monitored component into the corresponding configuration file.

[0061] Specifically, the second initialization unit 51 reads predefined default values ​​from the configuration file based on the initSetting function to initialize the default values ​​in the configuration file, including various parameters in the network settings and record settings. The initSetting function is used to set the initial state of the model, specifically by loading default values ​​or restoring previous settings from persistent storage (such as a configuration file, a database, or a registry).

[0062] The second saving unit 52 writes the parameters corresponding to the monitored component into the corresponding yaml configuration file based on the saveComSetting function, wherein the saveComSetting function is used to save the current setting state from the memory to an external storage medium, such as a file, a database or a registry, so that these settings can be restored when the application is restarted.

[0063] In one embodiment of the present application, the monitoring setting module 50 further includes: a third initialization unit 53, a fourth initialization unit 54 and a third saving unit 55. The third initialization unit 53 is used to initialize the network configuration information. The fourth initialization unit 54 is used to initialize the saving path of the system information, the saving path of the component process status information and the saving path of the canvas information. The third saving unit 55 is used to save the saving path of the system information on the canvas, the saving path of the process status information of the monitored component and the saving path of the canvas information.

[0064] Specifically, the third initialization unit 53 initializes the network setting interface based on the initNetSettingWidget function, and sets the initial value to the default value in the settingmodel class. The settingmodel class is used to store and process the configuration options and user preferences of the application. The initial state of the network setting interface is set through the initNetSettingWidget function, including loading default values ​​or restoring previous settings from persistent storage, and updating the controls on the interface to reflect these settings, thereby initializing the user interface components related to the network settings.

[0065] The fourth initialization unit 54 initializes the saving record path of the system information, component process status information, and canvas information based on the initRecordSettingWidget function, and sets the initial value to the default value in the settingmodel class. Among them, the initRecordSettingWidget function is used to initialize the setting interface related to the record. The function of this function is to configure and set the controls related to the record function on the user interface to ensure that they are correctly displayed on the user interface and reflect the current record setting status.

[0066] The third saving unit 55 is based on the saveBtnSlot function and is triggered by the save button on the interface to record various parameters on the interface into the model, thereby saving the saving path of the system information on the canvas, the saving path of the process status information of the monitored component, and the saving path of the canvas information.

[0067] In one embodiment of the present application, the component monitoring module 30 includes: a first drawing unit 31, a second drawing unit 32, a first management unit 33, a first model unit 34, a first adding unit 35, and a second adding unit 36. Among them, the first drawing unit 31 is used to represent and draw the primitives of the monitored components in the canvas. The second drawing unit 32 is used to represent and draw the connection line primitives between the monitored components in the canvas. The first management unit 33 is used to manage the mapping relationship between the monitored components according to the connection lines of the monitored components. The first model unit 34 is used to generate primitive information according to the read configuration file, and insert the primitive information into the mapping relationship according to the monitored component identification code as an index. The first adding unit 35 is used to obtain the monitored component identification code according to the first model module, and obtain the pointer of the primitive according to the mapping relationship. The second adding unit 36 ​​is used to obtain the pointer of the primitive and add the monitored component to the canvas.

[0068] Specifically, the first drawing unit 31 is used to define the NodeGraphicsObject class, which inherits from the QGraphicsObject class. This class is used as a drawing node primitive in the canvas, and each component displayed in the canvas is an instance of this class. Specifically, the NodeGraphicsObject class is a node that represents and draws monitoring components in a graphical interface, and is used to draw and update the status of components in QGraphicsScene to achieve visual monitoring. In the Qt framework, QGraphicsObject is used to create custom graphic items, which can provide common functions of graphic objects, such as properties such as position, size, visibility, and drawing, event handling, and other methods.

[0069] The second drawing unit 32 is used to define the ConnectionGraphicsObject class, which is also inherited from the QGraphicsObject class. This class is used as a connection line primitive between nodes in the canvas, and is used to define the properties and drawing of the connection line between two nodes, as well as the display of the status, etc. Among them, the ConnectionGraphicsObject class is used to draw and update the connection status between components in the QGraphicsScene scene, and realize the network topology or data flow of visual monitoring.

[0070] The first management unit 33 is used to define the ConnectionModel class, specifically to define AddConnectStartPort and AddConnectEndPort, which are respectively used to store the input and output node information of the connection line Object into the memory, and to map the monitored components according to the connection lines of the monitored components. The ConnectionModel class is used to manage the data model of the connection between components to maintain the connection information between components, including which components are connected, the status of the connection, the properties of the connection, etc. AddConnectStartPort is used to record the starting port information of a new connection in the model, and AddConnectEndPort is used to record the ending port information of a new connection in the model.

[0071] The first model unit 34 is used to define the NodeModel class. Specifically, based on the addComponent function, the information in the configuration file (including the position, the monitored component identification code, the subscription and publishing interface position and text) is read to generate a primitive instance, and the primitive information is inserted into the mapping structure into the memory according to the monitored component identification code as the index. Among them, the NodeModel class is used to manage the data model of the node (component) in the graphical monitoring tool. It is used to maintain the properties and status of the node, process node-related operations, such as adding and deleting nodes, updating node properties, and managing connections between nodes. The addComponent function is used to add a new component (or node) to the model and register its information in the data structure of the model so that it can be tracked, managed and displayed.

[0072] The first adding unit 35 is used to define the ComQGraphicsScene class, which inherits from QgraphicsScene. Specifically, based on the addComponent function, it is first determined whether the component to be added already exists. If it already exists, it is not added. If it does not exist, the addComponent function is called to obtain the monitored component identification code, and then the pointer of the primitive is obtained according to the mapping relationship. Among them, the ComQGraphicsScene class is used to add a new graphic item (for example, a QGraphicsItem object) to the scene.

[0073] The second adding unit 36 ​​is used to define the ComGraphicsView class, which inherits from QgraphicsView. Specifically, based on the nodescene function, QgraphicsScene is forced to be converted to ComGraphicsScene, and then based on the addComponent function, the nodeScene function is called to obtain a pointer, and the addComponent function of the pointer is called to add components. Among them, the ComGraphicsView class is responsible for managing the display of the scene, including operations such as scrolling, zooming, and panning. The nodescene function is used to obtain a pointer or reference to the scene object associated with the ComGraphicsView, thereby allowing operations on the scene, such as adding graphic items, deleting graphic items, or executing other scene-related methods.

[0074] In one embodiment of the present application, the component monitoring module 30 further includes: a third drawing unit 37, a first display unit 38, a second display unit 39, and a first setting unit 310. The third drawing unit 37 is used to draw the details page of the monitored component. The first display unit 38 is used to display the details page. The second display unit 39 is used to display the function page. The first setting unit 310 is used to set the threshold of the attribute of the monitored component.

[0075] Specifically, the third drawing unit 37 is used to define the PieListView class to draw the component details page. For example, based on the addNewPie function, the information of each component is obtained according to the id of each component, the icon is drawn, and then the details of each component are updated in real time based on the updateAllPies function. Among them, the PieListView class is a custom class used to manage and display a list of pie charts. Each pie chart is usually used to represent the statistical data or status information of a component, such as resource utilization, performance indicators, etc. The updateAllPies function is used to update the data of all pie charts in the view, specifically to traverse all pie charts and update their contents to the latest data set provided to ensure that the information displayed on the user interface is the latest.

[0076] The first display unit 38 is used to define the ComponentView class to initialize the component details interface, and call the icon drawing of the PieListView class to display the detail icon. For example, based on the updatePies function, all components are traversed, and the updateAllPies function of its PieListView is called to update the component information in real time, and then the component details interface display is initialized based on the Init function. Among them, the ComponentView class is a custom class used to manage and display the detailed information of the monitoring component. The updatePies function is used to update the data of one or more pie charts in the pie chart view. The updateAllPies function is used to update the data of all pie charts in the pie chart list view.

[0077] The second display unit 39 is used to define the ComponentWidget class, which inherits from QWidget, to display the entire functional interface. The ComponentWidget class represents a graphical user interface component containing detailed information of the monitoring component and related operations, and is used to display and manage the monitoring data, configuration information, status indication, etc. of the component in the user interface.

[0078] The first setting unit 310 is used to define NodeTresholdSetWidget, which is inherited from QFrame, to save and record the upper and lower limits of the threshold settings. For example, first based on the UpdateNodeThreshold function, the attribute information of each component is read from the nodemodel and stored in the memory, and based on the saveNodeThreshold function, the threshold of the attribute of each component is saved to the nodemodel, and the attribute name is used as the mapping index. Among them, NodeTresholdSetWidget is used to set and manage the thresholds of each node in the monitoring system, such as the maximum or minimum value of the performance indicator. The UpdateNodeThreshold function and the saveNodeThreshold function are used to save the node threshold settings to persistent storage, such as a database or file system. The purpose of this is to be able to restore these settings after the system is restarted or the monitoring tool is reloaded.

[0079] Therefore, the component monitoring module 30 can realize the functions of canvas status update, monitoring data storage, component operation details, and component threshold monitoring based on the above units.

[0080] In one embodiment of the present application, the first drawing unit 31 includes: a first updating subunit, a second updating subunit, a first rewriting subunit, and a second rewriting subunit. The first updating subunit is used to update the subscription port information and the publishing port information of the monitored component, wherein the information includes text information, text position, and port connection points. The second updating subunit is used to update the size of the monitored component. The first rewriting subunit is used to draw the graphic element of the monitored component according to the updated subscription port information, publishing port information, and updated size of the monitored component. The second rewriting subunit is used to rewrite the identification information of the monitored component when the monitored component is reselected.

[0081] Specifically, the first update subunit calculates the text information, text position, port connection points, etc. of the subscription port and the publishing port of the component based on the updateComponent function, and updates and draws them. The updateComponent function is used to receive new data or status information and change the display of the graphic object accordingly, such as changing the color, size, label or other visual attributes.

[0082] The second updating subunit calculates the size of the component frame, including the length and width, based on the updateRectHeightAndWight function, wherein the updateRectHeightAndWight function is used to calculate and set the boundary rectangle of the graphic object.

[0083] The first rewrite subunit is based on the paint function. When the data corresponding to the graphic object changes, the updateComponent function and the updateRectHeightAndWight function are called to draw the graphics element of the monitored component based on the updated data. Among them, the paint function is used to update the state of the graphic object to reflect the changes in the backend data. When the data or state related to the graphic object changes, the updateComponent function will be called to modify the properties of the graphic object to ensure that the information displayed on the graphical interface is the latest. updateRectHeightAndWidth is used to update the height and width of the rectangle.

[0084] The second rewrite subunit is based on the mousePressEvent function. If the identification information of the currently selected component is different from that of the instance, the selected identification information is set to the identification information of the monitored component of the current instance. Among them, mousePressEvent is used to respond to the user's mouse click event, and can define what should happen after the click event, such as processing the selection, opening the menu, starting the drag operation, etc.

[0085] In one embodiment of the present application, the second drawing unit 32 includes: a first setting subunit, a first calculation subunit and a first conversion subunit. The first setting subunit is used to define the properties of the monitored component, the connection status and the data direction of the connection line. The first calculation subunit is used to traverse all the connection lines and calculate the connection line path between the monitored components. The first conversion subunit is used to convert the connection line path into a QT internal line so that the first drawing module can draw it.

[0086] Specifically, the first setting subunit is used to define the properties of the monitored component, the connection status and the data direction of the connection line. For example, by defining a ConnectInfo structure to store and manage the connection information between two graphic objects (such as monitoring components), the connection status can be connection established, disconnected, connecting or error.

[0087] The first calculation subunit is based on the initPath function. It traverses all connectids, finds the Object of the connection line through the connection line id, obtains the respective nodes from the input and output node ids at both ends of the connection line, calls the libAvoid library to calculate the connection route and stores it in the memory, and then calls the UpdateChangePathAndBoundingRect function. Among them, the initPath function is used to initialize or recalculate the drawing method of the connection line (or path). The initPath function is used to calculate the path of the connection line to ensure that the two graphic objects are visually correctly connected. The libAvoid library is a library for drawing graphic connection lines that avoid crossing. It can intelligently arrange the connection paths between graphic elements to avoid crossing and overlapping, thereby improving the readability and aesthetics of the graphics. The UpdateChangePathAndBoundingRect function is used to update the path of the connection line and its bounding rectangle, and can be called when the position of the graphic object changes or the connection line needs to be rearranged to avoid crossing and overlapping.

[0088] The first conversion subunit, based on the UpdateChangePathAndBoundingRect function, traverses all the connection line IDs to obtain the connection line Object, converts the calculated connection line path into a QT internal line, and calls the paint function for drawing by the first drawing module. The QT internal line refers to a line segment drawn using Qt's drawing tool.

[0089] In one embodiment of the present application, the second display unit 39 includes: a first initialization subunit, a first storage subunit, a second storage subunit, a first data writing subunit and a first comparison subunit. Among them, the first initialization subunit is used to initialize the function page. The first storage subunit is used to save the process information of the monitored component. The second storage subunit is used to save the process information of the system. The first data writing subunit is used to output the CSV file of the monitored component according to the process information of the monitored component, and output the CSV file of the system according to the process information of the system. The first comparison subunit is used to compare the attributes of the monitored component with the corresponding threshold.

[0090] Specifically, the first initialization subunit initializes the entire functional interface based on the InitUI function, including the switches for monitoring and recording, tab pages, etc. Among them, the InitUI function is used to initialize various components and settings of the user interface, specifically, it can perform interface layout, add controls (such as buttons, text boxes, labels, etc.), set initial property values, and connect signals and slots.

[0091] The first saving subunit is based on the saveProcessInfo function. When it is determined that the save switch is turned on to record, it records the component status of the monitored component and calls the writeCSV function to output it into a CSV file. The process information of the monitored component is saved. The saveProcessInfo function is a function used to write data into a CSV (comma separated value) file. A CSV file is a simple text format for storing tabular data, in which each line represents a record and fields are usually separated by commas.

[0092] The second saving subunit is based on the saveSystemInfo function, and when it is determined that the saving switch is turned on for recording, records the system status information, and calls the writeCSV function to output it into a CSV file to save the system process information.

[0093] The first data writing subunit outputs the process information of the monitored component and the process information of the system to the corresponding CSV file based on the writeCSV function.

[0094] The first comparison subunit returns a mapping of comparison results by comparing the various properties of the current components to see whether they are within the threshold range based on the CompareComponentThreshold function. The first comparison subunit 395 compares the current state or performance index of the component with the preset threshold (threshold) through the CompareComponentThreshold function to detect whether the component exceeds the preset safety or performance range, thereby triggering an alarm or taking other measures.

[0095] As a specific embodiment of the present application, the established visual monitoring platform is as follows: Figure 2 As shown, the resulting canvas interface can be Figure 3 and Figure 4 As shown in the figure, the specific usage of the visual monitoring platform is as follows:

[0096] 1. After opening the visual monitoring platform, enter the configuration interface, configure the IP port, publish, subscribe and other related information and save them.

[0097] 2. Click the "Pull components from the domain controller" button on the main interface and turn on the monitoring switch. Find the component to be monitored from the list on the left side of the main interface and drag it to the middle canvas area with the left mouse button for display. If the number of components on the canvas is greater than 2 and there is a publish-subscribe port relationship, it will be automatically connected and the current connection status will be displayed in color. The amount of communication data will be displayed online. Components can be dragged at will, and the connection line will automatically refresh the connected components and update the status.

[0098] 3. If the recording switch is turned on in the monitoring state, the relevant information of each monitored component on the canvas will be recorded and output to a CSV file.

[0099] 4. Click the component details button to open the monitoring details page. You can check certain states of each component that need to be monitored on the left. The right side will display the percentage and specific value in real time and draw it in the style of a pie chart.

[0100] In summary, according to the visual monitoring platform of the embodiment of the present application, the component subscription module displays the source file of the component on the canvas, the component management module responds to the source file selection instruction, and imports the configuration file of the monitored component in the target source file into the canvas, the canvas management module saves the configuration file of the monitored component on the canvas, the component monitoring module monitors the process status of the monitored component in the target source file, and the monitoring setting module sets the storage path of the process status information of the monitored component and the canvas information. Therefore, the visual monitoring platform can manage the components that need to be monitored through user customization, and display relevant information in real time through the canvas, so as to help the development and operation and maintenance team better understand the system operation status, timely discover potential problems, and perform effective tuning and maintenance. At the same time, the platform is deployed separately from the server, which can achieve rapid deployment and uninstallation to meet a variety of usage scenarios.

[0101] Corresponding to the above embodiment, the present application also proposes a terminal device.

[0102] like Figure 5 As shown, the terminal device 1000 of the embodiment of the present application includes the above-mentioned visual monitoring platform 100. The terminal device 100 can be a computer, a mobile phone or other equipment.

[0103] According to the terminal device of the embodiment of the present application, based on the above-mentioned visual monitoring platform, the components that need to be monitored can be managed through user-defined management, and relevant information can be displayed in real time through the canvas, so as to help the development and operation and maintenance teams to better understand the system operation status, discover potential problems in time, and perform effective tuning and maintenance.

[0104] The above embodiments are only preferred embodiments for fully illustrating the present invention, and the protection scope of the present invention is not limited thereto. Any equivalent substitution or change made by a person skilled in the art based on the present invention is within the protection scope of the present invention.

Claims

1. A visual monitoring platform, characterized in that: include: Component subscription module, component management module, component monitoring module, canvas management module and monitoring setting module, among which, The component subscription module is used to display the source files of the component on the canvas; The component management module is used to respond to the source file selection instruction and import the configuration file of the monitored component in the target source file into the canvas; The canvas management module is used to save the configuration file of the monitored component on the canvas; The component monitoring module is used to monitor the process status of the monitored component in the target source file; The monitoring setting module is used to set the storage path of the process status information and canvas information of the monitored component.

2. The visual monitoring platform according to claim 1, characterized in that: The component subscription module includes: A first initialization unit is used for cyclically traversing and reading identifiers in configuration files of all monitored components in a preset folder, and forming check box text as a check box of the monitored component; A first submitting unit, configured to send the selected monitored component to the component management module; The first updating unit is used to update the configuration file in the folder when the component is re-imported.

3. The visual monitoring platform according to claim 1, characterized in that: The component management module includes: A first adding unit is used to add the name of the monitored component in the tree structure; A first operating unit, used to drag the monitored component in the tree structure onto the canvas; The first construction unit is used to set the drag attribute for the tree structure.

4. The visual monitoring platform according to claim 3, characterized in that: The component management module also includes: The first reselection module is used to determine the reselected component when the monitored component is reselected.

5. The visual monitoring platform according to claim 1, characterized in that: The canvas management module includes: A first clearing unit, used to clear components in the canvas; A first saving unit, used to save information of all monitored components in the canvas into a configuration file; The first loading unit is used to read the configuration file under the specified path and regenerate the canvas corresponding to the configuration file under the path.

6. The visual monitoring platform according to claim 1, characterized in that: The monitoring setting module is also used to set network configuration information and system information.

7. The visual monitoring platform according to claim 6, characterized in that: The monitoring setting module includes: A second initialization unit, used to initialize the default values ​​in the configuration file; The second storage unit is used to write the parameters corresponding to the monitored component into the corresponding configuration file.

8. The visual monitoring platform according to claim 7, characterized in that: The monitoring setting module also includes: A third initialization unit, used to initialize network configuration information; A fourth initialization unit, used to initialize a storage path for system information, a storage path for component process status information, and a storage path for canvas information; The third saving unit is used to save the saving path of the system information on the canvas, the saving path of the process status information of the monitored component, and the saving path of the canvas information.

9. The visual monitoring platform according to claim 1, characterized in that: The component monitoring module includes: A first drawing unit, used for representing and drawing the graphic element of the monitored component in the canvas; A second drawing unit, used for representing and drawing connection line primitives between the monitored components in the canvas; A first management unit, configured to manage the mapping relationship between the monitored components according to the connection lines of the monitored components; A first model unit, configured to generate graphic element information according to the read configuration file, and insert the graphic element information into the mapping relationship according to the monitored component identification code as an index; A first adding unit, configured to obtain the monitored component identification code according to the first model module, and obtain a pointer to a primitive according to the mapping relationship; The second adding unit is used to obtain the pointer of the primitive and add the monitored component to the canvas.

10. The visual monitoring platform according to claim 9, characterized in that: The component monitoring module also includes: A third drawing unit, used for drawing a detail page of the monitored component; A first display unit, used to display the details page; The second display unit is used to display the function page; The first setting unit is used to set a threshold value of the attribute of the monitored component.

11. The visual monitoring platform according to claim 9, characterized in that: The first drawing unit includes: A first updating subunit, used to update the subscription port information and the publishing port information of the monitored component, wherein the information includes text information, text location and port connection points; A second updating subunit, used for updating the size of the monitored component; A first rewriting subunit is used to draw the graphic element of the monitored component according to the updated subscription port information, publishing port information and updated size of the monitored component; The second rewriting subunit is used to rewrite the identification information of the monitored component when the monitored component is reselected.

12. The visual monitoring platform according to claim 9, characterized in that: The second drawing unit includes: A first setting subunit is used to define the properties of the monitored component, the connection status and the data direction of the connection line; A first calculation subunit, used to traverse all connection lines and calculate the connection line paths between the monitored components; The first conversion subunit is used to convert the connection line path into a QT internal line so that the first drawing module can draw it.

13. The visual monitoring platform according to claim 10, characterized in that: The second display unit comprises: A first initialization subunit, used to initialize the function page; A first saving subunit, used for saving the process information of the monitored component; The second saving subunit is used to save the process information of the system; a first data writing subunit, configured to output a CSV file of the monitored component according to the process information of the monitored component, and to output a CSV file of the system according to the process information of the system; The first comparison subunit is used to compare the attribute of the monitored component with the corresponding threshold.

14. A terminal device, characterized in that: It comprises a visual monitoring platform as described in any one of claims 1-13.

Citation Information

Patent Citations

  • General calibration system of automobile electronic control unit and realizing method thereof

    CN101751028A

  • Service-level full-link monitoring method for application program and server

    CN110968479A

  • Power monitoring system configuration method and device and terminal

    CN113076093A

  • Monitoring interface design method and device and electronic equipment

    CN114064188A

  • Whole vehicle domain controller testing device and method

    CN114815774A