Information collection method and device, electronic equipment, storage medium and program product

By collecting and comparing static data and feature information in the server system, the problem of efficiently obtaining software installation difference information in existing technologies is solved, thus enabling efficient problem troubleshooting.

CN120803482AInactive Publication Date: 2025-10-17UNIONTECH SOFTWARE TECH CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202511296488.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-09-11
Publication Date
2025-10-17
Estimated Expiration
Not applicable · inactive patent

AI Technical Summary

Technical Problem

Existing technologies struggle to efficiently obtain information about software installation differences in server systems, leading to low efficiency in troubleshooting.

Method used

The system sends data collection requests from the development side to the user side, collects static data in the runtime environment, and compares it with specified feature information in the feature database maintained by the development side to obtain difference information.

Benefits of technology

It enables remote and automated data collection, reduces uncontrollable human factors, provides reliable reference information, and improves the efficiency of problem diagnosis.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120803482A_ABST
    Figure CN120803482A_ABST
Patent Text Reader

Abstract

The invention relates to an information collection method and device, electronic equipment, a storage medium and a program product, and the information collection method applied to a user side of a server system comprises the steps: collecting static data of target software in a running environment in response to a data collection request sent by a development side of the server system; specified feature information of the target software is obtained from a feature database maintained by the development end, and the specified feature information is obtained by installing and analyzing the target software according to the configured software installation parameters through the development end; comparing the static data with specified feature information to obtain difference information; and returning at least part of the data and the difference information in the static data to the development end, so that the troubleshooting efficiency can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present disclosure relates to the field of computers, and particularly relates to an information collection method and device, electronic equipment, storage medium and program product. BACKGROUND

[0002] With more and more users of a server system, the demand for technical support is also increasing. When an operation and maintenance personnel checks problems on a user side, some key information of a running environment of the user side needs to be understood.

[0003] A common processing method at present is that a front-end technical personnel manually acquires a large amount of information of the running environment, and then the operation and maintenance personnel screens out required key information from the large amount of information.

[0004] However, since the deployed running environment is very complex, many problems caused by configuration differences and installed software package differences are difficult to be perceived, so that the problem checking efficiency is affected. SUMMARY

[0005] The present disclosure provides an information collection method and device, electronic equipment, storage medium and program product, to at least solve the problem that it is difficult to efficiently acquire difference information of software installation from a deployed running environment in the related art.

[0006] According to a first aspect of an embodiment of the present disclosure, an information collection method is provided, for a user side of a server system, the information collection method comprising: collecting static data of a target software in a running environment in response to a data collection request sent by a development side of the server system; acquiring specified feature information of the target software from a feature database maintained by the development side, wherein the specified feature information is obtained by the development side through installation and analysis processing of the target software according to configured software installation parameters; comparing the static data with the specified feature information to obtain difference information; and returning at least part of the data in the static data and the difference information to the development side.

[0007] Optionally, the collecting the static data of the target software in the running environment comprises: outputting permission query information, and in response to receiving a permission input of a user for the permission query information, collecting the static data of the target software in the running environment, wherein the permission query information is used to query whether the user allows the collection of the static data; and / or collecting, according to a specified static data item in the data collection request, static data of the target software in the running environment corresponding to the specified static data item; and / or using a software package management tool corresponding to the server system, performing modification verification on a software package of the target software, taking a verified feature item with modification as a modification feature item, and collecting static data of the target software in the running environment related to the modification feature item; and / or using the software package management tool corresponding to the server system, performing source verification on the software package of the target software, and adding a source mark to the target software according to a verification result, wherein the source mark comprises a system self-contained software package mark and a user installation mark.

[0008] Optionally, the comparing the static data with the specified feature information to obtain difference information comprises: using the software package management tool corresponding to the server system, obtaining at least part of the information in the specified feature information from software package initial information of the target software, and obtaining other specified feature information except the at least part of the information from the feature database; and comparing the static data with the obtained specified feature information to obtain the difference information.

[0009] According to a second aspect of the embodiments of the present disclosure, an information collection method is provided, which is used for a development end of a server system, and the information collection method comprises: configuring a software installation parameter in a development environment; installing a target software according to the configured software installation parameter; performing analysis processing on the target software to collect specified feature information of the target software; updating the collected specified feature information to a feature database; sending a data collection request to a user end of the server system to request the user end to collect static data of the target software in a running environment; and receiving at least part of the static data and difference information returned by the user end in response to the data collection request, wherein the difference information is obtained by comparing the static data with the specified feature information.

[0010] Optionally, the configuring the software installation parameter in the development environment comprises: backing up an original software repository and an original software installation path of the development environment; modifying the software repository of the development environment to a target software repository and configuring a software installation path of the development environment to a temporary installation path; after the specified feature information is collected, the information collection method further comprises: restoring the software repository of the development environment to the original software repository; deleting the temporary installation path and restoring the software installation path of the development environment to the original software installation path.

[0011] Optionally, the specified feature information is information of specified feature items, and the analyzing and processing the target software to collect the specified feature information of the target software comprises: analyzing and processing the target software and the feature database to collect information different from existing feature information in the specified feature information of the target software, wherein the existing feature information is information of the specified feature items about the target software in the feature database.

[0012] According to a third aspect of the embodiments of the present disclosure, an information collection apparatus is provided for a user end of a server system, the information collection apparatus comprising: a collection unit configured to collect static data of a target software in a running environment in response to a data collection request sent by a development end of the server system; an acquisition unit configured to acquire specified feature information of the target software from a feature database maintained by the development end, wherein the specified feature information is obtained by the development end through installation and analysis processing of the target software according to configured software installation parameters; a comparison unit configured to compare the static data with the specified feature information to obtain difference information; and a sending unit configured to return the static data and the difference information to the development end.

