Application downtime information acquisition method and device, electronic equipment and storage medium
By obtaining and analyzing the application index data and downtime dump files of the target application, the problem of insufficient support for downtime data in the application platform management background in the existing technology is solved, and timely follow-up and optimization of application downtime problems is achieved, improving user experience.
Patent Information
- Application Number
- CN202510140329.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-02-08
- Publication Date
- 2025-06-27
AI Technical Summary
In the prior art, the management background of some application platforms has limited support for providing downtime data, which is difficult to control application downtime information, which affects timely follow-up on application downtime problems.
By obtaining control instructions in response to the triggered information, obtaining application metric data of the target application, including the number of application downtime and/or the number of application downtime users, and determining the downtime information of the target application based on these data. This method combines the software development toolkit interface and the application programming interface of the application management platform to obtain detailed application index data, and further analyzes the downtime stack through the storage and parsing of downtime dump files and symbol files.
Real-time monitoring of target applications and effective acquisition of downtime information is achieved, helping to optimize and handle application downtime problems and improve application user experience.
Smart Images

Figure CN120216232A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of computer technology, and particularly to a method, device, electronic device and storage medium for obtaining application downtime information. Background Art
[0002] As the popularity of application programs on various application platforms is increasing, the operating conditions of application programs are becoming more and more worthy of attention.
[0003] In the related art, the operation and downtime data of application programs are usually obtained through the management background officially provided by the application platform. However, in actual applications, the support for providing downtime data by the management background of some application platforms is very limited, making it difficult to meet the control of application downtime information and affecting the timely follow-up of application program downtime problems. Summary of the Invention
[0004] The present invention aims to at least solve one of the technical problems existing in the prior art. For this purpose, the present invention provides a method, device, electronic device and storage medium for obtaining application downtime information, which can effectively monitor the operation and downtime conditions of the target application in real time and help to further optimize the handling of application downtime problems.
[0005] On the one hand, an embodiment of the present invention provides a method for obtaining application downtime information, including:
[0006] In response to a triggered information acquisition control instruction, obtaining application metric data of a target application; wherein, the application metric data includes the number of application downtimes and / or the number of application downtime users;
[0007] Determining the downtime information of the target application according to the application metric data.
[0008] According to some embodiments of the present invention, the step of obtaining application metric data of a target application in response to a triggered information acquisition control instruction includes:
[0009] In response to a triggered information acquisition control instruction, calling the software development kit interface and the application programming interface of the application management platform;
[0010] Obtaining first application metric data of the target application uploaded by the software development kit interface, and obtaining second application metric data of the target application uploaded by the application programming interface;
[0011] Wherein, the first application metric data includes the number of runs and the number of users of the target application; the second application metric data includes the application downtime type of the target application, the number of downtimes of each application downtime type, and the number of application downtime users.
[0012] According to some embodiments of the present invention, obtaining the second application metric data of the target application uploaded by the application programming interface includes:
[0013] Invoking a Hypertext Transfer Protocol (HTTP) client programming toolkit and providing an HTTP client credential to generate an HTTP request;
[0014] According to the HTTP request, invoking an interface for obtaining error reports in the application programming interface and receiving the return result of the interface for obtaining error reports;
[0015] According to the return result, determining the second application metric data of the target application.
[0016] According to some embodiments of the present invention, determining the downtime information of the target application according to the application metric data includes:
[0017] Determining the total number of downtimes of the target application according to the application downtime type of the target application and the number of downtimes of each application downtime type;
[0018] Determining the downtime rate of the target application according to the total number of downtimes of the target application and the number of runs of the target application;
[0019] Determining the downtime user rate of the target application according to the number of users experiencing downtime of the target application and the number of users of the target application;
[0020] Generating the downtime information of the target application based on the number of runs, the total number of downtimes, the downtime rate, the number of users experiencing downtime of the application, the number of users, and the downtime user rate.
[0021] According to some embodiments of the present invention, the method further includes:
[0022] When the number of application downtimes is greater than zero, storing the downtime dump file in the dump file storage space and storing the symbol file in the symbol file storage space;
[0023] In response to a triggered downtime analysis control instruction, performing a retrieval process on the dump file storage space to obtain a target downtime dump file;
[0024] Determining a target symbol file that matches the target downtime dump file and performing a downtime parsing process on the target downtime dump file and the target symbol file to obtain a downtime stack.
[0025] According to some embodiments of the present invention, storing the downtime dump file in the dump file storage space includes:
[0026] Read the crash dump file produced by the target application;
[0027] Use the reporting service to upload the crash dump file to the dump file storage space for storage;
[0028] Among them, the dump file storage space is the cloud.
[0029] According to some embodiments of the present invention, after uploading the crash dump file to the dump file storage space for storage, it further includes:
[0030] Verify the integrity of the crash dump file, generate and record the reporting process of the crash dump file;
[0031] Among them, the reporting process includes the upload time, universal unique identifier, and metadata information of the crash dump file.
[0032] According to some embodiments of the present invention, storing the symbol file in the symbol file storage space includes:
[0033] Read the original compressed file produced by the target application; among them, the original compressed file is the original state of the symbol file;
[0034] Use the upload command of the symbol storage tool to upload each symbol file in the original compressed file to the symbol file storage space for storage one by one through parameter passing;
[0035] Among them, the symbol file storage space is the cloud.
[0036] According to some embodiments of the present invention, in response to the triggered crash analysis control instruction, retrieving the dump file storage space to obtain the target crash dump file includes:
[0037] Parse the crash analysis control instruction to obtain a dump file retrieval request;
[0038] Based on the dump file retrieval request, retrieve the dump file storage space to obtain a retrieval result;
[0039] When the retrieval result indicates the existence of the target crash dump file, download the target crash dump file to the local storage space to obtain the target crash dump file;
[0040] When the retrieval result is empty, return a retrieval request exception message and generate a prompt window.
[0041] According to some embodiments of the present invention, determining a target symbol file that matches the target crash dump file, and performing crash parsing processing on the target crash dump file and the target symbol file to obtain a crash stack, includes:
[0042] Based on the identifiers of each symbol file in the symbol file storage space, retrieving from the symbol file storage space a target symbol file that matches the target crash dump file, and downloading the target symbol file to the local storage space to obtain the target symbol file;
[0043] By using a debugging tool, performing parsing processing on the target crash dump file and the target symbol file to obtain a crash stack corresponding to the target crash dump file.
[0044] On the other hand, embodiments of the present invention provide an application crash information acquisition device, including:
[0045] A data acquisition module, configured to acquire application metric data of a target application in response to a triggered information acquisition control instruction; wherein, the application metric data includes the number of application crashes and / or the number of application crash users;
[0046] An information determination module, configured to determine the crash information of the target application according to the application metric data.
[0047] On the other hand, embodiments of the present invention provide an electronic device, including at least one control processor and a memory for communicating with the at least one control processor; the memory stores instructions executable by the at least one control processor, and the instructions are executed by the at least one control processor so that the at least one control processor can execute the application crash information acquisition method as described in the first aspect above.
[0048] On the other hand, embodiments of the present invention provide a computer-readable storage medium, storing computer-executable instructions for executing the application crash information acquisition method as described above.
[0049] One of the above technical solutions has the following advantages or beneficial effects: The present invention provides a method, apparatus, electronic device, and storage medium for obtaining application downtime information. This solution acquires application metric data of a target application in response to a triggered information acquisition control instruction; wherein, the application metric data includes the number of application downtimes and / or the number of application downtime users; and determines the downtime information of the target application according to the application metric data. According to the technical solution of this embodiment, by obtaining the application metric data of the target application to determine the downtime information of the target application, it is possible to effectively monitor the running and downtime status of the target application in real time, thereby completing the information delivery process of the downtime information, which helps to further optimize and process the application downtime problem and improve the usage experience of application users. BRIEF DESCRIPTION OF THE DRAWINGS
[0050] Figure 1 is a flowchart of a method for obtaining application downtime information provided by an embodiment of the present invention;
[0051] Figure 2 is Figure 1 a flowchart of step S101 in
[0052] Figure 3 is a flowchart of obtaining application metric data provided by an embodiment of the present invention;
[0053] Figure 4 is a schematic diagram of downtime information provided by an embodiment of the present invention;
[0054] Figure 5 is a flowchart of performing downtime analysis provided by an embodiment of the present invention;
[0055] Figure 6 is a flowchart of storing a downtime dump file provided by an embodiment of the present invention;
[0056] Figure 7 is a flowchart of storing a symbol file provided by an embodiment of the present invention;
[0057] Figure 8 is a flowchart of performing downtime analysis through a debugging tool provided by an embodiment of the present invention;
[0058] Figure 9 is a schematic structural diagram of an apparatus for obtaining application downtime information provided by an embodiment of the present invention;
[0059] Figure 10 is a structural diagram of an electronic device provided by another embodiment of the present invention. DETAILED DESCRIPTION OF THE EMBODIMENTS
[0060] Embodiments of the present invention will be described in detail below. Examples of the embodiments are shown in the accompanying drawings, where the same or similar reference numerals denote the same or similar elements or elements having the same or similar functions throughout. The embodiments described below by referring to the drawings are exemplary and are only used to explain the present invention and should not be construed as a limitation of the present invention.
[0061] In the description of the present invention, it should be understood that with respect to the orientation description, such as the orientation or positional relationship indicated by up, down, front, back, left, right, etc., is based on the orientation or positional relationship shown in the accompanying drawings. It is only for the convenience of describing the present invention and simplifying the description, rather than indicating or implying that the device or element referred to must have a specific orientation, be constructed and operated in a specific orientation, and thus should not be construed as a limitation of the present invention.
[0062] In the description of the present invention, the meaning of "a number of" is one or more, the meaning of "a plurality of" is two or more, and understandings such as "greater than", "less than", "exceeding", etc. do not include the recited number, and understandings such as "above", "below", "within", etc. include the recited number. If there is a description of "first" and "second", it is only for the purpose of distinguishing technical features and should not be construed as indicating or implying relative importance or implicitly indicating the quantity of the indicated technical features or implicitly indicating the sequence relationship of the indicated technical features.
[0063] In the description of the present invention, "and / or" is used to describe the association relationship of associated objects and indicates that three relationships may exist. For example, "A and / or B" may represent: only A exists, only B exists, and both A and B exist simultaneously. Among them, A and B may be singular or plural. The character " / " generally represents an "or" relationship between the associated objects before and after.
[0064] In the description of the present invention, unless otherwise clearly defined, words such as "set", "installed", "connected", etc. should be understood in a broad sense, and those skilled in the art can reasonably determine the specific meanings of the above words in the present invention in combination with the specific content of the technical solution.
[0065] First, the noun terms related to one or more embodiments of the present invention are explained:
[0066] 1) The Software Development Kit (SDK) interface is a collection of tools and resources provided for developers, aiming to help developers more conveniently build, integrate, and expand the functions of specific software or hardware platforms.
[0067] 2) An Application Programming Interface (API) is a set of well-defined rules and specifications that allow different software applications, services, or components to interact, enabling developers to access the functions of a system or service without having to understand its internal implementation.
[0068] 3) The Hypertext Transfer Protocol (HTTP) is a communication protocol used to transfer hypertext between a client and a server, mainly for web browsing and data transfer.
[0069] 4) A crash dump file (Dump file) is a snapshot file used to describe the dump data generated during a system crash or outage. It usually records key information such as the memory state, thread call stack, and register values at that time, and can be used for troubleshooting.
[0070] 5) Symbol Files are data information files that contain the debugging information of application binary files. When debugging an application, symbol files can help developers better understand and track the execution process of the program, thereby more effectively locating and solving problems.
[0071] As the popularity of application programs on various application platforms increases, the running status of application programs has become increasingly worthy of attention.
[0072] In related technologies, the running and outage data of application programs are usually obtained through the management background provided by the official of the application platform. However, in actual applications, the management background of some application platforms has very limited support for providing outage data, making it difficult to meet the control of application outage information and affecting the timely follow-up of application program outage problems.
[0073] Exemplarily, for example, for an application program deployed on the Xbox application platform, the current existing technical solution is to obtain the outage situation of the application program through the management background provided by the official of the Xbox application platform. However, the backend interface provided by the official of the Xbox application platform cannot clearly grasp the distribution of the outage situation and the proportion of outage crashes of the application programs running on the Xbox application platform, making it difficult to meet the control of the outage information of the application programs, and thus unable to timely follow up and handle the outage problems of the application programs, which in turn affects the user experience of the application program users.
[0074] Therefore, the embodiments of the present invention provide a method, apparatus, electronic device, and storage medium for obtaining application downtime information. The solution obtains application metric data of a target application in response to a triggered information acquisition control instruction; wherein the application metric data includes the number of application downtimes and / or the number of application downtime users; and determines the downtime information of the target application according to the application metric data. According to the technical solution of this embodiment, by obtaining the application metric data of the target application to determine the downtime information of the target application, it is possible to effectively monitor the running and downtime conditions of the target application in real time, thereby completing the information delivery process of the downtime information, which helps to further optimize the handling of the application downtime problem and improve the usage experience of application users.
[0075] In the present invention, a method, apparatus, electronic device, and storage medium for obtaining application downtime information are provided, and will be described in detail one by one in the following embodiments.
[0076] The processing process of the method for obtaining application downtime information provided by the embodiments of the present invention can cover most application downtime handling scenarios, enabling the relevant business responsible persons of the application program to quickly master the running situation and downtime information data of the application program after being deployed on the application platform. Specifically, when starting to obtain the application downtime information of the target application, the relevant business responsible persons can send an information acquisition control instruction through an interaction tool such as an operating system or a website page at the terminal, obtain the application metric data of the target application through the server, and evaluate the downtime information of the target application through data such as the number of application downtimes and / or the number of application downtime users included in the obtained application metric data of the target application. By obtaining the application metric data of the target application to determine the downtime information of the target application, the embodiments of the present invention can effectively monitor the running and downtime conditions of the target application in real time, thereby completing the information delivery process of the downtime information, which helps to further optimize the handling of the application downtime problem and improve the usage experience of application users.
[0077] The method for obtaining application downtime information provided by the embodiments of the present invention can be applied to a terminal, can also be applied to a server side, or can be software running on a terminal or a server side. In some embodiments, the terminal can be a smart phone, a tablet computer, a notebook computer, a desktop computer, a set-top box, etc.; the server side can be configured as an independent physical server, can also be configured as a server cluster or a distributed system composed of multiple physical servers, or can be configured as a cloud server providing basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, CDN, and big data and artificial intelligence platforms; the software can be an application for implementing an image processing method, etc., but is not limited to the above forms.
[0078] The present invention can be used in numerous general-purpose or special-purpose computer system environments or configurations. For example: personal computers, server computers, handheld or portable devices, tablet devices, multi-processor systems, microprocessor-based systems, set-top boxes, programmable consumer electronic devices, network PCs, minicomputers, mainframe computers, distributed computing environments including any of the above systems or devices, and so on. The present invention can be described in the general context of computer-executable instructions executed by a computer, such as program modules. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform specific tasks or implement specific abstract data types. The present invention can also be practiced in a distributed computing environment where tasks are performed by remote processing devices connected through a communication network. In a distributed computing environment, program modules can be located in local and remote computer storage media including storage devices.
[0079] Referring to Figure 1 , Figure 1 FIG. is a flowchart of a method for obtaining application downtime information provided by an embodiment of the present invention. The method for obtaining application downtime information includes, but is not limited to, steps S101 to S102:
[0080] Step S101, in response to a triggered information acquisition control instruction, obtain application metric data of a target application; wherein, the application metric data includes the number of application downtimes and / or the number of application downtime users.
[0081] In an embodiment of the present invention, the information acquisition control instruction can be triggered either by the active operation of the relevant business person in charge of the target application, for example, by clicking a button to generate a trigger, or by an internal system event, such as a preset scheduled acquisition task, or a downtime exception event monitoring. After the processor on the server side receives and responds to the information acquisition control instruction, it can further proceed with the process of obtaining the application metric data of the target application.
[0082] Exemplarily, when the system detects a specific exception event (such as the generation of a downtime crash log), it can immediately send an information acquisition control instruction to trigger the server to collect the application metric data of the target application in real time; it can also collect the application metric data of the target application at fixed time intervals (such as once every ten minutes) to form a trend report; or the relevant business person in charge or administrator of the target application can manually trigger the information acquisition control instruction through the operation panel to facilitate grasping the current downtime information of the target application.
[0083] In practical applications, the application metric data of the target application may include at least one type of data related to the target application, such as the number of application outages and the number of users affected by the application outages. Among them, the number of application outages refers to the number of times the target application crashes, which can be either the number of outages of a certain type of outage event or the total number of outages obtained by cumulatively adding up all types of outage events that the target application has experienced, and can reflect the stability of the target application; the number of users affected by the application outages refers to the number of users affected by the outages of the target application, and can be used to evaluate the scope and severity of the impact of the outage problem.
[0084] It can be understood that the application metric data of the target application not only includes the number of application outages and / or the number of users affected by the application outages, but may also include the hardware information of the users of the target application, which can further improve the user profile of the target application and analyze and evaluate the correlation between the hardware information and the occurrence of outage problems.
[0085] Step S102, determine the outage information of the target application according to the application metric data.
[0086] In the embodiments of the present invention, through the obtained application metric data of the target application, specific outage information is further analyzed, such as the time, cause, frequency, and affected area or user group of the outage, and the application metric data and the outage information can be synchronized to the local database, and the local database is used as the data basis for external statistics.
[0087] For example, for an application deployed on the Xbox application platform, the backend provided by the official of the Xbox application platform usually only retains the application metric data of the application for the most recent seven days. Through the information acquisition control instruction triggered at regular intervals, the latest application platform data can be obtained and synchronized to the local database according to the specified date range. On the local database, outage information can be statistically calculated in a wider dimension, such as the daily outage rate, the outage user rate, and the weekly outage rate, the outage user rate.
[0088] It can be understood that after determining the outage information of the target application, the relevant business person in charge of the target application can clearly understand the operation activity and the distribution of outage problems of the target application, thereby completing the information reaching process of the outage information. The relevant data of the outage information can also be further connected to the alarm platform and pushed to the user or the maintenance personnel, so as to further optimize and process the outage problems of the application and improve the user experience.
[0089] In practical applications, when performing message reaching, a detailed list and entry links of different outage crash events can also be provided, which is convenient for relevant maintenance personnel and person in charge to directly reach with one click, improving the simplicity and practicality of the outage information.
[0090] One of the technical solutions in the above technical solutions has the following advantages or beneficial effects: By obtaining the application metric data of the target application to determine the downtime information of the target application, the embodiments of the present invention can effectively monitor the running and downtime status of the target application in real time, thereby completing the information delivery process of the downtime information, which helps to further optimize the handling of the application downtime problem and improve the usage experience of application users.
[0091] Refer to Figure 2 , Figure 2 is Figure 1 The flowchart of step S101 in [reference]. In one implementation manner of the embodiments of the present invention, the obtaining of the application metric data of the target application in response to the triggered information acquisition control instruction includes:
[0092] Step S201, in response to the triggered information acquisition control instruction, call the software development kit interface and the application programming interface of the application management platform;
[0093] Step S202, obtain the first application metric data of the target application uploaded by the software development kit interface, and obtain the second application metric data of the target application uploaded by the application programming interface;
[0094] Among them, the first application metric data includes the running times and the number of users of the target application; the second application metric data includes the application downtime type of the target application, the downtime times of each application downtime type, and the number of application downtime users.
[0095] In the embodiments of the present invention, two methods of the software development kit interface and the application programming interface of the application management platform can be combined to obtain the application metric data of the target application. Considering that the backend of some application management platforms does not provide the login times of the target application, the embodiments of the present invention directly report the relevant login information of the target application through the target application-related SDK to obtain the running login times of the target application. Among them, the SDK embedded in the target application is usually directly related to the application runtime, can collect fine-grained runtime data, and report it through wireless communication, so as to obtain the first application metric data uploaded by the SDK.
[0096] In practical applications, the reported relevant login information may include the unique identity coding information of the user, so as to confirm the number of users in all the received relevant login information and the running login times of each user, and then calculate and confirm the running times of the target application as the first application metric data. Please refer to Figure 3 , Figure 3It is a flowchart for obtaining application metric data provided by an embodiment of the present invention. By calling the target application SDK, it is possible to directly report relevant login information of the target application by starting the relevant SDK of the target application. Among them, the relevant login information includes the number of times the target application runs and the number of users of the target application.
[0097] Optionally, it is also possible to directly report relevant login information through the client code of the target application.
[0098] Furthermore, the application programming interface of the application management platform refers to the API interface officially provided by the application management platform where the target application is deployed. By calling the API interface, the second application metric data of the target application can be obtained. For example, it can include the application downtime type, the number of downtime occurrences for each application downtime type, and the number of users affected by the application downtime.
[0099] Among them, the application downtime type refers to the event type of different downtime problems, and the number of users affected by the application downtime refers to the number of users affected by the downtime.
[0100] It can be understood that by combining the two application metric data acquisition methods, it is possible to comprehensively and clearly grasp the running situation of the target application and the statistical data of downtime information, which helps to conduct a deeper dimension of downtime information statistics in the future, comprehensively master the running situation and potential problems of the target application, reflect the basic activity and user scale of the target application through the first application metric data, and provide key information for stability analysis through the second application metric data. By combining the first application metric data with the second application metric data, it can help the development team optimize performance, locate downtime problems, and improve the user experience, especially applicable to business scenarios that require high availability and stability.
[0101] One of the technical solutions in the above technical solutions has the following advantages or beneficial effects: In the embodiment of the present invention, the number of times the target application runs and the number of users reported by the software development kit interface itself are obtained by calling the software development kit interface, and the application downtime type of the target application, the number of downtime occurrences for each application downtime type, and the number of users affected by the application downtime are remotely obtained through the application programming interface, so that the running situation of the target application and the statistical data of downtime information can be comprehensively and clearly grasped, which helps to conduct a deeper dimension of downtime information statistics in the future.
[0102] Specifically, in one implementation manner of the embodiment of the present invention, obtaining the second application metric data of the target application uploaded by the application programming interface includes:
[0103] Call the Hypertext Transfer Protocol client programming toolkit and provide the Hypertext Transfer Protocol client credentials to generate a Hypertext Transfer Protocol request;
[0104] Invoke the error report acquisition interface in the application programming interface according to the hypertext transfer protocol request, and receive the return result of the error report acquisition interface;
[0105] Determine the second application metric data of the target application according to the return result.
[0106] In an embodiment of the present invention, when acquiring the second application metric data of a target application uploaded by an API interface of an application management platform, first, a hypertext transfer protocol client programming toolkit is invoked, and a hypertext transfer protocol client credential is provided, thereby generating a hypertext transfer protocol request. Among them, the hypertext transfer protocol client (http Client) programming toolkit is a software development tool used to help developers interact with http-based servers more easily and can simplify the construction of http requests. Please refer to Figure 3 , by invoking the programming toolkit of the http protocol client, providing the http protocol client credential token, quickly generating a hypertext transfer protocol (http) request, and sending the http request to the error report acquisition interface (health / failurehits interface) in the API interface provided by the application management platform, thereby receiving the return result provided by the error report acquisition interface, and finally determining the second application metric data from the return result. Among them, the error report acquisition interface (health / failurehits interface) is an interface used to query error or failure information that occurs during the operation of a system or application, can query error events recorded in the system, and return the number of errors, the number of affected users, and other relevant statistical data.
[0107] Exemplarily, taking the error report interface provided by the Xbox application platform as an example, after sending an HTTP protocol request to call this API interface, the error report interface will query the downtime statistics data related to the target application based on the user identity information and permission verification information carried in the HTTP protocol request, and return the report result. Among them, the statistical information (such as the number of downtimes and the number of affected users) will be introduced in segments according to the downtime event type in the returned report result. For example, the downtime event types can include Crash, GpuHang, and Hang. Among them, the Crash downtime event type refers to the situation where the application encounters an unhandled error or exception during operation, resulting in the program exiting unexpectedly, usually caused by software bugs, accessing invalid memory, etc.; the GpuHang downtime event type refers to the downtime problem related to the Graphics Processing Unit (GPU), usually meaning that the GPU hangs or gets stuck when executing graphics rendering instructions, usually caused by driver problems, hardware failures, or improper use of GPU resources; Hang refers to the situation where the application does not respond for a long time during a certain operation, usually caused by deadlocks, multithreaded synchronization problems, or infinite loops, resulting in the program being unable to continue normal execution.
[0108] One of the technical solutions in the above technical solutions has the following advantages or beneficial effects: By calling the Hypertext Transfer Protocol client programming toolkit and providing Hypertext Transfer Protocol client credentials in the embodiments of the present invention, the generation process of the Hypertext Transfer Protocol request can be effectively simplified, so as to quickly obtain the return result provided by the official API interface, and filter and match according to keywords from the return result to quickly determine the second application metric data of the target application.
[0109] Specifically, in one implementation manner of the embodiments of the present invention, determining the downtime information of the target application according to the application metric data includes:
[0110] Determining the total number of downtimes of the target application according to the application downtime type of the target application and the number of downtimes of each application downtime type;
[0111] Determining the downtime rate of the target application according to the total number of downtimes of the target application and the number of running times of the target application;
[0112] Determining the downtime user rate of the target application according to the number of application downtime users of the target application and the number of users of the target application;
[0113] Generating the downtime information of the target application based on the number of running times, the total number of downtimes, the downtime rate, the number of application downtime users, the number of users, and the downtime user rate.
[0114] In an embodiment of the present invention, by combining the first application metric data obtained by invoking the software development kit interface and the second application metric data provided by invoking the application programming interface, the downtime information of the target application can be comprehensively and multi-dimensionally grasped.
[0115] In practical applications, based on the application downtime type of the target application in the second application metric data and the number of downtimes for each application downtime type, the total number of downtimes of the target application can be quickly determined. Further, by combining all the user identity information in the login information reported by the application-related SDK and the number of logins for each user identity information, the number of runs of the target application can be quickly determined. Thus, based on the total number of downtimes of the target application and the number of runs of the target application, the downtime rate of the target application can be calculated and determined. Furthermore, based on the number of users affected by downtime of the target application and the number of users of the target application, the downtime user rate of the target application affected by downtime can be determined, thereby generating the downtime information of the target application.
[0116] Optionally, please refer to Figure 4 , Figure 4 which is a schematic diagram of the downtime information provided by an embodiment of the present invention. When generating the downtime information, the downtime information of multiple target application programs on one or more application platforms can be comprehensively overviewed. At the same time, the downtime information can be packaged and forwarded to different application development and maintenance teams to facilitate developers in diagnosing and solving the downtime problems of the application programs running on a certain application platform. Among them, the downtime information of each target application program can specifically include the downtime rate, the total number of downtimes, the downtime user rate, the number of users affected by application downtime, the number of users, and the number of runs. For example, taking the target application program B as an example, the total number of downtimes on the Xbox application platform is 22 times, and the number of runs is 19,491 times. Then, the downtime rate can be calculated as 0.11%. The number of users on the Xbox application platform is 14,139 people, and the number of users affected by 22 downtimes is 10 people. Then, the downtime user rate affected by downtime can be calculated as 0.07%.
[0117] It can be understood that the above embodiments are only some optional ways of summarizing information categories of the downtime information provided in the embodiments of the present invention. The actual downtime information is not fixed to the Figure 4 information categories shown, and the present invention does not make specific restrictions on this.
[0118] One of the above technical solutions has the following advantages or beneficial effects: In the embodiment of the present invention, by comprehensively overviewing the downtime information of multiple target application programs on one or more application platforms, it is convenient for relevant business responsible persons to master the downtime information of the target applications. At the same time, the downtime information can also be packaged and forwarded to different application development and maintenance teams, so as to facilitate developers to diagnose and solve the downtime problems of application programs running on a certain application platform, improving the usability and security of the downtime information data.
[0119] Please refer to Figure 5 , Figure 5 which is a flowchart for downtime parsing provided by an embodiment of the present invention. In an implementation manner of the embodiment of the present invention, the method further includes:
[0120] Step S501, when the number of application downtimes is greater than zero, store the downtime dump file in the dump file storage space and store the symbol file in the symbol file storage space;
[0121] Step S502, in response to the triggered downtime analysis control instruction, perform a retrieval process on the dump file storage space to obtain the target downtime dump file;
[0122] Step S503, determine the target symbol file that matches the target downtime dump file, and perform downtime parsing processing on the target downtime dump file and the target symbol file to obtain the downtime stack.
[0123] In the embodiment of the present invention, when the number of application downtimes of the target application is greater than zero, it means that when the target application is running on the application management platform, a downtime crash occurs, and then the target application will generate a downtime dump file and a symbol file. Among them, the downtime dump file is a snapshot file used to describe the dump data generated due to system crashes or downtimes, usually recording key information such as the memory state, thread call stack, register values, etc. at that time, and can be used for fault troubleshooting. The symbol file is a data information file containing the debugging information of the application binary file. When debugging the application program, the symbol file can help developers better understand and track the execution process of the program, so as to more effectively locate and solve problems.
[0124] In practical applications, taking the Xbox application platform as an example, when an application deployed on the Xbox application platform experiences a downtime crash failure, the generated downtime dump file and related symbol files are quite large. Usually, the downtime dump file will reach a size of 6G or even larger, and the symbol file can usually reach about 2G or even larger. Therefore, both the downtime dump file and the symbol file have relatively high requirements for storage space and need to be stored for a long time to facilitate the analysis of various stack exceptions. Unified storage management and maintenance are required. The dump file storage space is the storage space preset in the embodiment of the present invention for storing the downtime dump file, and the symbol file storage space is the storage space preset in the embodiment of the present invention for storing the symbol file. Through the dump file storage space and the symbol file storage space, the local storage pressure can be reduced and the data processing efficiency can be improved.
[0125] Exemplarily, when an application deployed on the Xbox application platform experiences a downtime crash failure, there are multiple downtime dump files caused by different downtime types and symbol files of different versions. All the downtime dump files of the application are stored in the preset dump file storage space, and all the symbol files of the application are stored in the preset symbol file storage space.
[0126] Furthermore, the target downtime dump file refers to the downtime dump file that needs to be analyzed or loaded. When the processor receives and responds to the triggered downtime analysis control instruction, it can analyze the downtime analysis control instruction and perform a retrieval process on the dump file storage space to determine the target downtime dump file therefrom. Among them, the downtime analysis control instruction can be triggered either by the active operation of relevant development and maintenance personnel of the target application, such as generating a trigger by clicking a button, or by an internal system event, such as a preset scheduled analysis task.
[0127] Since there are symbol files of different versions during the development and maintenance of an application, according to different types of target downtime dump files, it is necessary to retrieve the matching target symbol file from the symbol file storage space (for example, by ensuring that the version of the symbol file used is consistent with the application version corresponding to the downtime dump file to obtain the target symbol file), so as to perform downtime parsing processing on the target downtime dump file and the target symbol file to obtain the downtime stack. During the parsing process, by matching the downtime dump file with the symbol file, the memory address can be mapped to the specific code symbol, so as to restore the complete downtime call stack, display the function call chain, and quickly locate the code file, function, and line number that caused the downtime crash.
[0128] One of the technical solutions in the above technical solutions has the following advantages or beneficial effects: By storing the crash dump file in a pre-set dump file storage space and storing the symbol file in a pre-set symbol file storage space, it is possible to uniformly manage and maintain the crash dump file and the symbol file, effectively release the system pressure of the local storage, improve the data processing efficiency, and when receiving and responding to the crash analysis control instruction, by determining the target crash dump file and the matching target symbol file, and then performing parsing processing to obtain a complete crash stack, which helps to quickly analyze and debug the problem code that causes the crash.
[0129] Specifically, in an implementation manner of the embodiment of the present invention, the storing the crash dump file in the dump file storage space includes:
[0130] Reading the crash dump file produced by the target application;
[0131] Using the reporting service to upload the crash dump file to the dump file storage space for storage;
[0132] Wherein, the dump file storage space is the cloud.
[0133] In the embodiment of the present invention, there are mainly two sources of the crash dump file. One is locally produced when the target application is running, and the other is obtained through the official api interface of the application platform. The crash dump file is a file generated when a game or application crashes, and it contains the memory and status information of the program at the time of the crash. Developers can use these files to analyze and debug the problems that cause the crash. Therefore, both of these two types of crash dump files need to be uploaded to the dump file storage space for storage for subsequent retrieval, matching, and downloading during development and maintenance.
[0134] Furthermore, by uploading the crash dump files from the two sources to the cloud as the dump file storage space for storage, it can greatly save the local disk space, avoid occupying too much local space by the crash dump files of various crash types, reduce the storage cost, and relieve the pressure of the local storage, which is convenient for subsequent parsing and processing of the crash information. In addition, cloud storage has high scalability and high availability, can effectively cope with the storage requirements of large-scale dump files, and can also centrally manage the operations such as uploading, storing, and retrieving the crash dump files, improving the efficiency and maintainability.
[0135] Optionally, please refer to Figure 6 , Figure 6It is a flowchart for storing crash dump files provided by an embodiment of the present invention. The crash dump files of the official API interface can be obtained at preset time intervals through a timing service, and together with the locally generated crash dump files, they are uploaded to the cloud for storage through an upload service.
[0136] One of the technical solutions in the above technical solutions has the following advantages or beneficial effects: In the embodiment of the present invention, the crash dump files obtained from the official API interface and the locally generated crash dump files are jointly uploaded to the cloud for storage through the upload service, which can reduce the storage cost and relieve the pressure on local storage, facilitating subsequent parsing and processing of crash information.
[0137] Specifically, in an implementation manner of the embodiment of the present invention, after uploading the crash dump file to the dump file storage space for storage, it further includes:
[0138] Verify the integrity of the crash dump file, and generate and record the reporting stream of the crash dump file;
[0139] Wherein, the reporting stream includes the upload time, universal unique identifier, and metadata information of the crash dump file.
[0140] In the embodiment of the present invention, after uploading the crash dump file to the dump file storage space for storage through the upload service, the integrity and validity of the crash dump file can also be verified and checked, and file metadata can be added to generate and record the reporting stream information of the crash dump file. Among them, the reporting stream information can include the upload time, universal unique identifier, and metadata information of the crash dump file. The metadata information is mainly information describing data attributes, such as the application version number and device information of the crash dump file.
[0141] By recording the reporting stream information of the uploaded crash dump file, it can help with subsequent file retrieval and parsing and processing of the crash dump file.
[0142] In practical applications, please refer to Figure 6 , after obtaining the crash dump files of the official API interface at preset time intervals through a timing service and jointly uploading them to the cloud for storage through the upload service with the locally generated crash dump files, verify the integrity and validity of all the uploaded crash dump files, and generate and record the reporting stream information of the crash dump files for subsequent use in the crash dump file retrieval service.
[0143] One of the above technical solutions has the following advantages or beneficial effects: In the embodiments of the present invention, the integrity and validity of the crash dump file are verified and checked, and the reporting flow information of the crash dump file is generated and recorded, so as to realize the unified management and storage of the crash dump files stored in the cloud. By recording the reporting flow information of the uploaded crash dump files, it is helpful for subsequent file retrieval and crash dump file parsing and processing.
[0144] Specifically, in one implementation manner of the embodiments of the present invention, storing the symbol file in the symbol file storage space includes:
[0145] Reading the original compressed file produced by the target application; wherein, the original compressed file is the original state of the symbol file;
[0146] Using the upload command of the symbol storage tool, and by means of parameter passing, uploading each symbol file in the original compressed file to the symbol file storage space one by one for storage;
[0147] Wherein, the symbol file storage space is the cloud.
[0148] In the embodiments of the present invention, the original compressed file is the original state of the symbol file, which includes different versions of symbol files generated during the development and maintenance of the target application. Through the upload command of the symbol storage tool and by means of parameter passing, each symbol file in the original compressed file can be uploaded to the cloud serving as the symbol file storage space one by one for storage.
[0149] In practical applications, usually the symbol storage tool adds the symbol file to the symbol storage space, and specifically, the upload command (symstore.exe add command) of the symbol storage tool can be used for storing the symbol file.
[0150] However, generally speaking, the upload command (symstore.exe add command) of the symbol storage tool does not support uploading to the cloud for storage. Therefore, the embodiments of the present invention have modified the upload command to make it support cloud upload, and realize the storage of the symbol file to the cloud through the authentication key parameter and the cloud storage directory parameter, thus greatly saving the local disk space, avoiding being occupied by various versions of symbol files too much local space, being able to reduce the storage cost, and alleviating the pressure of local storage, which is convenient for subsequent parsing and processing of crash information.
[0151] Please refer to Figure 7 , Figure 7It is a flowchart for storing symbol files provided by an embodiment of the present invention. Among them, the original compressed file is the original state of the symbol file. Each symbol file in the original compressed file is uploaded to the cloud for storage one by one through the upload command "symstore.exe add cmd", without local storage. Among them, the upload command of the symbol storage tool (symstore.exe add command) originally passed the directory for local storage of the symbol file as a parameter and stored the symbol files parsed from the original compressed file in this directory. The embodiment of the present invention modifies the symstore.exe add command and uses the form of parameter passing. By adding an authentication key parameter (accesskey) and a cloud storage directory parameter (bucket), with these two parameters, each symbol file in the original compressed file can be uploaded to the specified cloud for storage. The specific upload process is to verify the connection to the cloud through the authentication key parameter, authenticate the request segment through the authentication key parameter, and after successful authentication, upload each symbol file to the cloud serving as the storage space for symbol files based on the cloud storage directory parameter for storage.
[0152] One of the technical solutions in the above technical solutions has the following advantages or beneficial effects: By uploading symbol files to the cloud for storage, the embodiment of the present invention can reduce storage costs using cloud storage. And by modifying the upload command of the symbol file storage tool, the embodiment of the present invention can upload symbol files to the cloud for storage using the authentication key parameter and the cloud storage directory parameter, alleviating the pressure on local storage and being beneficial to improving the efficiency of parsing down machine information.
[0153] Specifically, in an implementation manner of the embodiment of the present invention, the retrieving and processing the storage space of the dump file in response to the triggered down machine analysis control instruction to obtain the target down machine dump file includes:
[0154] Parsing the down machine analysis control instruction to obtain a dump file retrieval request;
[0155] Based on the dump file retrieval request, retrieving and processing the storage space of the dump file to obtain a retrieval result;
[0156] When the retrieval result indicates the existence of the target down machine dump file, downloading the target down machine dump file to the local storage space to obtain the target down machine dump file;
[0157] When the retrieval result is empty, returning retrieval request exception information and generating a prompt window.
[0158] In an embodiment of the present invention, after receiving and responding to a triggered downtime analysis control instruction, the downtime analysis control instruction is parsed to obtain a dump file retrieval request. The dump file retrieval request is used to specify a target downtime dump file to be analyzed (for example, the target file is identified by conditions such as file name and timestamp). According to the dump file retrieval request and the reported stream recorded in the dump file storage space, the dump file storage space is retrieved to obtain a retrieval result.
[0159] Further, when the retrieval result indicates that the target downtime dump file exists in the dump file storage space, the target downtime dump file is downloaded to the local storage space to obtain the target downtime dump file for subsequent further analysis. When the retrieval result is empty, it means that the target downtime dump file does not exist in the dump file storage space. In this case, an abnormal retrieval request message is returned, and a prompt window is generated to prompt the user that the file was not found or the retrieval conditions are incorrect, which can be used to guide the user to perform the next operation (such as checking the instruction content or re-entering the conditions).
[0160] In practical applications, please refer to Figure 8 , Figure 8 FIG.
[0161] is a flowchart of downtime parsing through a debugging tool provided by an embodiment of the present invention. Before performing downtime parsing, it is first necessary to obtain a target downtime dump file to be parsed. Specifically, a dump file retrieval request can be obtained by parsing the downtime analysis control instruction. According to the dump file retrieval request and the reported stream recorded in the dump file storage space, the dump file storage space is retrieved. When a target downtime dump file to be parsed is retrieved, the target downtime dump file is downloaded to the local storage space to obtain the target downtime dump file.
[0162] Specifically, in an implementation manner of an embodiment of the present invention, the determining a target symbol file that matches the target downtime dump file and performing downtime parsing processing on the target downtime dump file and the target symbol file to obtain a downtime stack includes:
[0163] Retrieve a target symbol file that matches the target crash dump file from the symbol file storage space based on the identifier of each symbol file in the symbol file storage space, and download the target symbol file to the local storage space to obtain the target symbol file;
[0164] Use a debugging tool to parse the target crash dump file and the target symbol file to obtain a crash stack corresponding to the target crash dump file.
[0165] In the embodiment of the present invention, when performing crash parsing processing, since the symbol file provides debugging information for the crash dump file, making the stack information clearer and more readable. Therefore, by selecting a target symbol file that matches the target crash dump file, the obtained crash stack can be more complete and more readable. The embodiment of the present invention can select a target symbol file that matches the version number of the target crash dump file based on the identifier of each symbol file in the symbol file storage space, and download the target symbol file to the local storage space to obtain the target symbol file.
[0166] Finally, use a debugging tool to parse the target crash dump file and the target symbol file to obtain a crash stack corresponding to the target crash dump file. Optionally, the debugging tool can use the WinDbg debugger, which is a powerful debugging tool developed by Microsoft for analyzing errors, crashes, and performance issues of Windows operating systems, kernel-mode drivers, and user-mode applications. It provides an interactive debugging environment that allows developers to deeply analyze the code and troubleshoot problems.
[0167] In practical applications, please refer to Figure 8 , retrieve a target symbol file that matches the target crash dump file from the symbol file storage space, download it to the local storage space to obtain the target symbol file, and then perform crash parsing processing on the pre-downloaded target crash dump file and the target symbol file through a debugging tool to obtain the final crash stack, so as to facilitate developers and maintainers to quickly locate the abnormal code and optimize and repair the crash problem of the target application.
[0168] One of the above technical solutions has the following advantages or beneficial effects: By retrieving a target symbol file that matches the target crash dump file from the symbol file storage space, the obtained crash stack can be more complete and more readable, so as to facilitate developers and maintainers to quickly locate the abnormal code and optimize and repair the crash problem of the target application.
[0169] To better illustrate the technical solution of this embodiment, a specific example is presented below. This example can be applied to the downtime handling scenarios of most applications. By obtaining the application metric data of the target application to determine the downtime information of the target application, it can effectively monitor the running and downtime status of the target application in real time, thereby completing the process of information dissemination of the downtime information, which helps to further optimize the handling of the application's downtime problem and improve the usage experience of application users. Moreover, in the embodiment of the present invention, the running times and the number of users of the target application self-reported by the software development kit interface are obtained by calling the software development kit interface. Also, the application downtime type of the target application, the number of downtimes for each application downtime type, and the number of application downtime users affected by the downtime are remotely obtained through the application programming interface. It can comprehensively and clearly grasp the running situation of the target application and the statistical data of the downtime information, which helps to conduct a deeper-dimensional statistical analysis of the downtime information subsequently. In addition, in the embodiment of the present invention, the downtime information of multiple target application programs on one or more application platforms is overviewed to facilitate the relevant business responsible persons to master the downtime information of the target application. At the same time, the downtime information can also be packaged and forwarded to different application development and maintenance teams to facilitate developers to diagnose and solve the downtime problems of the application programs running on a certain application platform, improving the usability and security of the downtime information data. Further, in the embodiment of the present invention, by storing the downtime dump file in the pre-set dump file storage space and storing the symbol file in the pre-set symbol file storage space, the downtime dump file and the symbol file can be uniformly managed and maintained, and the system pressure of the local storage can be effectively released, improving the data processing efficiency. When receiving and responding to the downtime analysis control instruction, by determining the target downtime dump file and the matching target symbol file, the parsing process is carried out to obtain a complete downtime stack, which helps to quickly analyze and debug the problem code that causes the crash. And by modifying the upload command of the symbol file storage tool, the symbol file can be uploaded to the cloud for storage by using the authentication key parameter and the cloud storage directory parameter, reducing the pressure on the local storage and being beneficial to improving the efficiency of downtime information parsing. Finally, in the embodiment of the present invention, by retrieving the target symbol file matching the target downtime dump file from the symbol file storage space, the parsed downtime stack can be made more complete and more readable, so as to facilitate the development and maintenance personnel to quickly locate the abnormal code and optimize and repair the downtime problem of the target application.
[0170] Corresponding to the above method embodiment, the present invention also provides an embodiment of an apparatus for obtaining application downtime information. Figure 9 It is a schematic structural diagram of an apparatus for obtaining application downtime information provided by an embodiment of the present invention. As Figure 9 shown, the apparatus 901 for obtaining application downtime information includes:
[0171] A data acquisition module 902, configured to acquire application metric data of a target application in response to a triggered information acquisition control instruction; wherein, the application metric data includes the number of application outages and / or the number of users affected by the application outage.
[0172] An information determination module 903, configured to determine the outage information of the target application according to the application metric data.
[0173] The above is a schematic solution of an application outage information acquisition device according to this embodiment. It should be noted that the technical solution of the application outage information acquisition device and the technical solution of the above-mentioned application outage information acquisition method applied to the application outage information acquisition device belong to the same concept. For the details not described in the technical solution of the application outage information acquisition device, reference can be made to the description of the technical solution of the above-mentioned application outage information acquisition method.
[0174] As Figure 10 shown, Figure 10 is a structural diagram of an electronic device 1000 provided by another embodiment of the present invention. The components of the electronic device 1000 include but are not limited to a memory 1010 and a processor 1020. The processor 1020 is connected to the memory 1010 through a bus 1030, and a database 1050 is used to store data.
[0175] The electronic device 1000 further includes an access device 1040, which enables the electronic device 1000 to communicate via one or more networks 1060. Examples of these networks include the Public Switched Telephone Network (PSTN), Local Area Network (LAN), Wide Area Network (WAN), Personal Area Network (PAN), or a combination of communication networks such as the Internet. The access device 1040 may include one or more of any type of wired or wireless network interface (e.g., Network Interface Card (NIC)), such as an IEEE602.11 Wireless Local Area Network (WLAN) wireless interface, a Worldwide Interoperability for Microwave Access (Wi-MAX) interface, an Ethernet interface, a Universal Serial Bus (USB) interface, a cellular network interface, a Bluetooth interface, a Near Field Communication (NFC) interface, and so on.
[0176] In an embodiment of the present invention, the above components of the electronic device 1000 and Figure 10 other components not shown in the figure may also be connected to each other, for example, through a bus. It should be understood that Figure 10 the structural block diagram of the electronic device shown is only for illustrative purposes and is not a limitation on the scope of the present invention. Those skilled in the art can add or replace other components as needed.
[0177] The electronic device 1000 can be any type of stationary or mobile electronic device, including mobile computers or mobile electronic devices (e.g., tablet computers, personal digital assistants, laptop computers, notebook computers, netbooks, etc.), mobile phones (e.g., smart phones), wearable electronic devices (e.g., smart watches, smart glasses, etc.) or other types of mobile devices, or stationary electronic devices such as desktop computers or PCs. The electronic device 1000 can also be a mobile or stationary server.
[0178] Among them, the processor 1020 is used to execute the computer-executable instructions of the application downtime information acquisition method.
[0179] The above is a schematic solution of an electronic device in this embodiment. It should be noted that the technical solution of this electronic device and the technical solution of the above application downtime information acquisition method belong to the same concept. For the details not described in detail in the technical solution of the electronic device, reference can be made to the description of the technical solution of the above application downtime information acquisition method.
[0180] The embodiment of the present invention also provides a storage medium. The storage medium is a computer-readable storage medium. The storage medium stores a computer program, and when the computer program is executed by a processor, the above application downtime information acquisition is realized.
[0181] As a non-transitory computer-readable storage medium, the memory can be used to store non-transitory software programs and non-transitory computer-executable programs. In addition, the memory can include high-speed random access memory, and can also include non-transitory memory, such as at least one magnetic disk storage device, a flash memory device, or other non-transitory solid-state storage devices. In some embodiments, the memory may optionally include a memory remotely disposed relative to the processor, and these remote memories can be connected to the processor through a network. Examples of the above networks include, but are not limited to, the Internet, an enterprise intranet, a local area network, a mobile communication network, and combinations thereof. The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separated, and may be located in one place, or may be distributed to multiple network units. Some or all of the modules can be selected according to actual needs to achieve the purpose of the solution of this embodiment.
[0182] Those of ordinary skill in the art will appreciate that all or some of the steps and systems disclosed above in the methods can be implemented as software, firmware, hardware, and their appropriate combinations. Some or all of the physical components can be implemented as software executed by a processor, such as a central processing unit, a digital signal processor, or a microprocessor, or as hardware, or as an integrated circuit, such as an application specific integrated circuit. Such software can be distributed on a computer-readable medium, which can include a computer storage medium (or non-transitory medium) and a communication medium (or transitory medium). As is well known to those of ordinary skill in the art, the term computer storage medium includes volatile and non-volatile, removable and non-removable media implemented in any method or technology for storing information, such as computer-readable instructions, data structures, program modules, or other data. Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technologies, CD-ROM, digital versatile disks (DVD) or other optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to store the desired information and can be accessed by a computer. In addition, as is well known to those of ordinary skill in the art, communication media typically includes computer-readable instructions, data structures, program modules, or other data in a modulated data signal such as a carrier wave or other transmission mechanism, and can include any information delivery medium.
[0183] The above has specifically described the preferred embodiments of the present invention, but the present invention is not limited to the above embodiments. Those skilled in the art can also make various equivalent deformations or substitutions without departing from the spirit of the present invention, and these equivalent deformations or substitutions are all included within the scope defined by the claims of the present invention.
Claims
1. A method for obtaining application downtime information, characterized in that: The method comprises: In response to the triggered information acquisition control instruction, application indicator data of the target application is acquired; wherein the application indicator data includes the number of application downtimes and / or the number of application downtime users; Determine downtime information of the target application based on the application indicator data.
2. The method according to claim 1, characterized in that The step of acquiring application indicator data of a target application in response to the triggered information acquisition control instruction includes: In response to the triggered information acquisition control instruction, calling the software development kit interface and the application programming interface of the application management platform; Acquire first application indicator data of the target application uploaded by the software development kit interface, and acquire second application indicator data of the target application uploaded by the application programming interface; Among them, the first application indicator data includes the number of times the target application is run and the number of users; the second application indicator data includes the application downtime type of the target application, the number of downtimes of each application downtime type, and the number of application downtime users.
3. The method according to claim 2, characterized in that The obtaining the second application indicator data of the target application uploaded by the application programming interface includes: Invoke a hypertext transfer protocol client programming toolkit and provide a hypertext transfer protocol client credential to generate a hypertext transfer protocol request; According to the hypertext transfer protocol request, calling the error report acquisition interface in the application programming interface, and receiving a return result of the error report acquisition interface; The second application indicator data of the target application is determined according to the returned result.
4. The method according to claim 2, characterized in that: Determining the downtime information of the target application according to the application indicator data includes: Determine the total number of downtimes of the target application according to the application downtime type of the target application and the number of downtimes of each application downtime type; Determining a downtime rate of the target application according to the total number of downtimes of the target application and the number of operations of the target application; Determining a downtime user rate of the target application according to the number of application downtime users of the target application and the number of users of the target application; The downtime information of the target application is generated based on the number of operations, the total number of downtimes, the downtime rate, the number of application downtime users, the number of users, and the downtime user rate.
5. The method according to claim 1, characterized in that: The method further comprises: When the number of application downtimes is greater than zero, storing the downtime dump file in the dump file storage space, and storing the symbol file in the symbol file storage space; In response to the triggered downtime analysis control instruction, the dump file storage space is searched and processed to obtain a target downtime dump file; A target symbol file matching the target downtime dump file is determined, and downtime parsing processing is performed on the target downtime dump file and the target symbol file to obtain a downtime stack.
6. The method according to claim 5, characterized in that The storing of the downtime dump file in the dump file storage space includes: Reading a crash dump file generated by the target application; Using the reporting service, uploading the downtime dump file to the dump file storage space for storage; Wherein, the dump file storage space is in the cloud.
7. The method according to claim 6, characterized in that After uploading the downtime dump file to the dump file storage space for storage, the method further includes: Verify the integrity of the downtime dump file, generate and record the reporting flow of the downtime dump file; The reporting flow includes the upload time, universal unique identification code and metadata information of the downtime dump file.
8. The method according to claim 5, characterized in that The storing of the symbol file in the symbol file storage space includes: Reading an original compressed file generated by the target application; wherein the original compressed file is the original state of the symbol file; Using the upload command of the symbol storage tool, each symbol file in the original compressed file is uploaded to the symbol file storage space one by one for storage by means of parameter passing; Wherein, the symbol file storage space is in the cloud.
9. The method according to claim 5, characterized in that The method of performing a search process on the dump file storage space in response to the triggered downtime analysis control instruction to obtain a target downtime dump file includes: Parsing the downtime analysis control instruction to obtain a dump file retrieval request; Based on the dump file retrieval request, performing retrieval processing on the dump file storage space to obtain a retrieval result; When the search result shows that the target downtime dump file exists, downloading the target downtime dump file to a local storage space to obtain the target downtime dump file; When the search result is empty, the search request exception information is returned and a prompt window is generated.
10. The method according to claim 5, characterized in that The step of determining a target symbol file that matches the target downtime dump file, and performing downtime analysis on the target downtime dump file and the target symbol file to obtain a downtime stack includes: Based on the identifier of each symbol file in the symbol file storage space, a target symbol file matching the target downtime dump file is retrieved from the symbol file storage space, and the target symbol file is downloaded to the local storage space to obtain the target symbol file; The target downtime dump file and the target symbol file are parsed by a debugging tool to obtain a downtime stack corresponding to the target downtime dump file.
11. A device for obtaining application downtime information, characterized in that: The device comprises: A data acquisition module is configured to acquire application indicator data of a target application in response to a triggered information acquisition control instruction; wherein the application indicator data includes the number of application downtimes and / or the number of application downtime users; The information determination module is configured to determine the downtime information of the target application according to the application indicator data.
12. An electronic device, characterized in that: It includes at least one control processor and a memory for communicating with the at least one control processor; the memory stores instructions that can be executed by the at least one control processor, and the instructions are executed by the at least one control processor so that the at least one control processor can execute the application downtime information acquisition method as described in any one of claims 1 to 10.
13. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores computer-executable instructions, and the computer-executable instructions are used to enable a computer to execute the method for obtaining application downtime information according to any one of claims 1 to 10.