CN113591090B - Program bug reporting method, device, equipment and storage medium - Google Patents

Program bug reporting method, device, equipment and storage medium Download PDF

Info

Publication number
CN113591090B
CN113591090B CN202010363344.4A CN202010363344A CN113591090B CN 113591090 B CN113591090 B CN 113591090B CN 202010363344 A CN202010363344 A CN 202010363344A CN 113591090 B CN113591090 B CN 113591090B
Authority
CN
China
Prior art keywords
client
program
log
video
time
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010363344.4A
Other languages
Chinese (zh)
Other versions
CN113591090A (en
Inventor
方伟彬
吴建伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202010363344.4A priority Critical patent/CN113591090B/en
Publication of CN113591090A publication Critical patent/CN113591090A/en
Application granted granted Critical
Publication of CN113591090B publication Critical patent/CN113591090B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/577Assessing vulnerabilities and evaluating computer system security
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

The application discloses a program vulnerability reporting method, device, equipment and storage medium, and relates to the field of computer programs. The method comprises the following steps: simultaneously operating a first client and a second client in a terminal; monitoring the program running of the second client through the first client, and recording a user interface when the second client runs; responding to the monitoring that the program running of the second client side has program loopholes, intercepting video clips recorded in a first time period where a first moment is located through the first client side, and acquiring log information corresponding to the first moment from a program crash log, wherein the first moment is the moment when the first client side monitors the program loopholes; the video clips and the program crash logs are reported to the vulnerability management platform through the first client, and the vulnerability management platform is used for providing the video clips and the program crash logs and efficiently positioning program vulnerabilities of the second client.

Description

Program bug reporting method, device, equipment and storage medium
Technical Field
The present invention relates to the field of computer programs, and in particular, to a method, an apparatus, a device, and a storage medium for reporting program vulnerabilities.
Background
Before a piece of software is released, program testing needs to be conducted on the software client so as to ensure stability of the released software client.
Installing and running a software client to be tested on a terminal selected for testing, and implanting a vulnerability monitoring component such as a bug control into the software client; if program bug errors occur in the process of operating the software client, the bug monitoring component collects operating data when the program bug occurs and reports the operating data to the bug management platform, and a software developer searches the program bug according to the operating data and then repairs the program bug.
In the process of repairing the program bug, the software developer also needs to know the change of the display interface when the program bug occurs in the software client, so that the software developer needs to rerun the software client, record the screen of the display interface, match a section of video when the program bug occurs, and further analyze the program bug according to the operation data and the matched video, and repair the program bug. The repair process of the program bug is complicated, and a great deal of time is required to be spent for positioning the program bug, namely, the video matched with the operation data is obtained, so that the repair efficiency of the program bug is reduced.
Disclosure of Invention
The embodiment of the application provides a program bug reporting method, device, equipment and storage medium, which can report log information corresponding to a program bug in a second client side and a screen recording segment of a user interface to a bug management platform at the same time, so that a program developer can efficiently locate the program bug in the second client side in a bug repairing process, and bug repairing is performed. The technical scheme is as follows:
according to an aspect of the present application, there is provided a method for reporting program vulnerabilities, including:
monitoring the program running of the second client through the first client, and recording a user interface when the second client runs;
responding to the monitoring that the program running of the second client side has program loopholes, intercepting video clips recorded in a first time period where a first moment is located through the first client side, and acquiring log information corresponding to the first moment from a program crash log, wherein the first moment is the moment when the first client side monitors the program loopholes;
the method comprises the steps that a first client reports a video clip and a program crash log to a vulnerability management platform, and the vulnerability management platform is used for providing the video clip and the program crash log to accurately locate program vulnerabilities.
According to another aspect of the present application, there is provided a program bug reporting apparatus, including:
the running module is used for monitoring the program running of the second client through the first client and recording the screen of a user interface when the second client runs;
the acquisition module is used for responding to the condition that the program running of the second client side is monitored to generate program loopholes, capturing video clips recorded in a first time period where a first moment is located through the first client side, and acquiring log information corresponding to the first moment from a program crash log, wherein the first moment is the moment when the first client side monitors the program loopholes;
the report module is used for reporting the video clips and the program crash logs to the vulnerability management platform through the first client, and the vulnerability management platform is used for providing the video clips and the program crash logs so as to accurately locate program vulnerabilities.
According to another aspect of the present application, there is provided a terminal including:
a memory;
a processor coupled to the memory;
wherein the processor is configured to load and execute executable instructions to implement the method of reporting program vulnerabilities as described in the above aspect and alternative embodiments thereof.
According to another aspect of the present application, there is provided a computer readable storage medium having stored therein at least one instruction, at least one program, a code set, or an instruction set, where the at least one instruction, the at least one program, the code set, or the instruction set is loaded and executed by a processor to implement a method for reporting a program bug according to the above aspect and optional embodiments thereof.
The beneficial effects that technical scheme that this application embodiment provided include at least:
the method comprises the steps that a first client and a second client are simultaneously operated in a terminal, the program process of the second client is monitored through the first client, and a user interface of the second client in operation is recorded; when the first client detects that program loopholes appear in program operation of the second client, capturing video clips recorded in a first time period where a first moment is located through the first client, and acquiring log information corresponding to the first moment from a program crash log, wherein the first moment is the moment when the first client monitors the program loopholes; and then the intercepted video clips and log information are reported to the vulnerability management platform through the first client, so that program developers can obtain the video clips and the log information on the vulnerability management platform at the same time, the video clips can be obtained without rerun the second client and recording the user interface of the second client in a period of time before and after the occurrence of the program vulnerability, and further, the interface change and the triggered operation on the video clips are matched with the log information, the program vulnerability of the second client is rapidly positioned for vulnerability repair, the time spent for vulnerability repair is greatly saved, and the vulnerability repair efficiency is improved.
Drawings
In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings that are needed in the description of the embodiments will be briefly introduced below, and it is obvious that the drawings in the following description are only some embodiments of the present application, and that other drawings may be obtained according to these drawings without inventive effort for a person skilled in the art.
FIG. 1 is a schematic diagram of a computer system provided in an exemplary embodiment of the present application;
FIG. 2 is a flowchart of a method for reporting program vulnerabilities provided in an exemplary embodiment of the present application;
FIG. 3 is a flowchart of a method for reporting program vulnerabilities provided in another exemplary embodiment of the present application;
FIG. 4 is a flowchart of a method for playing a video recording provided in an exemplary embodiment of the present application;
FIG. 5 is a flowchart of a method for viewing program vulnerabilities provided by one exemplary embodiment of the present application;
FIG. 6 is a schematic diagram of a program vulnerability reporting system according to an exemplary embodiment of the present application;
FIG. 7 is a flowchart of a method for reporting program vulnerabilities provided in another exemplary embodiment of the present application;
FIG. 8 is a flowchart of a method for reporting program vulnerabilities provided in another exemplary embodiment of the present application;
FIG. 9 is a flowchart of a method for reporting program vulnerabilities provided in another exemplary embodiment of the present application;
FIG. 10 is a flowchart of a method for reporting program vulnerabilities provided in another exemplary embodiment of the present application;
FIG. 11 is a schematic diagram of a user interface of a first client provided in an exemplary embodiment of the present application;
FIG. 12 is a block diagram of a program vulnerability reporting device provided by an exemplary embodiment of the present application;
fig. 13 is a schematic structural view of a terminal according to an exemplary embodiment of the present application;
fig. 14 is a schematic structural diagram of a server according to an exemplary embodiment of the present application.
Detailed Description
For the purpose of making the objects, technical solutions and advantages of the present application more apparent, the embodiments of the present application will be described in further detail below with reference to the accompanying drawings.
The terms referred to in this application are explained as follows:
vulnerability management platform: refers to a platform for managing processes, requirements, and defects of client development. For example, in the running process of the client, the terminal monitors that program loopholes appear in the running process of the program, and reports the program loopholes to the loophole management platform; program developers can check reported program vulnerabilities on the vulnerability management platform, and corresponding to the program vulnerabilities are repaired. For another example, the requirements may refer to functional requirements of the client, and a program developer may build a framework for the functional requirements of the client on the vulnerability management platform. For another example, the vulnerability platform includes a development flow of the client, and the program developer needs to perform online operations according to the development flow, so as to complete the development of the client step by step.
Log management platform: refers to a platform for managing logs; the log may include at least one of a terminal log and a server log. The log information is generated by the terminal in the running process, and is uploaded to the log management platform, and the log management platform correspondingly stores the log information of the terminal. Program developers can also view log information on a log management platform. Illustratively, the description information is input on the log management platform to view the related log information, for example, the description information may be time, keywords, etc.
Referring to FIG. 1, a block diagram of a computer system 100 is shown, according to one exemplary embodiment of the present application. The computer system 100 includes: a first terminal 120, a server 140, and a second terminal 160.
The first terminal 120 has an operating system installed thereon; the operating system is provided with a first client and a second client. The first client is a client for monitoring the program running of the second client in the first terminal 120. The second client may be any type of client, such as instant messaging software, financial software, game software, shopping software, video playing software, community service software, audio software, educational software, payment software, etc.
The first terminal 120 is connected to the server 140 through a wireless network or a wired network. Server 140 includes at least one of a server, a plurality of servers, a cloud computing platform, and a virtualization center. The server 140 is configured to provide background services for the first client. Optionally, the server 140 takes on primary computing work and the terminal takes on secondary computing work; alternatively, the server 140 takes on secondary computing work and the terminal takes on primary computing work; alternatively, a distributed computing architecture is used for collaborative computing between the server 140 and the terminal.
The server 140 includes a processor 144 and a memory 142, where the memory 142 stores a computer program, and the processor reads and executes the computer program to implement steps executed by the server in the method for reporting program vulnerabilities provided in the present application.
The server 140 is also connected to the second terminal 160 through a wireless network or a wired network. The second terminal 160 has an operating system installed thereon; the operating system is provided with a first client. Optionally, the first client is further configured to provide a viewing service for monitoring results of the running program of the second client. The operating system is also provided with a second client.
Illustratively, the server 140 carries a vulnerability management platform thereon. Running the first client and the second client simultaneously in the first terminal 120; the first terminal 120 monitors the program running of the second client through the first client, and records a user interface when the second client runs; when a program bug occurs in the program operation of the second client, the first terminal 120 intercepts a video clip recorded in a first time period where a first moment is located through the first client, and obtains log information corresponding to the first moment from a program crash log, wherein the first moment is when the first client monitors the program bug; the first terminal 120 reports the video clip and the log information to the vulnerability management platform through the first client.
Illustratively, a log management platform is also carried on the server 140, which provides platform services for the first client. The first terminal 120 uploads the log information generated by the running client to the log management platform and stores the log information in the program bug log. Optionally, the first terminal 120 further sends, in real time, the video recorded on the screen of the user interface to the log management platform through the first client, and the log management platform allocates a uniform resource locator (Uniform Resource Locator, URL) to the video recorded on the screen, where the URL is used to live the video recorded on the screen when requested.
Illustratively, the vulnerability management platform and the log management platform are disposed on the same or different servers. Optionally, the server 140 also provides a background service for the second client; for example, the second client is shopping software, and the server 140 provides a product information query service, an order generation service, an order payment service, and the like for the shopping software. Alternatively, the first client and the second client are provided with background services by different or the same server.
The first client may further provide a viewing function of the video clip and the log information, and the program developer may view the video clip and the log information on the first client running in the first terminal 120 or the second terminal 160. Optionally, the method comprises the step of. The first client side also provides the URL of the live broadcasting room of the video recording, and the program developer can click to enter the live broadcasting room through the URL to watch the video recording.
The first terminal 120 may refer to one of the plurality of terminals in general, and the second terminal 160 may refer to one of the plurality of terminals in general, and the present embodiment is exemplified by the first terminal 120 and the second terminal 160 only. The terminal may include: at least one of a smart phone, a tablet computer, an electronic book reader, a dynamic image expert compression standard audio layer 3 (Moving Picture Experts Group Audio Layer III, MP 3) player, a dynamic image expert compression standard audio layer 4 (Moving Picture Experts Group Audio Layer IV, MP 4) player, a laptop portable computer, a desktop computer and a notebook computer. The following embodiments are illustrated with terminals including smartphones and personal computers.
Those skilled in the art will recognize that the number of terminals may be greater or lesser. Such as the above-mentioned terminals may be only one, or the above-mentioned terminals may be several tens or hundreds, or more. The number of terminals and the device type are not limited in the embodiment of the present application.
Referring to fig. 2, a flowchart of a program bug reporting method according to an exemplary embodiment of the present application is illustrated, where the method is applied to the first terminal shown in fig. 1, and the method includes:
step 201, monitoring the program running of the second client through the first client, and recording the screen of the user interface when the second client runs.
The terminal is provided with a first client and a second client, wherein the first client and the second client are different clients, the first client is a client for monitoring the program operation of the second client in operation, and the first client can be used for recording a user interface of the second client in operation.
Optionally, a monitoring control of the program process is implanted in the first client, and the terminal calls the monitoring control of the first client to monitor the program running of the second client. The monitoring control can be used for monitoring the program progress of the second client; and the terminal monitors the program progress of the second client through a monitoring control in the first client. The monitoring control may include a bug control, and the terminal monitors a program progress of the second client through the bug control of the first client.
Optionally, a software development kit (Software Development Kit, SDK) is also embedded in the first client, and the terminal records a user interface of the second client through the SDK in the first client.
In the scene that the program operation of the second client needs to be monitored, in order to monitor the program operation of the second client in the whole course from the beginning of the program operation to the end of the program process, firstly, a first client is operated on a terminal, and the first client is placed in a background operation; then, a second client is operated on the terminal, and the second client is operated on the foreground; that is, in a period of time in which the first client monitors the running program of the second client, the user interface of the first client is not displayed on the terminal and the user interface of the second client is displayed. And starting to monitor the program running of the second client at the first client, and simultaneously starting to record the user interface displayed on the terminal.
Step 202, in response to monitoring that program bug occurs in program operation of the second client, capturing, by the first client, a video clip recorded in a first time period in which the first time is located.
The first client also has a video cutting function; when a first client monitors that program loopholes appear in program operation of a second client, a terminal cuts a screen recording video obtained by screen recording, and cuts a video clip of the screen recording in a first time period where a first moment is located; the first time refers to a time when the first client monitors the program bug.
Optionally, in the process of running the second client, when the terminal monitors that the program process of the second client is terminated through the first client, determining that the program of the second client is in loophole, and then intercepting, through the first client, a video clip recorded in a first time period where the first time is located. For example, the program process termination may refer to a sudden termination during the program process of the second client, i.e. a sudden interruption of the program operation without artificial control.
The terminal monitors that the second client side has program loopholes at the moment of 12:00 through the first client side, and intercepts video clips of the screen in the time period of 11:55 to 12:05 through the first client side.
And 203, responding to the monitoring of program loopholes occurring in the program operation of the second client, and acquiring log information corresponding to the first moment from the program crash log.
When the first client monitors that the program of the second client runs out of the program bug, the terminal intercepts a video clip recorded in a first time period where the first moment is located through the first client; and simultaneously, acquiring log information corresponding to the first moment from the program crash log.
Optionally, the program crash log is stored on a log management platform; the terminal requests to obtain the log information of the terminal corresponding to the first moment stored in the program crash log from the log management platform through the first client.
Optionally, caching a program crash log of the terminal in the terminal; the terminal acquires the log information of the terminal corresponding to the first moment from the cached program crash log through the first client.
For example, if the first time is 9:00, the terminal obtains, from the program crash log, log information of the terminal at the time of 9:00 through the first client.
Step 204, uploading the video clip and the log information to the vulnerability management platform through the first client.
The vulnerability management platform is used for providing video clips and log information to accurately locate program vulnerabilities. The first client is a client of the log management platform, and an interaction control is implanted in the first client; and the first client on the terminal realizes information interaction with the vulnerability management platform through the interaction control. The terminal invokes the interaction control of the first client to upload the video clips and the log information to the vulnerability management platform, and the vulnerability management platform stores the video clips and the log information correspondingly. The terminal uploads the video clips and the log information to a vulnerability management platform, and the vulnerability management platform generates a bill corresponding to the video clips and the log information; and if the vulnerability management platform requests to look up the bill of lading, the video clips and the log information can be looked up.
In summary, in the method for reporting program vulnerabilities provided in the present embodiment, a first client and a second client are simultaneously running in a terminal, and the method monitors a program process of the second client through the first client, and records a user interface when the second client runs at the same time; when the first client detects that program loopholes appear in program operation of the second client, capturing video clips recorded in a first time period where a first moment is located through the first client, and acquiring log information corresponding to the first moment from a program crash log, wherein the first moment is the moment when the first client monitors the program loopholes; and then the intercepted video clips and log information are reported to the vulnerability management platform through the first client, so that program developers can obtain the video clips and the log information on the vulnerability management platform at the same time, the video clips can be obtained without rerun the second client and recording the user interface of the second client in a period of time before and after the occurrence of the program vulnerability, and further, the interface change and the triggered operation on the video clips are matched with the log information, the program vulnerability of the second client is rapidly positioned for vulnerability repair, the time spent for vulnerability repair is greatly saved, and the vulnerability repair efficiency is improved. The method also avoids missing program loopholes without perception through the real-time monitoring of the first client to the program process when the second client runs.
In order to avoid the situation of false alarm in the program bug reported to the bug management platform, the application further provides a verification method of the program bug, schematically, as shown in fig. 3, step 202 in fig. 2 may include steps 2021 to 2022, where the steps are as follows:
in response to monitoring the second client for program process termination, the program crash log is queried by the first client, step 2021.
If the client side in the terminal has program loopholes in the running process, the terminal correspondingly generates log information of the program loopholes and stores the log information into a program loophole log. That is, when the program of the second client runs and a program bug occurs, the terminal correspondingly generates log information corresponding to the program bug of the second client, and uploads the log information corresponding to the second client to the program bug log; thus, the terminal may query the program crash log by the first client to determine if it is a program process message of the second client caused by the existence of a program bug.
If the log information corresponding to the second client exists in the program crash log, the program crash log indicates that the program loophole occurs in the second client in the running process, and the program process of the second client which is not realized by artificial control is ended; that is, the terminal determines that the program process of the second client is terminated due to the program bug. Otherwise, the terminal determines that the program process of the second client is not terminated by the program vulnerability.
Optionally, the program bug may be a program problem caused by program crash or crash, where program crash and crash are two phenomena of abnormal closing of a program process caused by code defect, forced system killing, and the like in the running process of the client.
The terminal sends a query request to the log management platform through a first client, wherein the query request is used for requesting whether log information corresponding to a second client at a first moment exists in a program crash log; and inquiring whether the log information exists in the program crash log by the log management platform, and returning an inquiry result to the first client of the terminal.
Or the terminal inquires whether the log information exists in the cached program crash log through the first client to obtain an inquiry result. Wherein the query result includes the presence or absence of log information.
It should be noted that, the terminal may also query the program crash log through the first client in response to monitoring that the program process of the second client is blocked.
In step 2022, in response to the log information in the program crash log, capturing, by the first client, a video clip recorded in a first time period in which the first time is located.
The terminal determines that log information exists in the program crash log, for example, the query result returned by the log management platform is that the log information exists, or the query result obtained by querying from the program crash log is that the log information exists, and then the terminal intercepts the video clip recorded in the first time period where the first time is located through the first client.
Optionally, before capturing, by the first client, a video clip recorded in a first time period in which the first time period is located, the terminal further calculates a start time and an end time of the first time period by the first client; the starting time is a time which is a first time from the first time and is positioned before the first time, and the ending time is a time which is a second time from the first time and is positioned after the first time.
That is, a first duration and a second duration corresponding to the first client are set in the terminal, the first duration is a duration required to be intercepted before the program bug occurrence time, and the second duration is a duration required to be intercepted after the program bug occurrence time. Alternatively, the first time period may be the same as or different from the second time period.
For example, if the first duration is 8 minutes, the second duration is 7 minutes, and the first time is 14:30, the terminal calculates, through the first client, that the starting time and the ending time of the first time period are 14:22 and 14:37, respectively, and the duration of the first time period is 15 minutes.
For example, if the first duration and the second duration are both 6 minutes and the first time is 8:00, the terminal calculates, through the first client, that the starting time of the first time period is 7:54 and the ending time of the first time period is 8:06, and then the duration of the first time period is 12 minutes.
It should be further noted that, in this embodiment, when the first client monitors that the program process of the second client is terminated, the terminal may also directly obtain, through the first client, log information at a first moment corresponding to the second client from the program crash log, that is, execute step 203 before intercepting a video clip recorded in a first time period where the first moment is located; if the terminal obtains the log information from the program crash log through the first client, determining that program loopholes exist, and intercepting video clips recorded in a first time period where the first moment is located through the first client; if the terminal fails to acquire the log information from the program crash log, determining that no program bug exists, and continuing to monitor the second client through the first client.
In summary, in the program bug reporting method provided in this embodiment, after the first client monitors that the program process of the second client is terminated, the first client queries the program crash log to determine whether the program bug actually exists; if log information corresponding to the second client exists in the program crash log, and the program bug is determined to exist truly, the terminal intercepts the video clips recorded in the first time period where the first moment exists through the first client to report the video clips and the log information to the bug management platform, so that the situation that false alarms occur in the program bug reported to the bug management platform is avoided, in addition, under the condition that the program bug is determined not to exist, the clipping of the recorded video is not needed, and the operation amount occupied by the process of video interception on the terminal is reduced.
In the method, a video segment recorded by a user interface of a second client in a period of time is intercepted, wherein the period of time comprises a sub-period before the occurrence of the program bug and a sub-period after the occurrence of the program bug, and the interface change and the triggered control operation on the user interface of the second client before and after the occurrence of the program bug can be obtained through the video segment, so that a program developer can more accurately position the program bug of the second client by matching corresponding log information.
In this application, the terminal may also live broadcast the video recorded on the user interface of the second client, and schematically, as shown in fig. 4, a method for playing the video recorded on the screen according to an exemplary embodiment of the present application is illustrated by applying the method to the first terminal shown in fig. 1, where the method includes:
step 301, recording a screen of a user interface when the second client runs through the first client.
And simultaneously running the first client and the second client in the terminal, wherein the first client is arranged in a background operation in the terminal, and the second client is arranged in a foreground operation. The first client side has a screen recording function; the terminal records the screen of the user interface when the second client runs through the screen recording function of the first client.
Step 302, the first client sends the screen recording video obtained by recording the screen of the user interface of the second client to the log management platform in real time.
The log management platform is used for distributing URL (Uniform resource locator) for the video recording, and the URL is used for live broadcasting of the video recording when requested.
Optionally, the first client is embedded with a cloud live SDK; and the terminal sends the screen recording video to the log management platform in real time through the cloud live SDK implanted in the first client. The method includes the steps that after a terminal sends a recorded broadcast video to a log management platform in real time through a first client, the log management platform receives the recorded broadcast video sent by the first client and distributes a URL for the recorded broadcast video of the first client; clicking the URL on the terminal to enter a live broadcasting room so as to view live broadcasting of the video recorded by the second client.
In summary, according to the live broadcast method of the video recording of the second client, the live broadcast service of the video recording of the second client is provided on the log management platform, and under the condition that the terminal running the second client is not nearby, the program developer can check the video recording of the second client through the other terminal installed with the first client, so that the real-time progress tracking of the program running of the second client is realized; and the terminal provided with the second client or another terminal identical to the terminal is not required to be borrowed, so that the program loophole is reproduced, and the manpower resource and the time cost are saved.
The first client also provides a viewing function of related content of the program bug, that is, a program developer may view, through the first client, a video clip and log information corresponding to the program bug, schematically, as shown in fig. 5, a method for viewing the program bug provided in an exemplary embodiment of the present application is illustrated by using the method applied to a second terminal as shown in fig. 1 as an example, where the method includes:
step 401, displaying an information display interface through a first client, wherein the information display interface comprises prompt information.
The prompt information is sent to the first client after the vulnerability management platform receives the video clips and the log information corresponding to the second client. Namely, after receiving the reported video clips and log information, the vulnerability management platform generates prompt information corresponding to the program vulnerability; and sending the prompt information to the first client, wherein the prompt information is used for prompting program developers that program loopholes appear in the program running process of the second client.
The terminal puts the first client into a foreground for operation, and displays an information display interface of the first client on the terminal, wherein the information display interface comprises prompt information.
Step 402, a view request triggered on the prompt message displayed by the first client is received.
The terminal generates a viewing request when receiving a first triggering operation on the prompt message; and sending the view request to the vulnerability management platform through the first client, wherein the view request is used for requesting to view the video clips and log information of the program vulnerabilities of the second client corresponding to the prompt information. The first triggering operation may include at least one of a single click operation, a multi-click operation, and a sliding operation, and the type of the triggering operation is not limited in this embodiment.
The information display interface comprises at least two pieces of prompt information; the terminal receives a trigger request on target prompt information in at least two prompt messages, and generates a viewing request for the target prompt information.
Step 403, displaying a loophole viewing interface through the first client, wherein the loophole viewing interface comprises a video playing control and log information.
The video playing control is used for playing video clips, and the video clips and the log information are obtained from the vulnerability management platform.
The method includes the steps that an loophole viewing interface corresponding to prompt information is displayed in a first client of a terminal, wherein the loophole viewing interface comprises a video playing control corresponding to the prompt information and log information, and a playing address of a video clip corresponding to the prompt information is set on the video playing control; when receiving a second triggering operation on the video playing control on the terminal, the terminal plays the video clip; the second triggering operation may be a clicking operation.
Optionally, the video playing control is further used for playing the video clips in a floating window. The terminal plays the video clip in the floating window when receiving the second trigger operation on the video playing control.
In summary, according to the program bug checking method provided by the embodiment, the video clips and the log information corresponding to the program bug can be checked directly through the first client, the running condition of the second client does not need to be reproduced when the program bug occurs, and the video clips and the log information do not need to be checked respectively, so that the checking efficiency of the program developer on the video clips and the log information corresponding to the program bug is improved.
Referring to fig. 6, a block diagram of a reporting system for program vulnerabilities provided in an exemplary embodiment of the present application is shown, where the system includes a first client 501, a second client 502, a log management platform 503, a database 504, and a vulnerability management platform 505.
The system comprises the following three functions:
1) Program progress monitoring of the second client.
A first client 501 and a second client 502 are installed in the terminal, and the first client 501 monitors the program running of the second client 502. Taking a system in a terminal as an ios system as an example, as shown in fig. 7, a third party library, i.e., IOKitBrowser, is set in the first client 501; the terminal can monitor all processes in the ios system through the IOKitBrowser in the first client 501, after monitoring that the program process of the second client 502 is terminated, the terminal also judges whether log information is generated in the program crash log in the terminal at the first time when the program process is terminated through the first client 501, if so, the terminal intercepts video clips according to the first time through the first client 501, and reports the video clips and the log information to the vulnerability management platform 505.
2) And recording screen video live broadcast of the user interface of the second client.
As shown in fig. 8, a cloud live SDK is built in the first client 501; in the first terminal 51, the first client 501 is arranged in a background to run, the video recording of the user interface of the second client 501 is sent to a log management platform in real time through the cloud live SDK, and the log management platform distributes URL for the video recording; the first client 501 is put in the foreground to run in the second terminal 52, and the first client 501 enters the live broadcasting room through the URL, so that the recorded and broadcast video can be watched in real time. The log management platform 503 also stores log information and recorded video into the database 504.
3) And generating a bill of lading of the program loopholes.
As shown in fig. 9, when the first client 501 monitors that the second client 502 has a program bug at a first time, the terminal intercepts a video clip in a first time period where the first time is located through an SDK of video clipping in the first client 501, and pulls log information of the second client 502 corresponding to the first time from a program crash log; the terminal reports the video clips and the log information to a vulnerability management platform through an application program editing interface (Application Programming Interface, API) corresponding to the first client 501, and a bill of lading is generated by the vulnerability management platform, wherein the bill of lading comprises the video clips and the log information; program developers can extract the bill of lading on the vulnerability management platform, and then view video clips and log information corresponding to program vulnerabilities.
In summary, the program bug reporting system provided in this embodiment may simultaneously implement three functions, i.e., program process monitoring of the second client, live video recording of the user interface of the second client, and generating of the bill of lading of the program bug, so that a program developer may obtain the video clip and log information on the bug management platform at the same time, without re-running the second client, and recording the user interface of the second client in a period of time before and after the occurrence of the program bug, so as to obtain the video clip, and further match the interface change on the video clip with the triggered operation to match log information, thereby rapidly positioning the program bug of the second client, performing bug repair, greatly saving time spent in bug repair, and improving efficiency of bug repair.
The method also enables program developers to check recorded video of the second client through the other terminal provided with the first client under the condition that the terminal provided with the second client is not nearby in a live broadcast mode, and achieves real-time progress tracking on program operation of the second client.
For example, the method for reporting program vulnerabilities is described by taking the second client as the game client as an example, as shown in fig. 10, and the steps are as follows:
Step 601, monitoring the program running of the game client through the first client, and recording the screen of the user interface when the game client runs.
The first client has a monitoring function for other clients, and the first client also has a screen recording function for a display interface of the terminal. A first client is operated on the terminal, and the monitoring function of the first client to other clients installed and operated in the terminal is started; and a screen recording opening interface 61 of the first client is displayed on a display interface of the terminal, as shown in fig. 11, the screen recording opening interface 61 comprises a screen recording opening control 62; the terminal starts the screen recording function of the first client according to the screen recording operation triggered on the screen recording opening control 62; and returning to the desktop of the terminal, placing the first client into a background for running, and then running the game client on the terminal, wherein the terminal monitors the running of the game client through the first client and records a user interface of the game client running in the foreground.
Step 602, in response to monitoring the game process to the game client to terminate, querying a program crash log by the first client.
If the first client monitors that the game process of the game client is terminated, the terminal queries a program crash log through the first client to determine whether the game client has program loopholes. When a program of the game client runs and loopholes occur, the terminal generates log information corresponding to the program loopholes of the game client and stores the log information into a program crash log; the terminal determines whether the game client has program loopholes by inquiring whether log information exists at the first moment when the game process is terminated by the first client. If the terminal determines that the game client has a program bug, executing step 603; if the terminal determines that the game client does not have a program bug, the first client continues to monitor the program running of the game client, and step 606 is executed.
Step 603, in response to log information in the program crash log, intercepting, by the first client, a video clip recorded in a first time period in which the first time is located.
The terminal responds to the log information of the game client corresponding to the first moment in the program crash log, and intercepts a video clip recorded in a first time period where the first moment is located through the first client; for example, if the terminal determines that log information of the game client exists at the first time 10:00, that is, the game client has a program bug at the first time 10:00, video clips in a period from 9:52 to 10:01 are intercepted from the recorded video by the first client. Illustratively, the video clip includes changes in game frames during the first time period, such as movement of virtual characters in the game frames, release of game skills, etc., that is, the video clip embodies control operations used by the player during the first time period.
In step 604, in response to monitoring that the game process of the game client is terminated, log information corresponding to the first time is obtained from the program crash log.
Step 605, uploading the video clip and the log information to the vulnerability management platform through the first client.
The first client is a client corresponding to a log management platform, and the log management platform and the vulnerability management platform are two service platforms which are mutually independent; the first client is provided with an interaction control, and the first client communicates with the vulnerability management platform through the interaction control. Therefore, the terminal uploads the video clips and the log information to the vulnerability management platform through the interaction control of the first client.
Step 606, the first client sends the screen video obtained by screen recording the user interface of the game client to the log management platform in real time.
The terminal sends the screen recording video obtained by recording the screen of the user interface of the game client to the log management platform in real time through the first client, and the log management platform carries out live broadcast on the screen recording video and stores the screen recording video.
In summary, in the program bug reporting method provided in this embodiment, when the first client monitors that the program process of the game client is terminated, whether log information exists at the first moment when the program process is terminated in the program crash log is queried, if so, the program bug is determined to occur when the game client runs, the video segment and the log information corresponding to the first moment are obtained, the video segment and the log information are reported to the bug management platform, so that a program developer can locate the program bug of the game client through the video segment and the log information, and repair the program bug. The method also carries out live broadcast on the user interface when the game client runs, so that program developers can track the real-time progress of the program running of the game client through the first client.
Referring to fig. 12, a block diagram of a program bug reporting apparatus provided in an exemplary embodiment of the present application, where the apparatus is implemented as part or all of a server through software, hardware, or a combination of both, and the apparatus includes:
the running module 701 is configured to monitor, by using the first client, running of a program of the second client, and record a screen of a user interface when the second client runs;
the obtaining module 702 is configured to, in response to monitoring that a program bug occurs in the program operation of the second client, intercept, by the first client, a video clip recorded in a first time period in which the first time is located, and obtain log information corresponding to the first time from a program crash log, where the first time refers to a time when the first client monitors the program bug;
the reporting module 703 is configured to report, through the first client, the video clip and the program crash log to the vulnerability management platform, where the vulnerability management platform is configured to provide the video clip and the program crash log to accurately locate the program vulnerability.
In some embodiments, the obtaining module 702 is configured to query, by the first client, a program crash log in response to monitoring that the program process of the second client is terminated; and responding to log information in the program crash log, and intercepting a video clip recorded in a first time period where the first moment is located through the first client.
In some embodiments, the apparatus further comprises:
a calculating module 704, configured to calculate, by the first client, a start time and an end time of the first period;
the starting time is a time which is a first time from the first time and is positioned before the first time, and the ending time is a time which is a second time from the first time and is positioned after the first time.
In some embodiments, the apparatus further comprises:
the sending module 705 is configured to send, through the first client, a video recording video obtained by recording a screen on the user interface to the log management platform in real time, where the log management platform is configured to allocate a uniform resource locator for the video recording video, and the uniform resource locator is configured to live broadcast the video recording video when requested.
In some embodiments, the sending module 705 is configured to send the video on screen to the log management platform in real time through a cloud live software development kit implanted in the first client.
In some embodiments, the apparatus further comprises:
the display module 706 is configured to display, through the first client, an information display interface, where the information display interface includes prompt information, where the prompt information is sent to the first client by the vulnerability management platform after receiving the video clip and the log information;
A receiving module 707, configured to receive a view request triggered on the prompt information displayed by the first client;
the display module 706 is configured to display, via the first client, a vulnerability viewing interface, where the vulnerability viewing interface includes a video playing control and log information, the video playing control is configured to play a video clip, and the video clip and the log information are obtained from a vulnerability management platform.
In some embodiments, the video playback control is also used to play video clips in a floating window.
In summary, in the reporting device for program bug provided in this embodiment, the first client and the second client are simultaneously operated in the device, and the device monitors the program process of the second client through the first client, and records the screen of the user interface when the second client is operated at the same time; when the first client detects that program loopholes appear in program operation of the second client, capturing video clips recorded in a first time period where a first moment is located through the first client, and acquiring log information corresponding to the first moment from a program crash log, wherein the first moment is the moment when the first client monitors the program loopholes; and then the intercepted video clips and log information are reported to the vulnerability management platform through the first client, so that program developers can obtain the video clips and the log information on the vulnerability management platform at the same time, the video clips can be obtained without rerun the second client and recording the user interface of the second client in a period of time before and after the occurrence of the program vulnerability, and further, the interface change and the triggered operation on the video clips are matched with the log information, the program vulnerability of the second client is rapidly positioned for vulnerability repair, the time spent for vulnerability repair is greatly saved, and the vulnerability repair efficiency is improved.
Referring to fig. 13, a block diagram of a terminal 800 according to an exemplary embodiment of the present application is shown. The terminal 800 may be: a smart phone, a tablet computer, an MP3 player (Moving Picture Experts Group Audio Layer III, motion picture expert compression standard audio plane 3), an MP4 (Moving Picture Experts Group Audio Layer IV, motion picture expert compression standard audio plane 4) player, a notebook computer, or a desktop computer. Terminal 800 may also be referred to by other names of user devices, portable computer devices, laptop computer devices, desktop computer devices, and the like.
In general, the terminal 800 includes: a processor 801 and a memory 802.
Processor 801 may include one or more processing cores, such as a 4-core processor, an 8-core processor, and the like. The processor 801 may be implemented in at least one hardware form of DSP (Digital Signal Processing ), FPGA (Field-Programmable Gate Array, field programmable gate array), PLA (Programmable Logic Array ). The processor 801 may also include a main processor, which is a processor for processing data in an awake state, also referred to as a CPU (Central Processing Unit ), and a coprocessor; a coprocessor is a low-power processor for processing data in a standby state. In some embodiments, the processor 801 may integrate a GPU (Graphics Processing Unit, image processor) for rendering and rendering of content required to be displayed by the display screen. In some embodiments, the processor 801 may also include an AI (Artificial Intelligence ) processor for processing computing operations related to machine learning.
Memory 802 may include one or more computer-readable storage media, which may be non-transitory. Memory 802 may also include high-speed random access memory, as well as non-volatile memory, such as one or more magnetic disk storage devices, flash memory storage devices. In some embodiments, a non-transitory computer readable storage medium in memory 802 is used to store at least one instruction for execution by processor 801 to implement a method for reporting program vulnerabilities provided by method embodiments in the present application.
In some embodiments, the terminal 800 may further optionally include: a peripheral interface 803, and at least one peripheral. The processor 801, the memory 802, and the peripheral interface 803 may be connected by a bus or signal line. Individual peripheral devices may be connected to the peripheral device interface 803 by buses, signal lines, or a circuit board. Specifically, the peripheral device includes: at least one of radio frequency circuitry 804, a touch display 805, a camera 806, audio circuitry 807, a positioning component 808, and a power supply 809.
Peripheral interface 803 may be used to connect at least one Input/Output (I/O) related peripheral to processor 801 and memory 802. In some embodiments, processor 801, memory 802, and peripheral interface 803 are integrated on the same chip or circuit board; in some other embodiments, either or both of the processor 801, the memory 802, and the peripheral interface 803 may be implemented on separate chips or circuit boards, which is not limited in this embodiment.
The Radio Frequency circuit 804 is configured to receive and transmit RF (Radio Frequency) signals, also known as electromagnetic signals. The radio frequency circuit 804 communicates with a communication network and other communication devices via electromagnetic signals. The radio frequency circuit 804 converts an electrical signal into an electromagnetic signal for transmission, or converts a received electromagnetic signal into an electrical signal. Optionally, the radio frequency circuit 804 includes: antenna systems, RF transceivers, one or more amplifiers, tuners, oscillators, digital signal processors, codec chipsets, subscriber identity module cards, and so forth. The radio frequency circuitry 804 may communicate with other computer devices via at least one wireless communication protocol. The wireless communication protocol includes, but is not limited to: the world wide web, metropolitan area networks, intranets, generation mobile communication networks (2G, 3G, 4G, and 5G), wireless local area networks, and/or WiFi (Wireless Fidelity ) networks. In some embodiments, the radio frequency circuitry 804 may also include NFC (Near Field Communication ) related circuitry, which is not limited in this application.
The display 805 is used to display a UI (User Interface). The UI may include graphics, text, icons, video, and any combination thereof. When the display 805 is a touch display, the display 805 also has the ability to collect touch signals at or above the surface of the display 805. The touch signal may be input as a control signal to the processor 801 for processing. At this time, the display 805 may also be used to provide virtual buttons and/or virtual keyboards, also referred to as soft buttons and/or soft keyboards. In some embodiments, the display 805 may be one, providing a front panel of the terminal 800; in other embodiments, the display 805 may be at least two, respectively disposed on different surfaces of the terminal 800 or in a folded design; in still other embodiments, the display 805 may be a flexible display disposed on a curved surface or a folded surface of the terminal 800. Even more, the display 805 may be arranged in an irregular pattern other than rectangular, i.e., a shaped screen. The display 805 may be made of LCD (Liquid Crystal Display ), OLED (Organic Light-Emitting Diode) or other materials.
The camera assembly 806 is used to capture images or video. Optionally, the camera assembly 806 includes a front camera and a rear camera. Typically, the front camera is disposed on a front panel of the computer device and the rear camera is disposed on a rear surface of the computer device. In some embodiments, the at least two rear cameras are any one of a main camera, a depth camera, a wide-angle camera and a tele camera, so as to realize that the main camera and the depth camera are fused to realize a background blurring function, and the main camera and the wide-angle camera are fused to realize a panoramic shooting and Virtual Reality (VR) shooting function or other fusion shooting functions. In some embodiments, the camera assembly 806 may also include a flash. The flash lamp can be a single-color temperature flash lamp or a double-color temperature flash lamp. The dual-color temperature flash lamp refers to a combination of a warm light flash lamp and a cold light flash lamp, and can be used for light compensation under different color temperatures.
Audio circuitry 807 may include a microphone and a speaker. The microphone is used for collecting sound waves of users and the environment, converting the sound waves into electric signals, inputting the electric signals to the processor 801 for processing, or inputting the electric signals to the radio frequency circuit 804 for voice communication. For stereo acquisition or noise reduction purposes, a plurality of microphones may be respectively disposed at different portions of the terminal 800. The microphone may also be an array microphone or an omni-directional pickup microphone. The speaker is used to convert electrical signals from the processor 801 or the radio frequency circuit 804 into sound waves. The speaker may be a conventional thin film speaker or a piezoelectric ceramic speaker. When the speaker is a piezoelectric ceramic speaker, not only the electric signal can be converted into a sound wave audible to humans, but also the electric signal can be converted into a sound wave inaudible to humans for ranging and other purposes. In some embodiments, audio circuit 807 may also include a headphone jack.
The location component 808 is utilized to locate the current geographic location of the terminal 800 to enable navigation or LBS (Location Based Service, location-based services). The positioning component 808 may be a positioning component based on the United states GPS (Global Positioning System ), the Beidou system of China, or the Galileo system of Russia.
A power supply 809 is used to power the various components in the terminal 800. The power supply 809 may be an alternating current, direct current, disposable battery, or rechargeable battery. When the power supply 809 includes a rechargeable battery, the rechargeable battery may be a wired rechargeable battery or a wireless rechargeable battery. The wired rechargeable battery is a battery charged through a wired line, and the wireless rechargeable battery is a battery charged through a wireless coil. The rechargeable battery may also be used to support fast charge technology.
In some embodiments, the terminal 800 also includes one or more sensors 810. The one or more sensors 810 include, but are not limited to: acceleration sensor 811, gyroscope sensor 812, pressure sensor 813, fingerprint sensor 814, optical sensor 815, and proximity sensor 816.
The acceleration sensor 811 can detect the magnitudes of accelerations on three coordinate axes of the coordinate system established with the terminal 800. For example, the acceleration sensor 811 may be used to detect components of gravitational acceleration in three coordinate axes. The processor 801 may control the touch display screen 805 to display a user interface in a landscape view or a portrait view according to the gravitational acceleration signal acquired by the acceleration sensor 811. Acceleration sensor 811 may also be used for the acquisition of motion data of a game or user.
The gyro sensor 812 may detect a body direction and a rotation angle of the terminal 800, and the gyro sensor 812 may collect a 3D motion of the user to the terminal 800 in cooperation with the acceleration sensor 811. The processor 801 may implement the following functions based on the data collected by the gyro sensor 812: motion sensing (e.g., changing UI according to a tilting operation by a user), image stabilization at shooting, game control, and inertial navigation.
The pressure sensor 813 may be disposed at a side frame of the terminal 800 and/or at a lower layer of the touch display 805. When the pressure sensor 813 is disposed on a side frame of the terminal 800, a grip signal of the terminal 800 by a user may be detected, and the processor 801 performs left-right hand recognition or shortcut operation according to the grip signal collected by the pressure sensor 813. When the pressure sensor 813 is disposed at the lower layer of the touch display screen 805, the processor 801 controls the operability control on the UI interface according to the pressure operation of the user on the touch display screen 805. The operability controls include at least one of a button control, a scroll bar control, an icon control, and a menu control.
The fingerprint sensor 814 is used to collect a fingerprint of a user, and the processor 801 identifies the identity of the user based on the fingerprint collected by the fingerprint sensor 814, or the fingerprint sensor 814 identifies the identity of the user based on the collected fingerprint. Upon recognizing that the user's identity is a trusted identity, the processor 801 authorizes the user to perform relevant sensitive operations including unlocking the screen, viewing encrypted information, downloading software, paying for and changing settings, etc. The fingerprint sensor 814 may be provided on the front, back, or side of the terminal 800. When a physical key or vendor Logo is provided on the terminal 800, the fingerprint sensor 814 may be integrated with the physical key or vendor Logo.
The optical sensor 815 is used to collect the ambient light intensity. In one embodiment, the processor 801 may control the display brightness of the touch display screen 805 based on the intensity of ambient light collected by the optical sensor 815. Specifically, when the intensity of the ambient light is high, the display brightness of the touch display screen 805 is turned up; when the ambient light intensity is low, the display brightness of the touch display screen 805 is turned down. In another embodiment, the processor 801 may also dynamically adjust the shooting parameters of the camera module 806 based on the ambient light intensity collected by the optical sensor 815.
A proximity sensor 816, also referred to as a distance sensor, is typically provided on the front panel of the terminal 800. The proximity sensor 816 is used to collect the distance between the user and the front of the terminal 800. In one embodiment, when the proximity sensor 816 detects that the distance between the user and the front of the terminal 800 gradually decreases, the processor 801 controls the touch display 805 to switch from the bright screen state to the off screen state; when the proximity sensor 816 detects that the distance between the user and the front surface of the terminal 800 gradually increases, the processor 801 controls the touch display 805 to switch from the off-screen state to the on-screen state.
Those skilled in the art will appreciate that the structure shown in fig. 13 is not limiting and that more or fewer components than shown may be included or certain components may be combined or a different arrangement of components may be employed.
Referring to fig. 14, a schematic structural diagram of a server according to an embodiment of the present application is shown. The server is used for implementing the steps executed by the server side in the program vulnerability reporting method provided in the above embodiment. Specifically, the present invention relates to a method for manufacturing a semiconductor device.
The server 900 includes a CPU (Central Processing Unit ) 901, a system Memory 904 including a RAM (Random Access Memory ) 902 and a ROM (Read-Only Memory) 903, and a system bus 905 connecting the system Memory 904 and the central processing unit 901. The server 900 also includes a basic I/O (Input/Output) system 906 for facilitating the transfer of information between various devices within the computer, and a mass storage device 907 for storing an operating system 913, application programs 914, and other program modules 915.
The basic input/output system 906 includes a display 908 for displaying information and an input device 909, such as a mouse, keyboard, etc., for user input of information. Wherein the display 908 and the input device 909 are connected to the central processing unit 901 via an input output controller 910 connected to the system bus 905. The basic input/output system 906 can also include an input/output controller 910 for receiving and processing input from a number of other devices, such as a keyboard, mouse, or electronic stylus. Similarly, the input-output controller 910 also provides output to a display screen, a printer, or other type of output device.
The mass storage device 907 is connected to the central processing unit 901 through a mass storage controller (not shown) connected to the system bus 905. The mass storage device 907 and its associated computer-readable media provide non-volatile storage for the server 900. That is, the mass storage device 907 may include a computer readable medium (not shown) such as a hard disk or CD-ROM (Compact Disc Read-Only Memory) drive.
The computer readable medium may include computer storage media and communication media without loss of generality. Computer storage media includes volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. Computer storage media includes RAM, ROM, EPROM (Erasable Programmable Read-Only Memory), EEPROM (Electrically Erasable Programmable Read-Only Memory), flash Memory (Flash Memory) or other solid state Memory technology, CD-ROM, DVD (Digital Versatile Disc, digital versatile disk) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices. Of course, those skilled in the art will recognize that the computer storage medium is not limited to the one described above. The system memory 904 and mass storage device 907 described above may be collectively referred to as memory.
According to various embodiments of the present application, the server 900 may also operate by being connected to a remote computer on a network, such as the Internet. I.e., the server 900 may be connected to the network 912 through a network interface unit 911 coupled to the system bus 905, or may be connected to other types of networks or remote computer systems (not shown) using the network interface unit 911.
The foregoing embodiment numbers of the present application are merely for describing, and do not represent advantages or disadvantages of the embodiments.
It will be understood by those skilled in the art that all or part of the steps for implementing the above embodiments may be implemented by hardware, or may be implemented by a program for instructing relevant hardware, where the program may be stored in a computer readable storage medium, and the storage medium may be a read-only memory, a magnetic disk or an optical disk, etc.
The foregoing description of the preferred embodiments is merely exemplary in nature and is in no way intended to limit the invention, since it is intended that all modifications, equivalents, improvements, etc. that fall within the spirit and scope of the invention.