[0013] According to a fourth aspect of the embodiments of the present disclosure, an information collection apparatus is provided for a development end of a server system, the information collection apparatus comprising: a configuration unit configured to configure a software installation parameter in a development environment; an installation unit configured to install a target software according to the configured software installation parameter; an analysis unit configured to analyze and process the target software to collect specified feature information of the target software; an update unit configured to update the collected specified feature information to a feature database; a request unit configured to send a data collection request to a user end of the server system to request the user end to collect static data of the target software in a running environment; and a receiving unit configured to receive the static data and difference information returned by the user end, wherein the difference information is obtained by comparing the static data with the specified feature information.

[0014] According to a fifth aspect of the embodiments of the present disclosure, an electronic device is provided, comprising: at least one processor; at least one memory storing computer executable instructions, wherein the computer executable instructions, when executed by the at least one processor, cause the at least one processor to perform the information collection method according to the exemplary embodiments of the present disclosure.

[0015] According to a sixth aspect of the embodiments of the present disclosure, a computer readable storage medium is provided, wherein the instructions in the computer readable storage medium, when executed by at least one processor, cause the at least one processor to perform the information collection method according to the exemplary embodiments of the present disclosure.

[0016] According to a seventh aspect of the embodiments of the present disclosure, a computer program product is provided, comprising computer instructions, wherein the computer instructions, when executed by at least one processor, cause the at least one processor to perform the information collection method according to the exemplary embodiments of the present disclosure.

[0017] The embodiments of the present disclosure provide at least the following beneficial effects: According to the information collection method, device, electronic device, storage medium and program product of the present disclosure, the data collection request is sent from the development end to the user end, so that the remote automatic data collection can be realized, and the static data collection at this time is based on the data collection request, so that the standard data collection can be realized, and the uncontrollable factors in the manual collection are reduced. In addition, the specified feature information obtained by the development end by installing and analyzing the target software according to the configured software installation parameters can reflect the features of the target software installed according to the default installation mode, so as to provide a reliable reference for the comparison of static data. By comparing the static data collected in the running environment with the specified feature information, the difference information reflecting the changes of the target software installation can be obtained, which is returned to the development end, so that the operation and maintenance personnel can efficiently understand the changes when the target software is installed in the running environment, so as to understand the working condition of the target software in the running environment, which helps to improve the efficiency of troubleshooting the target software problems. At least part of the collected static data is returned to the development end, so that more comprehensive data can be provided as needed for the operation and maintenance personnel to view.

[0018] It should be understood that the above general description and the following detailed description are only exemplary and explanatory, and cannot limit the present disclosure. BRIEF DESCRIPTION OF DRAWINGS

[0019] The accompanying drawings incorporated in and forming a part of the specification, illustrate embodiments consistent with the present disclosure and, together with the description, serve to explain the principles of the disclosure without imposing undue limitations on the disclosure.

[0020] Figure 1is a flow chart of an information collection method for a user end of a server system according to an exemplary embodiment of the present disclosure.

[0021] Figure 2 is a flow chart of an information collection method for a development end of a server system according to an exemplary embodiment of the present disclosure.

[0022] Figure 3 is a structural schematic diagram of a feature information subsystem according to a specific embodiment of the present disclosure.

[0023] Figure 4 is a structural schematic diagram of a data collection subsystem according to a specific embodiment of the present disclosure.

[0024] Figure 5 is a running flow schematic diagram of a feature information collection module according to a specific embodiment of the present disclosure.

[0025] Figure 6 is a running flow schematic diagram of a software package data collection module according to a specific embodiment of the present disclosure.

[0026] Figure 7 is a block diagram of an information collection device for a user end of a server system according to an exemplary embodiment of the present disclosure.

[0027] Figure 8 is a block diagram of an information collection device for a development end of a server system according to an exemplary embodiment of the present disclosure.

[0028] Figure 9 is a block diagram of an electronic device according to an exemplary embodiment of the present disclosure. DETAILED DESCRIPTION

[0029] In order to make the ordinary person skilled in the art better understand the technical solutions of the present disclosure, the technical solutions in the embodiments of the present disclosure will be described clearly and completely below in conjunction with the drawings.

[0030] It should be noted that the terms "first", "second", and the like in the specification and claims of the present disclosure and the above-mentioned drawings are used to distinguish similar objects, and do not necessarily have to describe a specific order or sequence. It should be understood that the data thus used can be interchanged under appropriate circumstances, so that the embodiments of the present disclosure described herein can be implemented in an order other than those illustrated or described herein. The embodiments described in the following embodiments do not represent all embodiments consistent with the present disclosure. Rather, they are merely examples of devices and methods consistent with some aspects of the present disclosure as detailed in the appended claims.

[0031] It should be noted that "at least one of a plurality" appearing in the present disclosure represents three types of parallel cases including "any one of the plurality", "a combination of any multiple of the plurality", and "all of the plurality". For example, "including at least one of A and B" includes the following three parallel cases: (1) including A; (2) including B; (3) including A and B. For another example, "performing at least one of step one and step two" represents the following three parallel cases: (1) performing step one; (2) performing step two; (3) performing step one and step two.

[0032] Hereinafter, the information collection method, apparatus, electronic device, storage medium and program product according to the exemplary embodiments of the present disclosure will be described in detail with reference to the accompanying drawings.

[0033] Figure 1 is a flowchart of an information collection method for a user end of a server system according to an exemplary embodiment of the present disclosure.

[0034] Referring to Figure 1 In step 101, static data of target software in a running environment is collected in response to a data collection request sent by a development end of a server system.

