Server configuration page processing method, electronic device, and storage medium

By identifying and matching the menu information and component information on the BMC configuration page, the configuration items of the new model server are automatically confirmed, solving the time-consuming problem caused by manual analysis and achieving rapid configuration.

CN120429037BActive Publication Date: 2025-09-05INSPUR SUZHOU INTELLIGENT TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202510940410.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-07-08
Publication Date
2025-09-05
Estimated Expiration
2045-07-08

AI Technical Summary

Technical Problem

When connecting a new server model, it is necessary to manually check and analyze the configuration page of the baseboard management controller (BMC), which is time-consuming and requires a lot of manpower.

Method used

By identifying the configuration items on the BMC configuration page, obtaining menu information and technology stack type, and performing correlation matching based on component information, automatic confirmation of the configuration page is achieved.

Benefits of technology

It realizes the full automatic confirmation of various configuration items and components in the BMC configuration page of new server models, significantly shortening the configuration time.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120429037B_ABST
    Figure CN120429037B_ABST
Patent Text Reader

Abstract

The present application discloses a server configuration page processing method, electronic device, and storage medium, which relate to the fields of computer technology, server management, etc., including, when it is necessary to access a new model server, identifying each configuration item in the configuration page of the baseboard management controller, obtaining the menu information of the configuration page, identifying the technology stack type of the configuration page, and based on the technology stack type and the page corresponding to each configuration item, identifying the component information in the page corresponding to each configuration item, associating and matching the access path of each configuration item in the menu information with the component information in the page corresponding to each configuration item, and outputting the configuration information corresponding to each configuration item in the configuration page. In the above method, through the menu information and the component information in the page corresponding to each configuration item, it is possible to realize the full automatic confirmation of each configuration item and the components in each configuration item in the configuration page of the BMC of the new model server, effectively shortening the configuration time when the new model server is accessed.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the fields of computer technology, server management, and in particular to a server configuration page processing method, electronic device, and storage medium. Background Art

[0002] In the field of server management, the configuration pages of the Baseboard Management Controller (BMC) installed on different server models vary significantly. Specifically, the BMC configuration pages of different server models vary in menu layout, configuration item types, and presentation methods.

[0003] In the related art, when a new model server needs to be connected, it is necessary to manually check and analyze the configuration page of the BMC of the server, and perform corresponding coding tests based on the manual analysis results to implement configuration management of the new model server.

[0004] However, manually checking and analyzing the BMC configuration page of a new server model requires a lot of manpower and repetitive work, and the entire process is time-consuming. Summary of the Invention

[0005] The present application provides a server configuration page processing method, electronic device, and storage medium to solve the problem of long time consumption when accessing a new model server is required.

[0006] This application provides a server configuration page processing method, including:

[0007] Identify each configuration item in the configuration page of the baseboard management controller and obtain menu information of the configuration page, wherein the menu information includes an access path to each configuration item;

[0008] Identify the technology stack type of the configuration page, and based on the technology stack type and the page corresponding to each configuration item, identify the component information in the page corresponding to each configuration item;

[0009] The access path of each configuration item in the menu information is associated and matched with the component information in the page corresponding to each configuration item, and the configuration information corresponding to each configuration item in the configuration page is output.

[0010] The present application also provides a server configuration page processing device, comprising: a first processing module, a second processing module and a third processing module, wherein:

[0011] The first processing module is used to identify each configuration item in the configuration page of the baseboard management controller and obtain menu information of the configuration page, wherein the menu information includes an access path of each configuration item;

[0012] The second processing module is used to identify the technology stack type of the configuration page, and based on the technology stack type and the page corresponding to each configuration item, identify component information in the page corresponding to each configuration item;

[0013] The third processing module is used to associate and match the access path of each configuration item in the menu information with the component information in the page corresponding to each configuration item, and output the configuration information corresponding to each configuration item in the configuration page.

[0014] The present application also provides an electronic device, comprising: a memory for storing a computer program; and a processor for implementing the steps of any of the above-mentioned server configuration page processing methods when executing the computer program.

[0015] The present application also provides a computer-readable storage medium, in which a computer program is stored. When the computer program is executed by a processor, the steps of any of the above-mentioned server configuration page processing methods are implemented.

[0016] The present application also provides a computer program product, including a computer program, which implements the steps of any of the above-mentioned server configuration page processing methods when executed by a processor.

[0017] Through this application, when a new model server needs to be connected, each configuration item in the configuration page of the baseboard management controller is identified, and the menu information of the configuration page is obtained. The menu information includes the access path of each configuration item, the technology stack type of the configuration page is identified, and based on the technology stack type and the page corresponding to each configuration item, the component information in the page corresponding to each configuration item is identified, the access path of each configuration item in the menu information is associated and matched with the component information in the page corresponding to each configuration item, and the configuration information corresponding to each configuration item in the configuration page is output. In the above method, through the menu information and the component information in the page corresponding to each configuration item, the configuration page of the BMC of the new model server and the components in each configuration item can be fully automatically confirmed, effectively shortening the configuration time when the new model server is connected. BRIEF DESCRIPTION OF THE DRAWINGS

[0018] In order to more clearly illustrate the embodiments of the present application, the following is a brief introduction to the drawings required for use in the embodiments. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.

[0019] Figure 1 A schematic diagram of the architecture of a baseboard management controller system provided in an embodiment of the present application;

[0020] Figure 2A flow chart of a method for processing a server configuration page provided in an embodiment of the present application;

[0021] Figure 3 A schematic diagram of a component information identification process provided in an embodiment of the present application;

[0022] Figure 4 A schematic diagram of a process for determining menu information provided in an embodiment of the present application;

[0023] Figure 5 A schematic diagram of a recursive path detection provided in an embodiment of the present application;

[0024] Figure 6 A schematic diagram of the structure of a server configuration page processing device provided in an embodiment of the present application;

[0025] Figure 7 This is a schematic diagram of the structure of the electronic device provided in this application. DETAILED DESCRIPTION

[0026] The following will be combined with the accompanying drawings in the embodiments of this application to clearly and completely describe the technical solutions in the embodiments of this application. Obviously, the embodiments described are only part of the embodiments of this application, not all of them. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of this application.