Claims (5)

1. The method for reporting the program loopholes is characterized by comprising the following steps:
Running a first client, putting the first client in background running, running a second client, putting the second client in foreground running, monitoring the program running of the second client through the first client, and recording a user interface when the second client runs;
responding to the program process termination of the second client, sending a query request to a log management platform through the first client, wherein the query request is used for requesting the log management platform to query whether log information corresponding to the second client at a first moment exists in a program crash log or whether log information corresponding to the second client at the first moment exists in a cached program crash log through the first client, and the first moment refers to the moment when the first client monitors the program bug; if the log information corresponding to the second client is queried in the program crash log, the program bug appears in the running process of the second client, and the program process of the second client which is not realized by artificial control is terminated;
Responding to the query result returned by the log management platform to be that the log information exists in the program crash log, or responding to the query result obtained by the first client from the cached program crash log to be that the log information exists in the program crash log, and calculating the starting time and the ending time of a first time period through the first client; the starting time is a time which is a first time from the first time and is located before the first time, the ending time is a time which is a second time from the first time and is located after the first time, and the first time is the same as or different from the second time;
intercepting video clips recorded in the first time period at the first moment through a software development kit for video cutting implanted in the first client, and acquiring log information corresponding to the first moment from the program crash log;
reporting the video clips and the log information to a vulnerability management platform through an interaction control implanted in the first client, wherein the interaction control is used for realizing information interaction between the first client and the vulnerability management platform, the vulnerability management platform is used for providing the video clips and the log information so as to accurately position the program vulnerability, the vulnerability management platform is also used for generating a bill of lading corresponding to the video clips and the log information, and the bill of lading is used for displaying the video clips and the log information when being extracted;
Transmitting a screen video obtained by screen recording of the user interface to the log management platform in real time through a software development kit for cloud live broadcast implanted in the first client, wherein the log management platform is used for distributing a uniform resource locator for the screen video, and when the uniform resource locator is requested, the screen video is live broadcast in real time on the other terminal running the first client;
the first client is arranged in a foreground to run, an information display interface is displayed through the first client, the information display interface comprises prompt information, the prompt information is sent to the first client after the vulnerability management platform receives the video clips and the log information, and the prompt information is used for prompting program vulnerabilities in the program running process of the second client;
receiving a viewing request triggered on the prompt information displayed by the first client, wherein the viewing request is used for requesting to view the video segment and the log information of the program loophole of the second client corresponding to the prompt information;
and displaying a loophole viewing interface through the first client, wherein the loophole viewing interface comprises a video playing control and log information, the video playing control is provided with a playing address of the video clip corresponding to the prompt information, the video playing control is used for playing the video clip, and the video clip and the log information are obtained from the loophole management platform.
2. The method of claim 1, wherein the video playback control is further configured to play the video clip in a floating window.
3. A program bug reporting apparatus, the apparatus comprising:
the running module is used for running the first client, setting the first client in a background running mode, running the second client, setting the second client in a foreground running mode, monitoring the program running of the second client through the first client, and recording a user interface when the second client runs;
the acquiring module is used for responding to the program process termination of the second client, sending a query request to a log management platform through the first client, wherein the query request is used for requesting the log management platform to query whether log information corresponding to the second client at a first moment exists in a program crash log or whether log information corresponding to the second client at the first moment exists in a cached program crash log through the first client, and the first moment refers to the moment when the first client monitors the program vulnerability; if the log information corresponding to the second client is queried in the program crash log, the program bug appears in the running process of the second client, and the program process of the second client which is not realized by artificial control is terminated;
The acquiring module is used for responding to the query result returned by the log management platform to be that the log information exists in the program crash log, or responding to the query result obtained by the first client from the cached program crash log to be that the log information exists in the program crash log, and calculating the starting time and the ending time of a first time period through the first client; the starting time is a time which is a first time from the first time and is located before the first time, the ending time is a time which is a second time from the first time and is located after the first time, and the first time is the same as or different from the second time;
the acquisition module is used for intercepting video clips recorded in the first time period at the first moment through a software development kit for video cutting implanted in the first client, and acquiring log information corresponding to the first moment from the program crash log;
the report module is used for reporting the video clips and the log information to a vulnerability management platform through an interaction control implanted in the first client, the interaction control is used for realizing information interaction between the first client and the vulnerability management platform, the vulnerability management platform is used for providing the video clips and the log information so as to accurately position the program vulnerability, the vulnerability management platform is also used for correspondingly generating a bill of lading for the video clips and the log information, and the bill of lading is used for displaying the video clips and the log information when being extracted;
The system comprises a first client, a log management platform, a sending module and a second client, wherein the first client is used for receiving a video recording video of a user interface, the sending module is used for sending the video recording video obtained by recording the user interface to the log management platform in real time through a software development kit for cloud live broadcasting implanted in the first client, the log management platform is used for distributing a uniform resource locator for the video recording video, and when the uniform resource locator is requested, the video recording video is live-broadcast in real time on the other terminal running the first client;
the display module is used for placing the first client in a foreground for running, displaying an information display interface through the first client, wherein the information display interface comprises prompt information, the prompt information is sent to the first client by the vulnerability management platform after receiving the video clips and the log information, and the prompt information is used for prompting program vulnerabilities in the program running process of the second client;
the receiving module is used for receiving a viewing request triggered on the prompt information displayed by the first client, wherein the viewing request is used for requesting to view the video clip and the log information of the program loophole of the second client corresponding to the prompt information;
The display module is configured to display a vulnerability viewing interface through the first client, where the vulnerability viewing interface includes a video playing control and the log information, the video playing control is provided with a playing address of the video clip corresponding to the prompt information, the video playing control is configured to play the video clip, and the video clip and the log information are obtained from the vulnerability management platform.
4. A terminal, the terminal comprising:
a memory;
a processor coupled to the memory;
wherein the processor is configured to load and execute executable instructions to implement the method for reporting program vulnerabilities as recited in claim 1 or 2.
5. A computer-readable storage medium, wherein the computer-readable storage medium has at least one program stored therein; the at least one section of program is loaded and executed by a processor to implement the method for reporting program vulnerabilities as claimed in claim 1 or 2.
CN202010363344.4A 2020-04-30 2020-04-30 Program bug reporting method, device, equipment and storage medium Active CN113591090B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010363344.4A CN113591090B (en) 2020-04-30 2020-04-30 Program bug reporting method, device, equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010363344.4A CN113591090B (en) 2020-04-30 2020-04-30 Program bug reporting method, device, equipment and storage medium