[0035] When a user end of a server system has a failure problem, in order to troubleshoot the problem, it is necessary to understand the working condition of the software that has the problem (i.e. the target software here). However, when the user end installs the software, there are often some custom settings, which makes it difficult for the operation and maintenance personnel to quickly and accurately understand the working condition of the target software. Static data is fixed data that is not dynamically modified during the running of the software, and is usually written during software installation and does not change with the running state of the software program or user operation, and can reflect the actual working condition of the software.

[0036] This step can realize remote and automatic data collection by sending a data collection request from the development end to the user end. In addition, the static data collection at this time is based on the data collection request, so that standardized data collection can be performed, and uncontrollable factors during manual collection can be reduced.

[0037] In step 102, specified feature information of the target software is obtained from a feature database maintained by the development end.

[0038] The step obtains specified feature information from the feature database. The specified feature information is specifically obtained by the development end through installation and analysis of the target software according to configured software installation parameters, and the configured software installation parameters can be default software installation parameters. Therefore, the specified feature information can reflect the features of the target software installed in the default installation mode, thereby providing a reliable reference for comparison of static data. The software installation parameters include, but are not limited to, a software repository and a software installation path. Correspondingly, the development end is also configured to back up the original software repository and the original software installation path of the development environment; modify the software repository of the development environment to the target software repository, and configure the software installation path of the development environment to a temporary installation path; after the specified feature information is collected, restore the software repository of the development environment to the original software repository; delete the temporary installation path, and restore the software installation path of the development environment to the original software installation path.

[0039] As an example, the specified feature information is information of specified feature items, and the development end is also configured to analyze and process the target software and the feature database to collect information different from existing feature information in the specified feature information of the target software, wherein the existing feature information is information of specified feature items of the target software in the feature database.

[0040] As an example, the development end can construct and update the feature database locally, and the feature database can include specified feature information of multiple software, and then upload the feature database to an internal server of the development end, which all belong to maintenance of the feature database. Correspondingly, in this step, the user end can send an acquisition request for obtaining the specified feature information of the target software to the development end, so that the internal server of the development end finds the specified feature information of the target software from the feature database according to the acquisition request, and the user end receives the specified feature information returned by the internal server.

[0041] In step 103, the static data is compared with the specified feature information to obtain difference information.

[0042] In step 104, at least part of the data in the static data and the difference information are returned to the development end.

[0043] By comparing the static data collected in the running environment with the specified feature information, difference information reflecting changes in installation of the target software can be obtained, which is returned to the development end, so that the operation and maintenance personnel can efficiently understand the changes in installation of the target software in the running environment, thereby understanding the working condition of the target software in the running environment, which helps to improve the efficiency of troubleshooting of the target software. At least part of the collected static data is returned to the development end, which can provide more comprehensive data as needed for the operation and maintenance personnel to view.

[0044] Next, an information collection method for a user terminal of a server system according to an example embodiment of the present disclosure is further described.

[0045] Regarding the operation of collecting static data of the target software in the running environment in step 101, optionally, the operation can include: outputting permission query information for querying whether the user permits to collect the static data, and collecting the static data of the target software in the running environment in response to receiving a permission input of the user for the permission query information. By outputting the permission query information, the consent of the user can be obtained before collecting the static data, which can improve the security of the private data of the user. As an example, the permission input is, for example but not limited to, a voice input, an input of clicking an allow button, for the latter, the permission query information should contain the allow button, and can further include a reject button (of course, it can also not include). As an example, the permission query information can further include the data items to be collected, and the permission input can be a permission input for all data items or a permission input for specific data items, for example but not limited to, configuring an allow button for each data item, which is not limited in the present disclosure.

[0046] Optionally, the operation can also include: collecting the static data of the target software in the running environment corresponding to the specified static data item according to the specified static data item in the data collection request. Since the knowledge reserve and the ability to troubleshoot problems of the front-end technicians are uneven, when collecting data manually, the related technologies often have the problems of incomplete collection, redundant collection, and collecting user private data, which not only affects the efficiency of troubleshooting, but also may cause legal issues. The present disclosure can accurately collect the required data by performing the collection of the static data according to the specified static data item, and can automatically avoid the user-named private data, and the password and other private data items with explicit names can also be excluded from the specified static data item, so that they will not be collected, and the protection of the user's private data can be achieved.

[0047] Optionally, the operation can also include: using a software package management tool corresponding to the server system to modify and verify the software package of the target software, taking the verified feature item with modification as a modification feature item, and collecting the static data of the target software in the running environment related to the modification feature item. By first using the existing software package management tool to preliminarily verify the modification feature item, and then collecting the static data related thereto, the amount of static data collection can be reduced, and the running load can be reduced. It should be understood that the software package management tool should correspond to the server system to ensure its reliable work.

[0048] Optionally, the operation can further include: using a software package management tool corresponding to the server system, performing source verification on the software package of the target software, and adding a source mark to the target software according to a verification result, wherein the source mark includes a system self-contained software package mark and a user installation mark. By using the software package management tool to verify the source of the target software, the source mark of the target software can be added to the collected static data and the difference information obtained through subsequent comparison, thereby providing more information for the operation and maintenance personnel of the development end and assisting in improving the problem troubleshooting efficiency.

[0049] It should be understood that the above several embodiments of the operation of collecting the static data of the target software in the running environment can be used in combination without contradiction, for example, including but not limited to: outputting the permission inquiry information, in response to receiving the permission input of the user for the permission inquiry information, collecting the static data of the target software in the running environment corresponding to the specified static data item in the data collection request according to the specified static data item in the data collection request.

[0050] As an example, the static data includes original files, debugging information, and software package information. The original files refer to core files that are self-contained when the software is shipped and cannot be modified at will, for example, including executable programs, dependent library files, software default configuration templates, document files, and the like. The debugging information is output information obtained when a specific debugging command is executed, and in combination with the executed debugging command, the software can be understood to be able to normally execute the debugging command. The software package information is a set of metadata that describes the basic attributes, content composition, and dependency relationship of the software package, which is equivalent to the "identity card" and "instruction manual" of the software package, helping the system and the user to understand the key information of the software, for example, including basic identification information such as software name, version number, release number, and the like, and for example, including content description information such as abstract, developer / vendor, and the like. For each of the above several operation embodiments of collecting static data, it can be applied to all static data or only to part of the static data, for example, the first two embodiments for collecting user privacy data can be applied to the collection of original files, and the last two embodiments using the software package management tool can be applied to the collection of software package information, and the present disclosure does not limit this. Regarding the debugging information, as an example, sometimes there is a format disorder and redundant data, and for this, the obtained output information can be typeset according to a set format to obtain the debugging information, so as to facilitate the operation and maintenance personnel to read. Further, step 103 can specifically be comparing the software package information in the static data with the specified feature information to obtain difference information, and step 104 can specifically be returning the original files and the debugging information in the static data and the difference information to the development end, that is, not all software package information needs to be returned, but only the information in the software package information that is different from the specified feature information, that is, the difference information.

[0051] Optionally, step 103 comprises: using a software package management tool corresponding to the server system, obtaining at least part of the information in the specified feature information from the initial information of the software package of the target software, and obtaining other specified feature information from the feature database except the at least part of the information; and comparing the static data with the obtained specified feature information to obtain the difference information. In the obtaining of the specified feature information, the initial information of the software package is obtained by using the software package management tool first, and the remaining information that cannot be obtained is obtained by querying the feature database, so that the transmission data amount consumed by accessing the feature database is reduced, and the operation speed of the information collection method according to the example embodiment of the present disclosure is improved.

[0052] Optionally, after step 104, the information collection method according to the example embodiment of the present disclosure can further comprise: performing summary processing on at least part of the data in the static data and the difference information to obtain an information report. It should be understood that the specific information report returned to the development end at this time is obtained, so that the overall transmission of information is ensured.

[0053] Figure 2 is a flowchart of an information collection method for a development end of a server system according to an example embodiment of the present disclosure.

[0054] Referring to Figure 2 In step 201, the software installation parameters in the development environment are configured.

[0055] The specific software installation parameters configured in this step can be default software installation parameters, and the software installation parameters can include, but are not limited to, a software warehouse and a software installation path.

[0056] In step 202, the target software is installed according to the configured software installation parameters.

[0057] This step actually installs the target software on the development end in a default installation mode.

[0058] In step 203, the target software is analyzed and processed to collect specified feature information of the target software.

[0059] The specified feature information obtained by analyzing and processing the installed target software can reflect the features of the target software installed in the default installation mode, thereby providing a reliable reference for the comparison of the static data collected by the user end.

[0060] In step 204, the collected specified feature information is updated to the feature database.

[0061] As an example, the development end can build and update the feature database locally, and the feature database can include the specified feature information of multiple software, and then upload the feature database to the internal server of the development end. Accordingly, when the user end needs to use the specified feature information, the user end can send an acquisition request for acquiring the specified feature information of the target software to the development end, so that the internal server of the development end finds the specified feature information of the target software from the feature database according to the acquisition request, and then returns the specified feature information to the user end.

[0062] In step 205, a data collection request is sent to the user end of the server system to request the user end to collect the static data of the target software in the running environment.

[0063] By sending the data collection request to the user end, remote and automatic data collection can be realized, and the static data collection at this time is based on the data collection request, so that standardized data collection can be performed, and uncontrollable factors in manual collection can be reduced.

[0064] In step 206, at least part of the data in the static data returned by the user end in response to the data collection request and the difference information are received, wherein the difference information is obtained by comparing the static data with the specified feature information.

[0065] By receiving the difference information obtained by comparing the static data collected by the user end with the specified feature information, the operation and maintenance personnel can efficiently understand the changes existing when the target software is installed in the running environment, so as to understand the working condition of the target software in the running environment, which is helpful to improve the efficiency of troubleshooting the target software. The information returned by the user end also includes at least part of the data in the collected static data, which can appropriately provide more comprehensive data for the operation and maintenance personnel to view on demand. For specific introduction of the static data and the difference information, please refer to the foregoing, which will not be repeated here.

[0066] Next, the information collection method for the development end of the server system according to the exemplary embodiments of the present disclosure will be further introduced.

[0067] As described above, the software installation parameters include, for example, but are not limited to, a software repository and a software installation path. Optionally, step 201 includes: backing up the original software repository and the original software installation path of the development environment; modifying the software repository of the development environment to a target software repository and configuring the software installation path of the development environment to a temporary installation path; and after collecting the specified feature information, the information collection method according to an example embodiment of the present disclosure further includes: restoring the software repository of the development environment to the original software repository; deleting the temporary installation path and restoring the software installation path of the development environment to the original software installation path. By first reserving the original software repository and the software installation path, and then setting a new target software repository and a temporary installation path according to the required software installation parameters, reliable installation of the target software can be achieved. After collecting the specified feature information of the target software, the information is restored according to the backup information, and the regular operation of the development end can be restored. As an example, if the specified feature information of multiple different software needs to be collected, and these software can use the same target software repository and temporary installation path, then after the configuration of the target software repository and the temporary installation path is completed, the collection of the specified feature information of these software is performed, and then the parameter restoration is performed, which can reduce the number of configuration adjustments and improve the operation efficiency.