[0027] It should be noted that, in the description of this application, the terms "comprises," "includes," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or device comprising a series of elements includes not only those elements, but also other elements not explicitly listed, or elements inherent to such process, method, article, or device. The terms "first," "second," etc., in this application are used to distinguish similar objects, and are not used to describe a particular order or sequence.

[0028] First, let’s explain the terms involved in this application:

[0029] The Baseboard Management Controller (BMC) configuration page is the user interface used to monitor, manage, and configure servers. The BMC is a chip on the server motherboard that's independent of the main CPU and features an independent network interface and operating system. Even if the server is powered off or frozen, remote access to the server is possible through the BMC configuration page. Operations include hardware status monitoring (checking the temperature, voltage, and operating status of hardware like the CPU, memory, and hard drives), firmware updates, remote power on and off, reboots, fault diagnosis and alerting, and server configuration adjustments (such as network settings, power management policies, and user rights). The BMC configuration page plays a key role in server configuration management and is a crucial tool for technicians to remotely manage and maintain servers.

[0030] In the prior art, when a new server model needs to be connected, it is necessary to manually review and analyze the server's BMC configuration page. Based on the manual analysis results, corresponding coding tests are performed to implement the configuration management of the new server model. However, manually reviewing and analyzing the BMC configuration page of the new server model requires a lot of manpower and repetitive work, and the entire process is time-consuming.

[0031] In response to the above problems, in an embodiment of the present application, when a new model server needs to be connected, each configuration item in the configuration page of the baseboard management controller is identified to obtain the menu information of the configuration page, which includes the access path of each configuration item; the technology stack type of the configuration page is identified, and based on the technology stack type and the page corresponding to each configuration item, the component information in the page corresponding to each configuration item is identified; the access path of each configuration item in the menu information is associated and matched with the component information in the page corresponding to each configuration item, and the configuration information corresponding to each configuration item in the configuration page is output. In the above method, through the menu information and the component information in the page corresponding to each configuration item, the configuration items and the components in each configuration item in the configuration page of the BMC of the new model server can be fully automatically confirmed, effectively shortening the configuration time when the new model server is connected.

[0032] In order to enable those skilled in the art to better understand the present application, the present application is further described in detail below with reference to the accompanying drawings and specific implementation methods.

[0033] In conjunction with the specific application environment architecture or specific hardware architecture on which the execution of the server configuration page processing method depends, the specific application environment architecture or specific hardware architecture is described here. Figure 1 , Figure 1 This is a schematic diagram of the architecture of the configuration page recognition system provided in this embodiment of the application. Figure 1,The configuration page identification system includes a region identification subsystem, a component identification subsystem, and a configuration item output subsystem, wherein,

[0034] The area identification subsystem is used to identify each configuration item in the configuration page of the baseboard management controller and obtain menu information of the configuration page. The menu information includes an access path to each configuration item.

[0035] The component identification subsystem is used to identify the technology stack type of the configuration page, and based on the technology stack type and the page corresponding to each configuration item, identify the component information in the page corresponding to each configuration item.

[0036] The configuration item output subsystem is used to associate and match the access path of each configuration item in the menu information with the component information in the page corresponding to each configuration item, and output the configuration information corresponding to each configuration item in the configuration page.

[0037] The following specific embodiments describe in detail the technical solution of the present application and how the technical solution of the present application solves the above-mentioned technical problems. The following specific embodiments can be combined with each other, and the same or similar concepts or processes may not be repeated in some embodiments. The embodiments of the present application will be described below in conjunction with the accompanying drawings.

[0038] Figure 2 A flow chart of the server configuration page processing method provided in the embodiment of the present application is shown as follows: Figure 2 As shown, an embodiment of the present application provides a page processing method, which is described in detail as follows:

[0039] S201 : Identify each configuration item in a configuration page of a baseboard management controller and obtain menu information of the configuration page, wherein the menu information includes an access path to each configuration item.

[0040] The execution subject of the embodiments of the present application can be an electronic device, or a page processing device provided in the electronic device. The page processing device can be implemented by software, or by a combination of software and hardware. The electronic device can be any device with computing capabilities.

[0041] The configuration page is a multi-level page. It can be understood that the configuration page includes multiple configuration sub-pages, and there is a corresponding relationship between the configuration sub-pages. The configuration sub-page includes multiple menus, and the menus can be configuration items or non-configuration items.

[0042] There is a corresponding relationship between the configuration sub-pages. It can be understood that by clicking the menu in the current configuration sub-page, a page jump can be triggered to enter the next level configuration sub-page of the configuration sub-page.

[0043] In one possible implementation, the menu information may be a multi-level storage set, including multiple menu routes, multiple menu identifiers, coordinates of the multiple menus in their respective configuration sub-pages, and multiple sub-menus of the multiple menus. A menu has a one-to-one correspondence with its route, its identifier, its coordinates in its respective configuration sub-page, and its sub-menus.

[0044] The menu route indicates the address of the menu. Through the menu route, you can directly jump to the configuration sub-page corresponding to the menu.

[0045] The menu ID represents the unique identity of the menu and is used to distinguish different menus.

[0046] The coordinates of a menu in its configuration subpage may be the coordinates of the upper left corner of the menu in its configuration subpage. For example, the coordinates may be the coordinates of a pixel coordinate system based on the upper left corner of the configuration subpage where the menu is located as the origin. For example, the coordinates of a menu in its configuration subpage are (x, y), where x represents the horizontal coordinate of the menu in its configuration subpage, and y represents the vertical coordinate of the menu in its configuration subpage.

[0047] The next level menu of the menu is the menu in the next level configuration sub-page when you click on it.

[0048] In the embodiment of the present application, the menu information can completely present the multi-level menu structure of the BMC configuration page through a recursive hierarchical relationship.

[0049] Server configuration items include but are not limited to: Network Time Protocol (NTP) configuration, service configuration, network configuration, BMC user configuration, Domain Name System (DNS) configuration, BMC log configuration, Simple Mail Transfer Protocol (SMTP) configuration, and trap configuration.

[0050] Each configuration item includes multiple components.

[0051] Exemplarily, the components in the NTP configuration include, but are not limited to: a time zone configuration component, an NTP server address configuration component, and a synchronization frequency configuration component.