Publications (2)

Publication Number Publication Date
CN113591090A CN113591090A (en) 2021-11-02
CN113591090B true CN113591090B (en) 2024-01-09

Family

ID=78237196

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010363344.4A Active CN113591090B (en) 2020-04-30 2020-04-30 Program bug reporting method, device, equipment and storage medium

Country Status (1)

Country Link
CN (1) CN113591090B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117556414A (en) * 2024-01-11 2024-02-13 邯郸鉴晨网络科技有限公司 Cloud computing-based software management method and system

Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007279991A (en) * 2006-04-05 2007-10-25 It System Corp Log management program and recording medium
EP2629512A1 (en) * 2012-02-14 2013-08-21 Alcatel Lucent Method and arrangement for generating and updating A composed video conversation
CN104077210A (en) * 2014-06-06 2014-10-01 百度在线网络技术(北京)有限公司 Positioning method and system of crashed client
WO2017166509A1 (en) * 2016-03-28 2017-10-05 乐视控股(北京)有限公司 Video playback control method and device
WO2017219589A1 (en) * 2016-06-19 2017-12-28 乐视控股(北京)有限公司 Method and system for processing program crash message
CN107643968A (en) * 2016-07-20 2018-01-30 平安科技(深圳)有限公司 Crash log processing method and processing device
CN107682734A (en) * 2017-10-20 2018-02-09 国信嘉宁数据技术有限公司 The evidence collecting method and relevant apparatus and readable storage medium storing program for executing of a kind of electronic evidence
CN108170609A (en) * 2018-01-11 2018-06-15 五八有限公司 Localization method, device, computer equipment and the readable storage medium storing program for executing of program bug
CN109086606A (en) * 2018-07-16 2018-12-25 腾讯科技(深圳)有限公司 A kind of program bug method for digging, device, terminal and storage medium
CN109462695A (en) * 2018-11-16 2019-03-12 努比亚技术有限公司 Terminal record screen method, apparatus, mobile terminal and readable storage medium storing program for executing
CN109977260A (en) * 2019-02-12 2019-07-05 深圳绿米联创科技有限公司 Video recording acquisition methods, device, system, electronic equipment and storage medium
CN109977027A (en) * 2019-04-04 2019-07-05 广州市百果园信息技术有限公司 A kind of method, apparatus of performance test, system, equipment and storage medium
CN110069403A (en) * 2019-03-21 2019-07-30 深圳壹账通智能科技有限公司 Position method and device, the storage medium, electronic device of crash event
CN110912948A (en) * 2018-09-14 2020-03-24 北京京东尚科信息技术有限公司 Method and device for reporting problems

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110022899A1 (en) * 2009-07-27 2011-01-27 Vitali Greenberg Producing or executing a script for an operation test of a terminal server
JP5516292B2 (en) * 2010-09-30 2014-06-11 富士通株式会社 End log acquisition program, end log acquisition device, and end log acquisition method
US11055416B2 (en) * 2017-10-24 2021-07-06 Micro Focus Llc Detecting vulnerabilities in applications during execution