[0068] Optionally, the specified feature information is information of specified feature items, and correspondingly, step 203 includes: analyzing and processing the target software and the feature database to collect information that is different from existing feature information in the specified feature information of the target software, wherein the existing feature information is information of the specified feature items of the target software that already exists in the feature database. For the case where the feature information of the target software already exists in the feature database, if information updating is needed, for example, the version of the target software is upgraded, then by only collecting the information that is different from the existing feature information, the number of information collection can be reduced, the operation efficiency can be improved, the amount of repeated data stored in the feature database can be reduced, the utilization rate of the feature database can be improved, and the size of the feature database can be correspondingly reduced.

[0069] Regarding the collection of static data by the user end, optionally, the user end is further configured to output permission inquiry information, and in response to receiving an allow input of the user for the permission inquiry information, collect the static data of the target software in the running environment, wherein the permission inquiry information is used to inquire whether the user allows the collection of the static data.

[0070] Optionally, the user end is further configured to collect, according to the specified static data item in the data collection request, the static data corresponding to the specified static data item of the target software in the running environment.

[0071] Optionally, the user end is further configured to use a software package management tool corresponding to the server system to perform modification verification on the software package of the target software, and collect static data of the target software in the running environment related to the modified feature item as the modified feature item.

[0072] Optionally, the user end is further configured to use a software package management tool corresponding to the server system to perform source verification on the software package of the target software, and add a source mark to the target software according to the verification result, wherein the source mark includes a system self-contained software package mark and a user installation mark.

[0073] Regarding the analysis of the difference information by the user end, the user end is further configured to use a software package management tool corresponding to the server system to obtain at least part of the information in the specified feature information from the software package initial information of the target software, and obtain other specified feature information except the at least part of the information from the feature database; and compare the static data with the obtained specified feature information to obtain the difference information.

[0074] Next, the information collection method of the server system according to the specific embodiment of the present disclosure is introduced. Figures 3 to 6

[0075] sosreport is a tool for collecting system configuration and diagnostic information, which automatically collects various log files, configuration files, running process information, network configuration, etc. of the system, and packs them into a compressed file, which is convenient for subsequent troubleshooting and analysis by operation and maintenance personnel. The specific embodiment further extends and extends the sosreport collection scheme, provides a thought and scheme for automatically collecting system static data, the collection range is more extensive, the data presentation is more intuitive, the function is more rich and powerful, and the problems such as not comprehensive, not complete, low efficiency, not intuitive collection result, easy to collect sensitive data, and poor communication of operation and maintenance personnel can be solved.

[0076] From the function and logic, the whole information collection system can be divided into two relatively independent subsystems, called feature information subsystem and data collection subsystem.

[0077] The feature information subsystem runs on the development end of the server system and is provided for server internal developers / maintainers to use, for collecting specified feature information of the published software version. The specified feature information is some feature information of the software package file generated after the installation of the published software package of the server system. For example, it includes but is not limited to md5 value, permission, group, signature, link, configuration file, service condition, etc. The structure of the feature information subsystem is as follows: Figure 3 ​As shown, the following functional modules need to be implemented: 1. Collection environment management module: used for configuring and managing the collection environment (i.e. development environment); 2. Feature information collection module: used for analyzing a certain software package and collecting relevant data; 3. Database management module: used for updating the collected specified feature information to the feature database.

[0078] The data collection subsystem runs on the user end of the server system and is provided for the users of the server to collect relevant static data in the server system running environment. Static data refers to data on the server that does not change frequently. The static data in this embodiment includes software package information, file list, configuration details, service information, original files of key directories, system debugging information, etc. The structure of the data collection subsystem is as shown in Figure 4 As shown, the following functional modules need to be implemented: 1. Raw data collection module: used for collecting original files in the server running environment; 2. Debugging information collection module: used for collecting debugging information in the server running environment; 3. Software package data collection module: used for collecting various information of software packages in the server running environment; 4. Report generation module: used for summarizing the collected static data into a report.

[0079] Next, the functions of the above modules are described in detail.

[0080] The collection environment management module can configure and manage the repo source (full name: repository, also known as software package repository), specifically, backing up the original repo source before collecting information, configuring the specified repo source (i.e. the target software repository as shown in Figure 3 , which can store a plurality of software packages, such as RPM1, RPM2, RPM3, etc. as shown in Figure 3 , can be obtained from the target software repository through an http / https request), and restoring the original repo source configuration after collection. The collection environment management module can also configure and manage the installation environment, specifically, configuring a software package temporary installation path, installing the software package required by the feature information subsystem locally, deleting the software package temporary installation path after the feature information collection is completed, and restoring the original environment.

[0081] The feature information collection module can collect software package file information, software package configuration information and software package service information. When collecting the software package file information, specifically, the file list, md5 value, permission, group and other information after the software package is installed are acquired, and the -V parameter is used for filtering, so that only the information different from the specified feature information in the feature database is collected, which can reduce the size of the feature database. When collecting the software package configuration information, specifically, the configuration file content after the software package is installed is acquired, and the file is specially processed (empty lines are deleted, and comment lines starting with # are deleted), which can reduce the data size. When collecting the software package service information, specifically, the services provided after the software package is installed are acquired, for example, the rpm-ql function of the software package management tool is used to find the file with the suffix ".service", and information such as whether the service is started is acquired. Taking the rpm system as an example, the approximate running process is as shown in Figure 5

[0082] The database management module can realize initialization, updating and uploading of the database. The database initialization is specifically to collect the latest feature database of the previous download version or to newly create a feature database. The database updating is specifically to provide an interface, and after the specified feature information collection is completed, the collected information is inserted into the feature database. The database uploading is specifically to upload the feature database to the internal server of the development end after all the information is updated to the feature database.

[0083] The original data collection module can realize user permission and file collection functions. The user permission is that, since the module needs to collect the original files of the user's key directory, the subsequent files will also be passed to the developer / maintainer for use, so the user permission should be obtained before collecting the original data, and the user should be informed of which files or directories need to be collected. The file collection function is specifically to collect the original files of the key directory in the user's environment, and to compress the original file data, while protecting the user's private data and not collecting it.

[0084] The debugging information collection module can run some commonly used debugging commands of the system and acquire the output (such as process state, port state, current environment variable, etc.), and format the content of the output in an easy-to-read format.

[0085] ​The software package data collection module can collect a software package list, a software package difference list, configuration differences, and service differences. When collecting the software package list, the system corresponding software package management tool is used to collect all software package lists in the running environment, and system self-package and user self-installed package are marked and distinguished to facilitate the developer / maintainer to check the report. When collecting the software package difference list, the system corresponding software package management tool is used to perform current running environment software package verification, find the software package with changes and the modification corresponding to the software package, and then compare with the md5 value recorded in the feature database. If it is inconsistent, the information related to the md5 value is summarized into a difference report. When collecting the configuration differences, the system corresponding software package management tool is used to perform current running environment software package verification, filter the changed files under the / etc directory, query the software package to which the configuration file belongs through the software package management tool, and process the files by removing blank lines and comment lines. Then, the files in the feature database are compared, and the differences are summarized into a report. When collecting the service differences, the system corresponding software package management tool is used to perform current running environment software package verification, filter the files changed under / usr / lib / systemd / user and / usr / lib / systemd / system, and other processing steps are consistent with collecting the configuration differences. Taking the rpm system as an example, the approximate running process is as shown in FIG. 1. Figure 6

[0086] The report generation module can generate a report. After each module is collected, the related data collected is summarized into a corresponding report. Each report contains the same keyword (for example, NVR, which respectively refers to name, version number, and release version) to facilitate the connection of report data. The report generation module can also visually display the generated report data. Tables or web pages and other visualization methods can be used to make the results more friendly and intuitive.

[0087] In general, the specific embodiment has the following main features.

[0088] 1. When the development end installs the software package of the target software, the single package management tool is forced to install (Debian system is dpkg, and redhat system is rpm) first. If the operation fails, the dependent package management tool is installed (Debian system is apt, and redhat system is yum), thereby improving the installation speed.

[0089] 2. When the running environment collects difference data, the verification parameter of the software package management tool (Debian is dpkg-V, and redhat system is rpm -V) is used first. Only the data with differences is collected, thereby reducing the space occupation of the data package and making the program more lightweight.

[0090] ​3. When comparing the collected data, the md5 value is compared first. If the md5 values are the same, there is no need to compare other attributes related to the md5 values, thereby increasing the efficiency of the running program.

[0091] 4. The collected files are processed specially. The empty lines and the comments starting with # are removed by using sed and grep operations, thereby reducing the size of the data packet.

[0092] 5. When viewing the original data of the packet, the initial information of the software packet is obtained by using the dump parameter of the packet management tool first. Then, the information that cannot be obtained is searched in the feature database, thereby increasing the running speed of the program.

[0093] 6. When collecting the original data of the user, the permission of the user is obtained first. Then, the sensitive data is excluded, thereby avoiding the legal issues.

[0094] The specific embodiment can realize the remote automatic collection of static data and difference information. The specific embodiment can also help the operation and maintenance personnel to automatically collect the static data in the running environment on the user side of the server system. Through the analysis of the data report, the abnormality or other running problems of the running environment can be analyzed and located quickly. The feature database can also be used for traceability, backup restoration and other scenes. The specific embodiment reduces the communication cost of the operation and maintenance personnel, saves the time required for data collection, improves the accuracy, comprehensiveness and usability of the data, and thereby improves the efficiency of problem troubleshooting.

[0095] Figure 7 is a block diagram of an information collection device for a user side of a server system according to an example embodiment of the present disclosure. Referring to Figure 7 , the device includes a collection unit 701, an acquisition unit 702, a comparison unit 703, and a sending unit 704.

[0096] The collection unit 701 is configured to collect the static data of the target software in the running environment in response to the data collection request sent by the development side of the server system.

[0097] The acquisition unit 702 is configured to acquire the specified feature information of the target software from the feature database maintained by the development side, wherein the specified feature information is obtained by the development side by installing and analyzing the target software according to the configured software installation parameters.

[0098] The comparison unit 703 is configured to compare the static data with the specified feature information to obtain the difference information.

[0099] The sending unit 704 is configured to return the difference information to the development side.

[0100] Optionally, the collecting operation of the collecting unit 701 to collect the static data of the target software in the running environment comprises: outputting permission query information for querying whether the user allows the collection of the static data, and collecting the static data of the target software in the running environment in response to receiving an allow input of the user for the permission query information; and / or collecting static data of the target software in the running environment corresponding to a specified static data item in the data collection request; and / or using a software package management tool corresponding to the server system to perform modification verification on a software package of the target software, collecting static data of the target software related to a modified feature item verified as existing modification, the modified feature item being the modified feature item; and / or using a software package management tool corresponding to the server system to perform source verification on a software package of the target software, and adding a source mark to the target software according to the verification result, wherein the source mark comprises a system self-contained software package mark and a user installation mark.

[0101] Optionally, the comparison unit 703 is further configured to use a software package management tool corresponding to the server system to obtain at least part of the information in the specified feature information from software package initial information of the target software, and obtain other specified feature information from the feature database except the at least part of the information; and compare the static data with the obtained specified feature information to obtain the difference information.

[0102] Figure 8 is a block diagram of an information collecting device for a development end of a server system according to an exemplary embodiment of the present disclosure. Referring to Figure 8 , the device comprises a configuration unit 801, an installation unit 802, an analysis unit 803, an update unit 804, a request unit 805, and a receiving unit 806.

[0103] The configuration unit 801 is configured to configure a software installation parameter in a development environment.

[0104] The installation unit 802 is configured to install a target software according to the configured software installation parameter.

[0105] The analysis unit 803 is configured to analyze and process the target software to collect specified feature information of the target software.

[0106] The update unit 804 is configured to update the collected specified feature information to a feature database.

[0107] The request unit 805 is configured to send a data collection request to a user end of a server system to request the user end to collect static data of a target software in a running environment.

[0108] The receiving unit 806 is configured to receive the difference information returned by the user end, wherein the difference information is obtained by comparing the static data with the specified feature information.

[0109] Optionally, the configuration unit 801 is configured to backup the original software warehouse and original software installation path of the development environment; modify the software warehouse of the development environment to a target software warehouse, and configure the software installation path of the development environment to a temporary installation path; after the specified feature information is collected, restore the software warehouse of the development environment to the original software warehouse, delete the temporary installation path, and restore the software installation path of the development environment to the original software installation path.

[0110] Optionally, the specified feature information is information of specified feature items, and the analysis unit 803 is further configured to analyze and process the target software and the feature database to collect information different from existing feature information in the specified feature information of the target software, wherein the existing feature information is information about the specified feature items of the target software in the feature database.

[0111] As to the apparatus in the above-mentioned embodiments, the specific manners in which the units perform operations have been described in detail in the embodiments of the method, and thus will not be described in detail here.

[0112] According to embodiments of the present disclosure, an electronic device can be provided. Figure 9 is a block diagram of an electronic device 900 according to an embodiment of the present disclosure, which includes at least one memory 901 and at least one processor 902, and the at least one memory has stored therein a set of computer executable instructions 9011 and an operating system 9012, when the set of computer executable instructions 9011 is executed by the at least one processor 902, the information collection method according to an embodiment of the present disclosure is performed.

[0113] As an example, the electronic device 900 can be a PC computer, a tablet device, a personal digital assistant, a smart phone, or other devices capable of executing the above-mentioned set of instructions. Here, the electronic device 900 does not necessarily have to be a single electronic device, but can also be any device or collection of devices or circuits capable of executing the above-mentioned instructions (or set of instructions) individually or jointly. The electronic device 900 can also be part of an integrated control system or system manager, or can be configured to interface with a local or remote (e.g., via wireless transmission) portable electronic device.

[0114] In electronic device 900, processor 902 can include a central processing unit (CPU), a graphics processing unit (GPU), a programmable logic device, a dedicated processor system, a microcontroller, or a microprocessor. By way of example and not limitation, processor 902 can also include an analog processor, a digital processor, a microprocessor, a multi-core processor, a processor array, a network processor, etc.

[0115] Processor 902 can execute instructions or code stored in memory, where memory 901 can also store data. Instructions and data can also be transmitted and received via a network through a network interface device, which can employ any known transmission protocol.

[0116] Memory 901 can be integrated with processor 902, e.g., disposed within an integrated circuit microprocessor, etc. Further, memory 901 can include a separate device, such as an external disk drive, a storage array, or other storage device usable by any database system. Memory 901 and processor 902 can be operatively coupled, or can communicate with each other, e.g., through I / O ports, network connections, etc., such that processor 902 can read files stored in memory 901.

[0117] Further, electronic device 900 can also include a video display, such as a liquid crystal display, and a user interface, such as a keyboard, a mouse, a touch input device, etc. All components of the electronic device can be connected to each other via a bus and / or a network.

[0118] According to embodiments of the present disclosure, a computer-readable storage medium can also be provided, wherein when instructions in the computer-readable storage medium are executed by at least one processor, the at least one processor is caused to perform the information collection method of embodiments of the present disclosure. Examples of the computer-readable storage medium herein include a read-only memory (ROM), a random access programmable read-only memory (PROM), an electrically erasable programmable read-only memory (EEPROM), a random access memory (RAM), a dynamic random access memory (DRAM), a static random access memory (SRAM), a flash memory, a non-volatile memory, a CD-ROM, a CD-R, a CD+R, a CD-RW, a CD+RW, a DVD-ROM, a DVD-R, a DVD+R, a DVD-RW, a DVD+RW, a DVD-RAM, a BD-ROM, a BD-R, a BD-R LTH, a BD-RE, a Blu-ray or optical disc memory, a hard disk drive (HDD), a solid state disk (SSD), a card memory (such as a multimedia card, a secure digital (SD) card or an extreme digital (XD) card), a magnetic tape, a floppy disk, a magneto-optical data storage device, an optical data storage device, a hard disk, a solid state disk, and any other device configured to store a computer program and any associated data, data files and data structures in a non-transitory manner and provide the computer program and any associated data, data files and data structures to a processor or computer so that the processor or computer can execute the computer program. The computer program in the computer-readable storage medium described above can be executed in an environment deployed in a computer device such as a client, a host, a proxy device, a server, etc., and in addition, in one example, the computer program and any associated data, data files and data structures are distributed over a networked computer system so that the computer program and any associated data, data files and data structures are stored, accessed and executed in a distributed manner by one or more processors or computers.

[0119] According to embodiments of the present disclosure, a computer program product is provided, including computer instructions, which when executed by a processor, implement the information collection method of embodiments of the present disclosure.

[0120] Other embodiments of the present disclosure will be apparent to those skilled in the art from consideration of the specification and practice of the aspects disclosed herein. The present disclosure is intended to cover any variations, uses or adaptive changes of the present disclosure following the general principles thereof. The specification and examples are to be regarded as exemplary only, and the true scope and spirit of the present disclosure are indicated by the appended claims.

[0121] It should be understood that the present disclosure is not limited to the precise construction that has been described above and shown in the accompanying drawings, and that various modifications and changes can be made by those skilled in the art without departing from the scope of the present disclosure. The scope of the present disclosure is limited only by the appended claims.

Claims

1. An information collection method, used at a user end of a server system, characterized in that: The information collection method includes: In response to a data collection request sent by a development end of the server system, collecting static data of the target software in the running environment; Acquiring specified feature information of the target software from a feature database maintained by the development end, wherein the specified feature information is obtained by the development end by installing and analyzing the target software according to configured software installation parameters; Comparing the static data with the specified characteristic information to obtain difference information; At least part of the static data and the difference information are returned to the development end.

2. The information collection method according to claim 1, wherein: The collecting of static data of the target software in the running environment includes: Outputting permission inquiry information, and in response to receiving a permission input from a user regarding the permission inquiry information, collecting the static data of the target software in the execution environment, wherein the permission inquiry information is used to inquire the user whether to allow the collection of the static data; and / or Collecting, according to the specified static data item in the data collection request, static data corresponding to the specified static data item of the target software in the running environment; and / or Using a software package management tool corresponding to the server system, performing modification verification on the software package of the target software, using the verified modified feature items as modification feature items, and collecting static data related to the modification feature items of the target software in the running environment; and / or The software package of the target software is source-verified using a software package management tool corresponding to the server system, and a source tag is added to the target software according to the verification result, wherein the source tag includes a system-provided software package tag and a user-installed tag.

3. The information collection method according to claim 1 or 2, wherein: The comparing the static data with the specified characteristic information to obtain difference information includes: Using a software package management tool corresponding to the server system, obtaining at least part of the specified feature information from initial software package information of the target software, and obtaining other specified feature information other than the at least part of the information from the feature database; The static data is compared with the acquired specified feature information to obtain the difference information.

4. An information collection method for a development end of a server system, characterized in that: The information collection method includes: Configure software installation parameters in the development environment; Install the target software according to the configured software installation parameters; Analyzing and processing the target software to collect specified feature information of the target software; Update the collected specified feature information to the feature database; Sending a data collection request to a user terminal of the server system to request the user terminal to collect static data of the target software in the running environment; Receive at least part of the static data and difference information returned by the user terminal in response to the data collection request, wherein the difference information is obtained by comparing the static data with the specified feature information.

5. The information collection method according to claim 4, wherein: The configuration of software installation parameters in the development environment includes: Backing up the original software warehouse and original software installation path of the development environment; Modifying the software warehouse of the development environment into a target software warehouse, and configuring the software installation path of the development environment as a temporary installation path; After collecting the specified feature information, the information collection method further includes: Restoring the software warehouse of the development environment to the original software warehouse; The temporary installation path is deleted, and the software installation path of the development environment is restored to the original software installation path.

6. The information collection method according to claim 4 or 5, wherein: The specified feature information is information of a specified feature item, wherein the analyzing and processing the target software to collect the specified feature information of the target software includes: The target software and the feature database are analyzed and processed to collect information in the specified feature information of the target software that is different from existing feature information, wherein the existing feature information is information about the specified feature items of the target software already in the feature database.

7. An information collection device, used for a user end of a server system, characterized in that: The information collection device includes: a collecting unit configured to collect static data of the target software in the running environment in response to a data collection request sent by the development end of the server system; an acquiring unit configured to acquire specified feature information of the target software from a feature database maintained by the development end, wherein the specified feature information is obtained by the development end by installing and analyzing the target software according to configured software installation parameters; a comparing unit, configured to compare the static data with the specified characteristic information to obtain difference information; The sending unit is configured to return at least part of the static data and the difference information to the development end.

8. An information collection device, used for the development end of a server system, characterized in that: The information collection device includes: A configuration unit, configured to configure software installation parameters in a development environment; An installation unit is configured to install the target software according to the configured software installation parameters; an analyzing unit, configured to analyze and process the target software to collect specified feature information of the target software; an updating unit, configured to update the collected specified feature information into the feature database; a requesting unit configured to send a data collection request to a user terminal of the server system to request the user terminal to collect static data of the target software in the running environment; The receiving unit is configured to receive at least part of the static data and difference information returned by the user terminal, wherein the difference information is obtained by comparing the static data with the specified feature information.

9. An electronic device, characterized in that: include: at least one processor; at least one memory storing computer-executable instructions, When the computer-executable instructions are executed by the at least one processor, the computer-executable instructions cause the at least one processor to execute the information collection method according to any one of claims 1 to 6.

10. A computer-readable storage medium, characterized in that When the instructions in the computer-readable storage medium are executed by at least one processor, the instructions cause the at least one processor to perform the information collection method according to any one of claims 1 to 6.

11. A computer program product comprising computer instructions, characterized in that When the computer instructions are executed by at least one processor, the computer instructions cause the at least one processor to perform the information collection method according to any one of claims 1 to 6.

Citation Information

Patent Citations

  • Static resource automatic acquisition method, system and device and storage medium

    CN109376140A

  • Software fault positioning and repairing method and system

    CN114328101A

  • Information acquisition, verification and monitoring method of substation equipment operation software

    CN119201627A