[0052] Exemplarily, components in the network configuration include, but are not limited to: a dedicated port configuration component and a shared port configuration component.

[0053] Exemplarily, the components in the SMTP configuration include but are not limited to: a mailbox server configuration component and a sender mailbox configuration component.

[0054] The following is an exemplary description of the access path of each configuration item in the menu information.

[0055] For example, if you need to obtain the access path for NTP configuration, you can use the menu information to know the hierarchical relationship between NTP and multiple menus, and then obtain the access path for NTP configuration. Specifically, the menu information shows that you first locate menu A1 in the first configuration subpage, click menu A1 to jump to the second configuration subpage, locate menu A2 in the second configuration subpage, and click menu A2 to jump to the third configuration subpage. The third configuration subpage contains NTP configuration, so the access path for NTP configuration is from the first configuration subpage to the second configuration subpage to the third configuration subpage.

[0056] S202: Identify the technology stack type of the configuration page, and based on the technology stack type and the page corresponding to each configuration item, identify component information in the page corresponding to each configuration item.

[0057] In one possible implementation, identifying the technology stack type of the configuration page includes:

[0058] Determine the detection strategy for the technology stack, which includes at least one of the following: web page source code detection, feature element analysis, and command acquisition;

[0059] Determine the technology stack type based on the technology stack detection strategy.

[0060] In one possible implementation, determining the technology stack type based on the technology stack detection strategy includes:

[0061] When the detection strategy includes web page source code detection, multiple technology stack keywords are matched in the web page source code, and the technology stack type is determined based on the matched keywords;

[0062] When the detection strategy includes characteristic element analysis, identifying elements associated with the technology stack in the header element and / or the body element of the configuration page, and determining the technology stack type based on the identified elements;

[0063] When the detection strategy includes command acquisition, the target command is executed in the configuration page, and the execution result of the target command is obtained. The execution result includes the information of the front-end library corresponding to the configuration page, and the technology stack type is determined based on the information of the front-end library.

[0064] The following further explains the technology stack-based detection strategy and how to determine the technology stack type:

[0065] When the detection strategy of the technology stack includes web page source code detection and characteristic element analysis, or characteristic element analysis and command acquisition, determine whether the technology stack types obtained by the two detection strategies are the same. If the technology stack types obtained by the two detection strategies are different, the technology stack type obtained based on the characteristic element analysis will be determined as the final technology stack type; if the technology stack types obtained by the two detection strategies are the same, the same technology stack type will be determined as the final technology stack type.

[0066] When the technology stack detection strategy includes web page source code detection and command acquisition, determine whether the technology stack types obtained by the two detection strategies are the same. If the technology stack types obtained by the two detection strategies are different, the technology stack type obtained based on command acquisition will be determined as the final technology stack type; if the technology stack types obtained by the two detection strategies are the same, the same technology stack type will be determined as the final technology stack type.

[0067] When the technology stack detection strategy includes web page source code detection, characteristic element analysis, and command acquisition, determine whether the technology stack types obtained by the three detection strategies are the same. If the technology stack types obtained by the three detection strategies are all different, the technology stack type obtained based on the characteristic element analysis will be determined as the final technology stack type; if there are at least two identical technology stack types among the technology stack types obtained by the three detection strategies, the identical technology stack type will be determined as the final technology stack type.

[0068] Keywords that match multiple technology stacks in web page source code include but are not limited to: react, vue, angular, and jquery.

[0069] Technology stack types include but are not limited to: React, Vue, Angular, and Jquery.

[0070] The elements associated with the technology stack can be Document Object Model (DOM) attributes. DOM attributes correspond to technology stack types one by one. For example, the DOM attribute corresponding to React is data-reactroot, and the DOM attribute corresponding to Vue is data-v- , the corresponding DOM attribute of Angular is _nghost- , the DOM attribute corresponding to Jquery has no special attributes.

[0071] In one possible implementation, the page corresponding to the configuration item is the page where the components in the configuration item are located, and the component information in the page corresponding to the configuration item is multiple description information of each component in the configuration item, and the description information is used to indicate at least one of the coordinates, status, and parameters of the component.

[0072] In one possible implementation, for a component in any configuration item, based on the technology stack type and the page corresponding to each configuration item, identifying component information on the page corresponding to each configuration item includes:

[0073] Based on the menu information, the access path of the configuration item can be determined; based on the access path of the configuration item, you can jump to the page where the configuration item is located; clicking the configuration item on the page where the configuration item is located can jump to the page where the component in the configuration item is located; based on the technology stack type, identify the component information of the page where the component in the configuration item is located.

[0074] The coordinates of a component are the coordinates of the upper left corner of the component on the page it is located on. For example, the coordinates can be a pixel coordinate system with the upper left corner of the page it is located on as the origin. For example, if the x value of component 1 is 120 and the y value is 80, it means that the upper left corner of the component is located 120 pixels horizontally and 80 pixels vertically on the second page.

[0075] The state of a component indicates whether the component requires configuration. For example, the state of a component can be represented by a first Boolean value (required). When the first Boolean value is True, it indicates that the component requires configuration; when the first Boolean value is False, it indicates that the component does not require configuration.

[0076] The parameter (value) of a component is the current corresponding parameter value of the component.

[0077] The multiple description information may further include: component identifier (id), label (lable), parameter name (name), and type (type).

[0078] Component identifiers correspond to components one by one and are used to distinguish different components.

[0079] The component label is the text label displayed on the second page of the component, for example, NTP Server.

[0080] The parameter name of the component is the parameter key name received by the backend interface, for example, ntpServer.

[0081] The type of a component indicates how to interact with the component, including but not limited to input type, select type, and checkbox type.

[0082] When the component type is select type or checkbox type, the description information also includes optional elements of the component. For example, when the component is a time zone, the component type is select type, and the optional elements corresponding to the component can be UTC+8, UTC, or UTC-5.

[0083] In one possible implementation, the description information may include the status of the configuration item, where the status of the configuration item indicates whether the BMC configuration page supports the configuration of the configuration item. For example, the status of the configuration item may be represented by a second Boolean value (supported). When the second Boolean value is True, it indicates that the BMC configuration page supports the configuration of the configuration item; when the second Boolean value is False, it indicates that the BMC configuration page does not support the configuration of the configuration item.