Patent Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007279991A (en) * 2006-04-05 2007-10-25 It System Corp Log management program and recording medium
EP2629512A1 (en) * 2012-02-14 2013-08-21 Alcatel Lucent Method and arrangement for generating and updating A composed video conversation
CN104077210A (en) * 2014-06-06 2014-10-01 百度在线网络技术(北京)有限公司 Positioning method and system of crashed client
WO2017166509A1 (en) * 2016-03-28 2017-10-05 乐视控股(北京)有限公司 Video playback control method and device
WO2017219589A1 (en) * 2016-06-19 2017-12-28 乐视控股(北京)有限公司 Method and system for processing program crash message
CN107643968A (en) * 2016-07-20 2018-01-30 平安科技(深圳)有限公司 Crash log processing method and processing device
CN107682734A (en) * 2017-10-20 2018-02-09 国信嘉宁数据技术有限公司 The evidence collecting method and relevant apparatus and readable storage medium storing program for executing of a kind of electronic evidence
CN108170609A (en) * 2018-01-11 2018-06-15 五八有限公司 Localization method, device, computer equipment and the readable storage medium storing program for executing of program bug
CN109086606A (en) * 2018-07-16 2018-12-25 腾讯科技(深圳)有限公司 A kind of program bug method for digging, device, terminal and storage medium
CN110912948A (en) * 2018-09-14 2020-03-24 北京京东尚科信息技术有限公司 Method and device for reporting problems
CN109462695A (en) * 2018-11-16 2019-03-12 努比亚技术有限公司 Terminal record screen method, apparatus, mobile terminal and readable storage medium storing program for executing
CN109977260A (en) * 2019-02-12 2019-07-05 深圳绿米联创科技有限公司 Video recording acquisition methods, device, system, electronic equipment and storage medium
CN110069403A (en) * 2019-03-21 2019-07-30 深圳壹账通智能科技有限公司 Position method and device, the storage medium, electronic device of crash event
CN109977027A (en) * 2019-04-04 2019-07-05 广州市百果园信息技术有限公司 A kind of method, apparatus of performance test, system, equipment and storage medium