[0084] Optionally, when the access path to the configuration item cannot be obtained according to the menu information, the second Boolean value is determined to be False.

[0085] S203: Associating and matching the access path of each configuration item in the menu information with the component information in the page corresponding to each configuration item, and outputting the configuration information corresponding to each configuration item in the configuration page.

[0086] The configuration information corresponding to the configuration item includes the access path of the configuration item and the component information in the page corresponding to the configuration item.

[0087] Furthermore, after determining the configuration information corresponding to each configuration item, the configuration of each configuration item in the server configuration page can be implemented.

[0088] exist Figure 2 In the illustrated embodiment, when a new model server needs to be connected, each configuration item in the configuration page of the baseboard management controller is identified to obtain menu information for the configuration page, including the access path for each configuration item; the technology stack type of the configuration page is identified, and based on the technology stack type and the page corresponding to each configuration item, the component information in the page corresponding to each configuration item is identified; the access path for each configuration item in the menu information is correlated and matched with the component information in the page corresponding to each configuration item, and the configuration information corresponding to each configuration item in the configuration page is output. In the above method, through the menu information and the component information in the page corresponding to each configuration item, the configuration items and the components in each configuration item in the configuration page of the BMC of the new model server can be fully automatically confirmed, effectively shortening the configuration time when the new model server is connected.

[0089] Based on any of the above embodiments, Figure 3 , a detailed description is given of the process of identifying component information in the page corresponding to each configuration item based on the technology stack type and the page corresponding to each configuration item.

[0090] Figure 3 This is a schematic diagram of the component information identification process provided in the embodiment of this application. Figure 3 , the method may include:

[0091] S301. Determine a component identification strategy based on the technology stack type.

[0092] Among them, the component identification strategy includes at least one of the following: an identification strategy based on an automated script, an identification strategy based on a scripting language, an identification strategy based on a front-end development interface, and an identification strategy based on image processing.

[0093] Technology stack types include but are not limited to: React, Vue, Angular, and Jquery.

[0094] Exemplarily, when the technology stack type is React, Vue, or Angular, the component identification strategies include: an identification strategy based on a scripting language, an identification strategy based on a front-end development interface, and an identification strategy based on image processing.

[0095] Exemplarily, when the technology stack type is Jquery, the component identification strategy includes: an automated script-based identification strategy and an image processing-based identification strategy.

[0096] S302: Based on the component identification strategy, identify component information in the page corresponding to each configuration item.

[0097] In a possible implementation, for a first page corresponding to any configuration item, identifying component information on the page corresponding to each configuration item based on a component identification strategy includes:

[0098] When the component identification strategy includes an identification strategy based on an automated script, identifying a form component in the first page based on the automated script to obtain component information of the first page;

[0099] When the component identification strategy includes an identification strategy based on a scripting language, identifying form elements in the first page based on a script of the language to obtain component information of the first page;

[0100] When the component identification strategy includes an identification strategy based on a front-end development interface, obtaining components in a document object model corresponding to the first page based on a development interface of a front-end framework to obtain component information of the first page;

[0101] When the component identification strategy includes an identification strategy based on image processing, an image of the first page is acquired, and component information in the first page is identified based on the image of the first page.

[0102] In one possible implementation, after identifying component information on a page corresponding to each configuration item based on the component identification strategy, the method further includes:

[0103] Determining a first weight of component information identified by an automated script-based recognition strategy, a second weight of component information identified by a scripting language-based recognition strategy, a third weight of component information identified by a front-end development interface-based recognition strategy, and a fourth weight of component information identified by an image processing-based recognition strategy;

[0104] Based on the first weight, the second weight, the third weight, and the fourth weight, data mixing is performed on component information identified by an automated script-based recognition strategy, component information identified by a scripting language-based recognition strategy, component information identified by a front-end development interface-based recognition strategy, and component information identified by an image processing-based recognition strategy.

[0105] Exemplarily, the first weight is 30%, the second weight is 10%, the third weight is 40%, and the fourth weight is 20%.

[0106] Component information includes the coordinates, status, parameters, identifiers, labels, parameter names, and types of the components.

[0107] The following Examples 1A and 1B illustrate a process of mixing component information identified by an automated script-based recognition strategy, a scripting language-based recognition strategy, a front-end development interface-based recognition strategy, and an image processing-based recognition strategy based on a component in a configuration item based on a first weight, a second weight, a third weight, and a fourth weight.

[0108] Example 1A, the component information of the component identified by the recognition strategy based on the automated script includes coordinate 1, state 1 and parameter 1, the component information of the component identified by the recognition strategy based on the scripting language includes flag 1 and label 1, the component information of the component identified by the recognition strategy based on the front-end development interface includes type 1, and the component information of the component identified by the recognition strategy based on image processing includes parameter name 1, then it is determined that the component information of the component includes coordinate 1, state 1, parameter 1, flag 1, label 1, parameter name 1, and type 1.

[0109] Example 1B: The component information of the component identified by the recognition strategy based on the automated script includes flag 1, coordinate 1, state 1, and parameter 1; the component information of the component identified by the recognition strategy based on the scripting language includes parameter name 1, flag 2, label 1, and parameter 2; the component information of the component identified by the recognition strategy based on the front-end development interface includes type 1 and parameter 2; the component information of the component identified by the recognition strategy based on image processing includes parameter name 2. The first weight is 30%, the second weight is 10%, the third weight is 40%, and the fourth weight is 20%. If the first weight is higher than the second weight, flag 1 is determined to be one of the component information of the component; if the sum of the second weight and the third weight is greater than the first weight, parameter 2 is determined to be one of the component information of the component; if the fourth weight is higher than the second weight, parameter name 2 is determined to be one of the component information of the component. Then, the component information of the component is determined to include coordinate 1, state 1, parameter 2, flag 1, label 1, parameter name 2, and type 1.

[0110] In one possible implementation, for a component, identifying component information on the first page based on an image on the first page includes:

[0111] Get the third keyword corresponding to the component;

[0112] Recognize the image of the first page through an optical character recognition (OCR) thread to obtain a plurality of fourth keywords;

[0113] determining whether the plurality of fourth keywords include the third keyword;

[0114] If the third keyword is included in multiple fourth keywords, the coordinates of the third keyword in the first page are determined through the vision processing (Vision) thread; a click action is simulated at the coordinates to determine whether a route jump is triggered; when the route jump is triggered, the component information in the page after the jump is further identified; when the route jump is not triggered, it is determined whether there is an interface request; when there is an interface request, the newly added component information in the first page is identified based on the identification strategy of the automated script; when there is no interface request, the component information in the first page is identified through the vision processing (Vision) thread.

[0115] Optionally, the third keyword may be a keyword in a keyword information set determined based on manual experience through various configuration items of the server.

[0116] The third keyword corresponds to the component one-to-one. For example, the “time zone configuration component” corresponds to the third keyword “time zone”, and the “dedicated port configuration component” corresponds to the third keyword “dedicated port”.

[0117] In a possible implementation, identifying component information on the first page based on the image of the first page further includes:

[0118] Based on the image of the first page, determining the coordinates of the keyword corresponding to the component information;

[0119] Based on the coordinates of the keyword, determine the coordinates of the center point of the area where the keyword is located;

[0120] A correspondence between the center point coordinates and the component information is established, and based on the center point coordinates, an access path corresponding to the component information is constructed.

[0121] The coordinates of the keyword corresponding to the component information may be the coordinates of the third keyword in the first page.

[0122] In a possible implementation, determining the coordinates of the center point of the area where the keyword is located based on the coordinates of the keyword includes:

[0123] Using a visual processing model, determine the component corresponding to the keyword as the top-level element on the first page;

[0124] Determine the width and height of the topmost element;

[0125] The coordinates of the center point of the area where the keyword is located are determined according to the coordinates of the keyword in the first page and the width and height of the top-level element.

[0126] Exemplarily, the coordinates of the keyword in the first page are (x1, y1), and the coordinates of the center point of the keyword in the first page are (x2, y2).

[0127] x1 and x2 satisfy the following formula 1:

[0128] Formula 1;

[0129] Among them, width represents the width of the top-level element.

[0130] y1 and y2 satisfy the following formula 2:

[0131] Formula 2;

[0132] Among them, height represents the height of the top-level element.

[0133] It is worth noting that, in the embodiments of the present application, the coordinates can be determined by using the center point coordinates as the coordinates of the keyword to simulate clicks, which can improve the accuracy of simulated clicks.

[0134] The visual processing model is trained using images of multiple sample pages, multiple sample keywords, coordinates of multiple sample keywords, types of multiple sample configuration items and sample components, and identifiers of multiple sample configuration items and sample components as a training set.

[0135] Establishing a correspondence between the center point coordinates and the component information, and building an access path corresponding to the component information based on the center point coordinates can be understood as: establishing a correspondence between the center point coordinates and the top-level element, and clicking the top-level element based on the center point coordinates to build an access path corresponding to the component information.

[0136] exist Figure 3 In the illustrated embodiment, a component identification strategy is determined based on the technology stack type; the component identification strategy includes at least one of the following: an automated script-based identification strategy, a scripting language-based identification strategy, a front-end development interface-based identification strategy, and an image processing-based identification strategy; based on the component identification strategy, component information in the page corresponding to each configuration item is identified. In the above method, component information in the page corresponding to each configuration item is identified based on the technology stack type in combination with multiple component identification strategies. This method is no longer limited to the BMC configuration page that can only identify standard Hypertext Markup Language (HTML) components in the related art. By comprehensively analyzing the coordinates, status, and parameters of the components, the accurate positioning of non-standard HTML components and the acquisition of corresponding component information are achieved, thereby improving the accuracy of automatically identifying the BMC configuration page and making the final component information more accurate.

[0137] In addition, based on the first weight, the second weight, the third weight, and the fourth weight, data mixing is performed on the component information identified by the recognition strategy based on the automated script, the component information identified by the recognition strategy based on the scripting language, the component information identified by the recognition strategy based on the front-end development interface, and the component information identified by the recognition strategy based on image processing. The gradient weight design makes the component information obtained by different strategies organically complementary, thereby improving the accuracy and completeness of the component information.

[0138] Based on any of the above embodiments, Figure 4 , for any configuration item, the process of identifying each configuration item in the BMC configuration page and obtaining the menu information of the configuration page is described in detail.

[0139] Figure 4 This is a schematic diagram of the process of determining menu information provided in the embodiment of the present application. Figure 4 , the method may include:

[0140] S401: Obtain a first keyword corresponding to a configuration item.

[0141] Optionally, the first keyword may be a keyword in a keyword information set determined based on manual experience through various configuration items of the server.

[0142] The first keyword corresponds to the configuration item one-to-one. For example, the configuration item "NTP configuration" corresponds to the first keyword "NTP", and the configuration item "network configuration" corresponds to the first keyword "network".

[0143] S402: Identify keywords in the configuration page to obtain multiple second keywords.

[0144] In a possible implementation, keywords in the configuration page are identified to obtain multiple second keywords, including:

[0145] Get an image of the configuration page;

[0146] The image of the configuration page is recognized through an optical character recognition thread to obtain a plurality of second keywords.

[0147] S403: Determine whether the plurality of second keywords include the first keyword.

[0148] If so, execute S404; otherwise, execute S405.

[0149] S404: Determine an access path corresponding to the configuration item according to the detection path of the first keyword.

[0150] S405. Scan the document object model of the configuration page to obtain multiple menu elements, and perform recursive path detection on the multiple menu elements based on the first keyword until the page where the first keyword is located is obtained. Then, based on the detection path of the first keyword, determine the access path of the configuration item.

[0151] In a possible implementation, for any menu element, recursive path detection is performed on multiple menu elements based on the first keyword, including:

[0152] Trigger a click operation on a menu element to determine whether a route jump occurs;

[0153] If a route jump occurs, the menu element is determined to be valid, and the first keyword is recursively detected in multiple pages corresponding to the menu element;

[0154] If no route jump occurs, the second page after the click is determined, and a grayscale comparison is performed on the second page and the third page before the click to obtain a grayscale comparison result. If the grayscale comparison result indicates that the second page and the third page are different, the newly added element in the second page is determined, and the first keyword is recursively detected in multiple pages corresponding to the newly added element.

[0155] In a possible implementation, determining the newly added elements in the second page includes: rescanning the document object model of the configuration page to determine the newly added elements in the second page.

[0156] Below, through Figure 5 , an exemplary description is given of recursive path detection for multiple menu elements based on the first keyword.

[0157] Figure 5 A schematic diagram of a recursive path detection provided in an embodiment of the present application. Figure 5 , including: configuration page 1, configuration page 2, configuration page 3, and configuration page 4, wherein,

[0158] For example, when the first keyword is keyword 8,

[0159] Identify the keywords in the configuration page 1 to obtain multiple keywords 1 and 2;

[0160] Make sure keyword 1 and keyword 2 do not include keyword 8;

[0161] Simulate a click on the coordinates of keyword 1 in configuration page 1 to jump to configuration page 2;

[0162] Identify the keywords in configuration page 2 to obtain keywords 3 and 4;

[0163] Make sure that keyword 8 is not included in keywords 3 and 4;

[0164] A simulated click is performed at the coordinates of keyword 3 in configuration page 2, with no jump;

[0165] A simulated click is performed at the coordinates of keyword 4 in configuration page 2, with no jump;

[0166] Return to configuration page 1, simulate clicking on the coordinates of keyword 2 in configuration page 1, and jump to configuration page 3;

[0167] Identify the keywords in configuration page 3 to obtain keywords 5 and 6;

[0168] Make sure that keyword 8 is not included in keywords 5 and 6;

[0169] A simulated click is performed at the coordinates of keyword 5 in configuration page 3, with no jump;

[0170] Simulate a click on the coordinates of keyword 6 in configuration page 3 to jump to configuration page 4;

[0171] Identify the keywords in configuration page 4 to obtain keywords 7 and 8;

[0172] Determine that keyword 7 and keyword 8 include keyword 8;

[0173] According to the detection path of the first keyword, it is determined that the corresponding access path of the configuration item is configuration page 1 to configuration page 3 to configuration page 4.

[0174] In one possible implementation, each time a page jumps, the route corresponding to the current page is stored in a route stack. When rolling back, the page is rolled back to the previous page according to the route in the route stack, for example, rolling back from configuration page 2 to configuration page 1.

[0175] In an embodiment of the present application, a process progress bar (Flag) is also included, which includes the identifiers of each configuration item, the identifiers of each step of the configuration item, the identifier of whether the step is completed, the overall process identifier, and the identifier of whether the overall process is completed.

[0176] The identifiers of each step of the configuration item include: whether the configuration item determines the identifier of the menu information (for example, menu), whether the configuration item determines the identifier of its corresponding component (for example, form), and whether the configuration item determines the identifier of its corresponding component information (for example, component).

[0177] For example, when the configuration item determines the menu information, the indicator for determining whether the step corresponding to the menu is completed is "finish." When the configuration item does not determine the menu information, the indicator for determining whether the step corresponding to the menu is completed is "False."

[0178] It should be noted that the identification of whether other steps are completed is similar to whether the configuration item has confirmed the menu information, and will not be repeated here.

[0179] In a possible implementation, when the indicator for determining whether the step corresponding to the component of the configuration item is completed is False, the second Boolean value (supported) of the configuration item is confirmed to be False.

[0180] The overall process identifier is, for example, export. When the component of all configuration items is not empty, export is determined to be True, indicating that all processes have been completed. The access path of each configuration item in the menu information can be associated and matched with the component information in the page corresponding to each configuration item, and the configuration information corresponding to each configuration item in the configuration page can be output.

[0181] exist Figure 4In the illustrated embodiment, a first keyword corresponding to a configuration item is obtained, keywords in a configuration page are identified to obtain multiple second keywords, and it is determined whether the multiple second keywords include the first keyword. If the multiple second keywords include the first keyword, the access path corresponding to the configuration item is determined based on the detection path of the first keyword. If the multiple second keywords do not include the first keyword, the document object model of the configuration page is scanned to obtain multiple menu elements, and recursive path detection is performed on the multiple menu elements based on the first keyword until the page where the first keyword is located is obtained. The access path of the configuration item is determined based on the detection path of the first keyword. In the above method, when a new model of server needs to be connected, the document object model of the configuration page is continuously scanned to obtain multiple menu elements, and recursive path detection is performed on the multiple menu elements based on the first keyword until the page where the first keyword is located is obtained. The access path of the configuration item is determined based on the detection path of the first keyword. The menu information of the BMC configuration page can be determined, thereby realizing that the access path of each configuration item can be quickly parsed through the menu information of the BMC configuration page, thereby reducing the configuration time of the new model server.

[0182] Through the description of the above implementation methods, those skilled in the art can clearly understand that the method according to the above embodiment can be implemented by means of software plus the necessary general hardware platform, and of course it can also be implemented by hardware, but in many cases the former is a better implementation method.

[0183] Figure 6 This is a schematic diagram of the structure of the server configuration page processing device provided in the embodiment of the present application. Figure 6 As shown, the embodiment of the present application further provides a server configuration page processing device 60, comprising: a first processing module 601, a second processing module 602 and a third processing module 603, wherein:

[0184] The first processing module 601 is used to identify each configuration item in the configuration page of the baseboard management controller and obtain menu information of the configuration page, wherein the menu information includes an access path of each configuration item;

[0185] The second processing module 602 is used to identify the technology stack type of the configuration page, and based on the technology stack type and the page corresponding to each configuration item, identify component information in the page corresponding to each configuration item;

[0186] The third processing module 603 is used to associate and match the access path of each configuration item in the menu information with the component information in the page corresponding to each configuration item, and output the configuration information corresponding to each configuration item in the configuration page.

[0187] A server configuration page processing device 60 provided in an embodiment of the present application can execute the technical solution shown in the above method embodiment. Its implementation principle and beneficial effects are similar and will not be repeated here.

[0188] In a possible implementation, the second processing module 602 is specifically configured to:

[0189] Determine the detection strategy for the technology stack, which includes at least one of the following: web page source code detection, feature element analysis, and command acquisition;

[0190] Determine the technology stack type based on the technology stack detection strategy.

[0191] In a possible implementation, the second processing module 602 is specifically configured to:

[0192] When the detection strategy includes web page source code detection, multiple technology stack keywords are matched in the web page source code, and the technology stack type is determined based on the matched keywords;

[0193] When the detection strategy includes characteristic element analysis, identifying elements associated with the technology stack in the header element and / or the body element of the configuration page, and determining the technology stack type based on the identified elements;

[0194] When the detection strategy includes command acquisition, the target command is executed in the configuration page, and the execution result of the target command is obtained. The execution result includes the information of the front-end library corresponding to the configuration page, and the technology stack type is determined based on the information of the front-end library.

[0195] In a possible implementation, the second processing module 602 is specifically configured to:

[0196] Determine a component identification strategy based on the technology stack type. The component identification strategy includes at least one of the following: an automated script-based identification strategy, a scripting language-based identification strategy, a front-end development interface-based identification strategy, or an image processing-based identification strategy.

[0197] Based on the component identification strategy, identify the component information on the page corresponding to each configuration item.

[0198] In a possible implementation, for a first page corresponding to any configuration item, the second processing module 602 is specifically configured to:

[0199] When the component identification strategy includes an identification strategy based on an automated script, identifying a form component in the first page based on the automated script to obtain component information of the first page;

[0200] When the component identification strategy includes an identification strategy based on a scripting language, identifying form elements in the first page based on a script of the language to obtain component information of the first page;

[0201] When the component identification strategy includes an identification strategy based on a front-end development interface, obtaining components in a document object model corresponding to the first page based on a development interface of a front-end framework to obtain component information of the first page;

[0202] When the component identification strategy includes an identification strategy based on image processing, an image of the first page is acquired, and component information in the first page is identified based on the image of the first page.

[0203] In a possible implementation, the second processing module 602 is further configured to:

[0204] Determining a first weight of component information identified by an automated script-based recognition strategy, a second weight of component information identified by a scripting language-based recognition strategy, a third weight of component information identified by a front-end development interface-based recognition strategy, and a fourth weight of component information identified by an image processing-based recognition strategy;

[0205] Based on the first weight, the second weight, the third weight, and the fourth weight, data mixing is performed on component information identified by an automated script-based recognition strategy, component information identified by a scripting language-based recognition strategy, component information identified by a front-end development interface-based recognition strategy, and component information identified by an image processing-based recognition strategy.

[0206] In a possible implementation, the second processing module 602 is further configured to:

[0207] Based on the image of the first page, determining the coordinates of the keyword corresponding to the component information;

[0208] Based on the coordinates of the keyword, determine the coordinates of the center point of the area where the keyword is located;

[0209] A correspondence between the center point coordinates and the component information is established, and based on the center point coordinates, an access path corresponding to the component information is constructed.

[0210] In a possible implementation, for any configuration item, the first processing module 601 is specifically configured to:

[0211] Get the first keyword corresponding to the configuration item;

[0212] Identify the keywords in the configuration page to obtain multiple second keywords;

[0213] determining whether the plurality of second keywords include the first keyword;

[0214] If the first keyword is included in the plurality of second keywords, determining an access path corresponding to the configuration item according to a detection path of the first keyword;

[0215] If the first keyword is not included in the multiple second keywords, the document object model of the configuration page is scanned to obtain multiple menu elements, and recursive path detection is performed on the multiple menu elements based on the first keyword until the page where the first keyword is located is obtained. Then, the access path of the configuration item is determined based on the detection path of the first keyword.

[0216] In a possible implementation, for any menu element, the first processing module 601 is specifically configured to:

[0217] Trigger a click operation on a menu element to determine whether a route jump occurs;

[0218] If a route jump occurs, the menu element is determined to be valid, and the first keyword is recursively detected in multiple pages corresponding to the menu element;

[0219] If no route jump occurs, the second page after the click is determined, and a grayscale comparison is performed on the second page and the third page before the click to obtain a grayscale comparison result. If the grayscale comparison result indicates that the second page and the third page are different, the newly added element in the second page is determined, and the first keyword is recursively detected in multiple pages corresponding to the newly added element.

[0220] A server configuration page processing device 60 provided in an embodiment of the present application can execute the technical solution shown in the above method embodiment. Its implementation principle and beneficial effects are similar and will not be repeated here.

[0221] Figure 7 This is a schematic diagram of the structure of the electronic device provided in this application. Figure 7 As shown, the electronic device 70 provided in this embodiment includes: at least one processor 701 and a memory 702. Optionally, the electronic device 70 further includes a communication component 703. The processor 701, the memory 702 and the communication component 703 are connected via a bus.

[0222] In a specific implementation process, at least one processor 701 executes the computer-executable instructions stored in the memory 702, so that the at least one processor 701 executes the above-mentioned server configuration page processing method embodiment.

[0223] The specific implementation process of the processor 701 can be found in the above method embodiment. Its implementation principle and technical effects are similar and will not be repeated here in this embodiment.

[0224] In the above embodiments, it should be understood that the processor may be a central processing unit (CPU), other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), etc. A general-purpose processor may be a microprocessor or any conventional processor. The steps of the method disclosed in the application may be directly executed by a hardware processor or by a combination of hardware and software modules within the processor.

[0225] The memory may include random access memory (RAM) and may also include non-volatile memory (NVM), such as at least one disk storage.

[0226] A bus can be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, or an Extended Industry Standard Architecture (EISA) bus. Buses can be categorized as address buses, data buses, and control buses. For ease of illustration, the buses in the drawings of this application are not limited to just one bus or just one type of bus.

[0227] An embodiment of the present application further provides a computer-readable storage medium, in which a computer program is stored, wherein the computer program is configured to execute the steps of any of the above-mentioned server configuration page processing method embodiments when running.

[0228] In an exemplary embodiment, the computer-readable storage medium may include, but is not limited to, various media that can store computer programs, such as a USB flash drive, a read-only memory (ROM), a random access memory (RAM), a mobile hard disk, a magnetic disk, or an optical disk.

[0229] An embodiment of the present application further provides a computer program product, which includes a computer program. When the computer program is executed by a processor, the steps of any of the above-mentioned server configuration page processing method embodiments are implemented.

[0230] An embodiment of the present application also provides another computer program product, including a non-volatile computer-readable storage medium, which stores a computer program. When the computer program is executed by a processor, it implements the steps in any of the above-mentioned server configuration page processing method embodiments.

[0231] Professionals may further appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of the two. In order to clearly illustrate the interchangeability of hardware and software, the above description has generally described the components and steps of each example according to their functions. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professionals and technicians may use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.

[0232] The above is a detailed introduction to a server configuration page processing method, electronic device, and storage medium provided by this application. Specific examples are used herein to illustrate the principles and implementation methods of this application. The description of the above embodiments is only intended to help understand the method and core ideas of this application. It should be pointed out that, for those skilled in the art, without departing from the principles of this application, several improvements and modifications can be made to this application, and these improvements and modifications also fall within the scope of protection of the claims of this application.

Claims

1. A server configuration page processing method, characterized in that: include: Identifying each configuration item in a configuration page of a baseboard management controller to obtain menu information of the configuration page, wherein the menu information includes an access path to each configuration item; Identifying a technology stack type of the configuration page, and based on the technology stack type and the page corresponding to each configuration item, identifying component information in the page corresponding to each configuration item; Associating and matching the access path of each configuration item in the menu information with the component information in the page corresponding to each configuration item, and outputting the configuration information corresponding to each configuration item in the configuration page; For any configuration item; Identify each configuration item in the configuration page of the baseboard management controller to obtain menu information of the configuration page, including: Obtaining a first keyword corresponding to the configuration item; Identifying keywords in the configuration page to obtain a plurality of second keywords; determining whether the plurality of second keywords include the first keyword; If the plurality of second keywords include the first keyword, determining an access path corresponding to the configuration item according to a detection path of the first keyword; If the first keyword is not included in the multiple second keywords, the document object model of the configuration page is scanned to obtain multiple menu elements, and recursive path detection is performed on the multiple menu elements based on the first keyword until the page where the first keyword is located is obtained. Then, the access path of the configuration item is determined based on the detection path of the first keyword.

2. The method according to claim 1, characterized in that Identify the technology stack type of the configuration page, including: Determining a detection strategy for a technology stack, wherein the detection strategy for the technology stack includes at least one of the following: web page source code detection, feature element analysis, and command acquisition; Based on the detection strategy of the technology stack, the technology stack type is determined.

3. The method according to claim 2, characterized in that Determining the type of the technology stack based on the detection strategy of the technology stack includes: When the detection strategy includes webpage source code detection, matching keywords of multiple technology stacks in the webpage source code, and determining the technology stack type based on the matched keywords; When the detection strategy includes characteristic element analysis, identifying elements associated with a technology stack in a header element and / or a body element of the configuration page, and determining the technology stack type based on the identified elements; When the detection strategy includes command acquisition, the target command is executed in the configuration page, and the execution result of the target command is obtained. The execution result includes information of the front-end library corresponding to the configuration page, and the technology stack type is determined based on the information of the front-end library.

4. The method according to any one of claims 1 to 3, characterized in that Based on the technology stack type and the page corresponding to each configuration item, identifying component information on the page corresponding to each configuration item includes: Determining a component identification strategy based on the technology stack type, the component identification strategy including at least one of the following: an identification strategy based on an automated script, an identification strategy based on a scripting language, an identification strategy based on a front-end development interface, and an identification strategy based on image processing; Based on the component identification strategy, component information in the page corresponding to each configuration item is identified.

5. The method according to claim 4, characterized in that For a first page corresponding to any configuration item, identifying component information in the page corresponding to each configuration item based on the component identification strategy includes: When the component identification strategy includes an identification strategy based on an automated script, identifying the form component in the first page based on the automated script to obtain component information of the first page; When the component identification strategy includes an identification strategy based on a scripting language, identifying form elements in the first page based on a script in the language to obtain component information of the first page; When the component identification strategy includes an identification strategy based on a front-end development interface, obtaining components in a document object model corresponding to the first page based on a development interface of a front-end framework to obtain component information of the first page; When the component identification strategy includes an identification strategy based on image processing, an image of the first page is acquired, and component information in the first page is identified based on the image of the first page.

6. The method according to claim 5, characterized in that After identifying component information on the page corresponding to each configuration item based on the component identification strategy, the method further includes: Determining a first weight of component information identified by an automated script-based recognition strategy, a second weight of component information identified by a scripting language-based recognition strategy, a third weight of component information identified by a front-end development interface-based recognition strategy, and a fourth weight of component information identified by an image processing-based recognition strategy; Based on the first weight, the second weight, the third weight, and the fourth weight, data mixing is performed on component information identified by an automated script-based recognition strategy, component information identified by a scripting language-based recognition strategy, component information identified by a front-end development interface-based recognition strategy, and component information identified by an image processing-based recognition strategy.

7. The method according to claim 5 or 6, characterized in that When identifying component information in the first page based on the image of the first page, the method further includes: determining, based on the image of the first page, coordinates of the keyword corresponding to the component information; Based on the coordinates of the keyword, determining the coordinates of the center point of the area where the keyword is located; A correspondence between the center point coordinates and the component information is established, and an access path corresponding to the component information is constructed based on the center point coordinates.

8. The method according to claim 1, characterized in that For any menu element; Based on the first keyword, recursive path detection is performed on multiple menu elements, including: Triggering a click operation on the menu element to determine whether a route jump occurs; If a route jump occurs, determining that the menu element is valid, and recursively detecting the first keyword in multiple pages corresponding to the menu element; If no route jump occurs, the second page after the click is determined, and a grayscale comparison is performed on the second page and the third page before the click to obtain a grayscale comparison result. If the grayscale comparison result indicates that the second page and the third page are different, a new element in the second page is determined, and the first keyword is recursively detected in multiple pages corresponding to the new element.

9. An electronic device, characterized in that: include: memory for storing computer programs; A processor, configured to implement the steps of the server configuration page processing method according to any one of claims 1 to 8 when executing the computer program.

10. A computer-readable storage medium, characterized in that The computer-readable storage medium stores a computer program, wherein when the computer program is executed by a processor, the steps of the server configuration page processing method according to any one of claims 1 to 8 are implemented.

Citation Information

Patent Citations

  • Management configuration method, computing device and server

    CN117354149A

  • Server configuration method, computer equipment and storage medium

    CN119544497A