Also Published As

Publication number Publication date
CN113591090A (en) 2021-11-02

Similar Documents

Publication Publication Date Title
CN110674022B (en) Behavior data acquisition method and device and storage medium
CN110278464B (en) Method and device for displaying list
CN111490996B (en) Network attack processing method and device, computer equipment and storage medium
CN111338910B (en) Log data processing method, log data display method, log data processing device, log data display device, log data processing equipment and log data storage medium
CN110224870B (en) Interface monitoring method and device, computing equipment and storage medium
CN108831513B (en) Method, terminal, server and system for recording audio data
CN113204298A (en) Method and device for displaying release progress, electronic equipment and storage medium
CN111290896A (en) Server pressure testing method, device, equipment and medium
CN111177013A (en) Log data acquisition method and device, computer equipment and storage medium
CN111210280A (en) Content item conversion tracking method, device, terminal, server and medium
CN113377647B (en) Page processing method, device, server, terminal and readable storage medium
CN110825465B (en) Log data processing method and device, electronic equipment and storage medium
CN113591090B (en) Program bug reporting method, device, equipment and storage medium
CN110134902B (en) Data information generating method, device and storage medium
CN111258683A (en) Detection method, detection device, computer equipment and storage medium
CN110597840A (en) Partner relationship establishing method, device, equipment and storage medium based on block chain
CN114816600B (en) Session message display method, device, terminal and storage medium
CN110971692B (en) Method and device for opening service and computer storage medium
CN114900559A (en) Management system, terminal, management method, and storage medium
CN111131619B (en) Account switching processing method, device and system
CN110944214B (en) Method, device, equipment, system and storage medium for intercepting high-tide video segments of songs
CN113051494A (en) Information display method and device, electronic equipment and storage medium
CN112231666A (en) Illegal account processing method, device, terminal, server and storage medium
CN112732282A (en) Installation package downloading method and device
CN112000576A (en) Code data detection method, device, equipment and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant