CN107220177B - Dynamic language remote debugging method and system - Google Patents

Dynamic language remote debugging method and system Download PDF

Info

Publication number
CN107220177B
CN107220177B CN201710379732.XA CN201710379732A CN107220177B CN 107220177 B CN107220177 B CN 107220177B CN 201710379732 A CN201710379732 A CN 201710379732A CN 107220177 B CN107220177 B CN 107220177B
Authority
CN
China
Prior art keywords
dynamic language
debugging
debugger
dynamic
controller
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
CN201710379732.XA
Other languages
Chinese (zh)
Other versions
CN107220177A (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.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent Technology 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 Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN201710379732.XA priority Critical patent/CN107220177B/en
Publication of CN107220177A publication Critical patent/CN107220177A/en
Application granted granted Critical
Publication of CN107220177B publication Critical patent/CN107220177B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3644Software debugging by instrumenting at runtime

Abstract

The invention discloses a dynamic language remote debugging method and a system, wherein the method comprises the following steps: after receiving the debugging request, the dynamic language debugging controller establishes interactive connection with the dynamic language debugger and controls the running action of the dynamic language debugger; the dynamic language debugging request monitoring server starts a dynamic language debugger and assists the dynamic language debugger to establish interactive connection with the dynamic language debugging controller; the dynamic language debugger debugs the dynamic language server program, controls the execution process of the debugged program, and obtains the process context of the debugged program sent by the dynamic language interpreter. The invention achieves the purpose of improving the development efficiency of large-scale engineering software by adopting dynamic language.

Description

Dynamic language remote debugging method and system
Technical Field
The invention relates to the technical field of dynamic languages, in particular to a dynamic language remote debugging method and system.
Background
For dynamic languages, a more uniform statement is: the structure of the program can be changed during the running process, new functions can be introduced, existing functions can be deleted, namely the structure of the program can be changed during the running process, the language which is directly interpreted and executed is called dynamic language, and the language which is required to be compiled and converted into other intermediate codes and then executed becomes static language. In recent years, with the continuous improvement of computer hardware performance, the processing speed is continuously increased, so that the dynamic language which cannot be used in a large scale in the past due to the performance is gradually the mainstream language of business development.
However, as the project scale is increased, debugging problems of the dynamic language are gradually revealed, and the problem becomes another factor affecting the engineering development of the dynamic language. Moreover, more dynamic languages exist in the server side for operation, engineering development needs an efficient graphical integrated development environment as a support, and a large number of systems on the server side are not provided with graphical user interfaces, so that research and development personnel need to perform source code development in a local development environment and submit the source code development to the server side for operation, and debugging also needs to be performed on the server side, so that the system development efficiency is greatly limited in the debugging and verifying process, and the current development requirements cannot be met.
Disclosure of Invention
In view of the above problems, the present invention provides a method and a system for remote debugging of a dynamic language, which achieve the purpose of improving the development efficiency of large-scale engineering software using a dynamic language.
In order to achieve the above object, according to a first aspect of the present invention, there is provided a dynamic language remote debugging method, which is applied to a dynamic language remote debugging system, the system including a dynamic language debugging request monitoring server, a dynamic language debugger, and a dynamic language interpreter, which are arranged at a server side, and a dynamic language debugging controller, which is arranged at a local development side, the dynamic language remote debugging method including:
after the dynamic language debugging controller receives a debugging request, the dynamic language debugging controller establishes interactive connection with the dynamic language debugger through the dynamic language debugging request monitoring server and controls the running action of the dynamic language debugger;
the dynamic language debugging request monitoring server monitors the dynamic language debugging controller, starts the dynamic language debugger and assists the dynamic language debugger to establish interactive connection with the dynamic language debugging controller;
the dynamic language debugger debugs a dynamic language server program, establishes interactive connection with the dynamic language interpreter, controls the execution process of the debugged program and acquires the process context of the debugged program;
and the dynamic language interpreter analyzes the execution process of the debugging process of the debuggee program and sends the process context of the debuggee program to the dynamic language debugger.
Preferably, after receiving the debugging request, the dynamic language debugging controller establishes an interactive connection with the dynamic language debugger through the dynamic language debugging request monitoring server, and controls an operation action of the dynamic language debugger, including:
after receiving a debugging request, the dynamic language debugging controller establishes connection with the dynamic language debugging request monitoring server and sends an application instruction for applying for starting the dynamic language debugger to the dynamic language debugging request monitoring server;
when the dynamic language debugging request monitoring server receives an application instruction, and starts the dynamic language debugger, the dynamic language debugging controller establishes an interactive connection with the dynamic language debugger, and sends the debugging request to the dynamic language debugger to control the running action of the dynamic language debugger.
Preferably, the method further comprises:
and the dynamic language debugger controls and receives the running information obtained by the dynamic language debugging controller and displays the running information.
Preferably, the monitoring server for the dynamic language debugging request monitors the dynamic language debugging controller, starts the dynamic language debugger, and assists the dynamic language debugger to establish an interactive connection with the dynamic language debugging controller, including:
the dynamic language debugging request monitoring server receives a debugging request of the dynamic language debugging controller and starts the dynamic language debugger according to the request content of the debugging request;
and when the dynamic language debugger is successfully started, the dynamic language debugging request monitoring server assists the dynamic language debugger to establish interactive connection with the dynamic language debugging controller.
Preferably, after the dynamic language debugging request monitoring server assists the dynamic language debugger to establish an interactive connection with the dynamic language debugging controller, the method further includes:
and the dynamic language debugging request monitoring server waits for receiving a debugging request sent by the dynamic language debugging controller subsequently.
Preferably, the dynamic language debugger debugs a dynamic language server program, and controls an execution process of the debugged program by establishing an interactive connection with the dynamic language interpreter, before acquiring a process context of the debugged program, the method further includes:
the dynamic language debugger monitors the starting parameters transmitted by the server according to the dynamic language debugging request and starts the corresponding running process;
and monitoring the assistance processing of a server through the dynamic language debugging request, and establishing interactive connection with the dynamic language debugging controller.
Preferably, the debugging of the dynamic language server program by the dynamic language debugger, and establishing an interactive connection with the dynamic language interpreter, controlling the execution process of the debugged program, and acquiring the process context of the debugged program include:
after the dynamic language debugger is started, the dynamic language debugger establishes interactive connection with the dynamic language interpreter, receives a debugging control instruction of the dynamic language debugging controller and controls the execution process of the dynamic language interpreter interpretation process;
the dynamic language debugger obtains the running context of the dynamic language server program debugging processing process and controls the execution process of the dynamic language interpreter interpretation process.
According to a second aspect of the present invention, there is provided a dynamic language remote debugging system, comprising a dynamic language debugging request listening server, a dynamic language debugger and a dynamic language interpreter, which are arranged at a server side, and a dynamic language debugging controller, which is arranged at a local development side, wherein,
the dynamic language debugging controller is used for establishing interactive connection with the dynamic language debugger through the dynamic language debugging request monitoring server after receiving a debugging request and controlling the running action of the dynamic language debugger;
the dynamic language debugging request monitoring server is used for monitoring the dynamic language debugging controller, starting the dynamic language debugger and assisting the dynamic language debugger to establish interactive connection with the dynamic language debugging controller;
the dynamic language debugger is used for debugging a dynamic language server program, controlling the execution process of the debugged program by establishing interactive connection with the dynamic language interpreter, and acquiring the process context of the debugged program;
the dynamic language interpreter is used for analyzing the execution process of the debugging process of the debuggee program and sending the process context of the debuggee program to the dynamic language debugger.
Preferably, the dynamic language debugging controller includes: a set-up unit and a control unit, wherein,
the establishing unit is used for establishing connection with the dynamic language debugging request monitoring server after receiving a debugging request, and sending an application instruction for applying to start the dynamic language debugger to the dynamic language debugging request monitoring server;
and the control unit is used for establishing the interactive connection with the dynamic language debugger after the dynamic language debugger is started when the dynamic language debugging request monitoring server receives an application instruction, and sending the debugging request to the dynamic language debugger to control the running action of the dynamic language debugger.
Preferably, the dynamic language debugging controller further comprises a presentation unit, wherein,
the display unit is used for receiving the running information obtained by the dynamic language debugging controller and displaying the running information.
Preferably, the dynamic language debugging request listening server includes: an initiating unit and an assisting unit, wherein,
the starting unit is used for receiving the debugging request of the dynamic language debugging controller and starting the dynamic language debugger according to the request content of the debugging request;
and the assisting unit is used for assisting the dynamic language debugger to establish interactive connection with the dynamic language debugging controller after the dynamic language debugger is successfully started.
Preferably, the dynamic language debugging request listening server further comprises a waiting unit, wherein,
and the waiting unit is used for waiting to receive a debugging request sent by the dynamic language debugging controller subsequently.
Preferably, the dynamic language debugger includes: a start-up processing unit and a connection-establishing unit, wherein,
the starting processing unit is used for monitoring the starting parameters transmitted by the server according to the dynamic language debugging request and starting the corresponding running process;
and the connection establishing unit is used for establishing interactive connection with the dynamic language debugging controller through the assistance processing of the dynamic language debugging request monitoring server.
Preferably, the dynamic language debugger further includes: a receiving unit and an obtaining unit, wherein,
the receiving unit is used for establishing interactive connection with the dynamic language interpreter, receiving a debugging control instruction of the dynamic language debugging controller and controlling the execution process of the dynamic language interpreter interpretation process;
the acquiring unit is used for acquiring the running context of the dynamic language server program debugging processing process and controlling the execution process of the dynamic language interpreter interpretation process.
Compared with the prior art, the dynamic language debugging request monitoring server, the dynamic language debugger, the dynamic language interpreter and the dynamic language debugging controller are arranged at the server side, and the dynamic language debugging controller is arranged at the local development side; the dynamic language debugging request monitoring server monitors the dynamic language debugging controller, starts the dynamic language debugger and assists the dynamic language debugger to establish interactive connection with the dynamic language debugging controller; the dynamic language debugger debugs a dynamic language server program, establishes interactive connection with the dynamic language interpreter, controls the execution process of the debugged program and acquires the process context of the debugged program; and the dynamic language interpreter analyzes the execution process of the debugging process of the debuggee program and sends the process context of the debuggee program to the dynamic language debugger. The dynamic language debugger is operated to carry out remote debugging work on the dynamic language program of the server side through controlling the dynamic language debugger controller, and can be fused with a local integrated development environment, so that the development efficiency of large-scale engineering software adopting dynamic language is effectively improved.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, it is obvious that the drawings in the following description are only embodiments of the present invention, and for those skilled in the art, other drawings can be obtained according to the provided drawings without creative efforts.
Fig. 1 is a schematic flowchart of a dynamic language remote debugging method according to an embodiment of the present invention;
FIG. 2 is a flowchart illustrating an implementation procedure of the dynamic language debugging controller in step S11 shown in FIG. 1 according to an embodiment of the present invention;
FIG. 3 is a flowchart illustrating an execution process of the dynamic language debugging request snooping server in step S12 shown in FIG. 1 according to an embodiment of the present invention;
FIG. 4 is a flowchart illustrating an execution process of the dynamic language debugger in step S13 shown in FIG. 1 according to an embodiment of the present invention;
fig. 5 is a schematic structural diagram of a dynamic language remote debugging system according to a third embodiment of the present invention.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
The terms "first" and "second," and the like in the description and claims of the present invention and the above-described drawings are used for distinguishing between different objects and not for describing a particular order. Furthermore, the terms "comprising" and "having," as well as any variations thereof, are intended to cover non-exclusive inclusions. For example, a process, method, system, article, or apparatus that comprises a list of steps or elements is not set forth for a listed step or element but may include steps or elements not listed.
Example one
Referring to fig. 1, a schematic flow chart of a dynamic language remote debugging method according to an embodiment of the present invention is provided, where the method is applied to a dynamic language remote debugging system, the system includes a dynamic language debugging request monitoring server, a dynamic language debugger, and a dynamic language interpreter, which are arranged at a server side, and a dynamic language debugging controller, which is arranged at a local development side, and the method includes the following steps:
s11, after the dynamic language debugging controller receives the debugging request, the dynamic language debugging request monitoring server establishes interactive connection with the dynamic language debugger to control the running action of the dynamic language debugger;
s12, the dynamic language debugging request monitoring server monitors the dynamic language debugging controller, starts the dynamic language debugging controller and assists the dynamic language debugging controller to establish interactive connection with the dynamic language debugging controller;
s13, the dynamic language debugger debugs the dynamic language server program, and controls the execution process of the debugged program by establishing interactive connection with the dynamic language interpreter, and obtains the process context of the debugged program;
and S14, the dynamic language interpreter analyzes the execution process of the debugging process of the debuggee program and sends the process context of the debuggee program to the dynamic language debugger.
According to the technical scheme disclosed by the embodiment of the invention, when debugging is initiated, the dynamic language debugging controller is connected with the dynamic language debugging request monitoring server, the dynamic language debugging request monitoring server starts the dynamic language debugger according to the request content of the dynamic language debugging controller, after the dynamic language debugger is started, the dynamic language debugging controller is directly connected with the dynamic language debugger, the subsequent debugging process is directly interacted with the dynamic language debugger through the dynamic language debugging controller, and the dynamic language debugger is responsible for interacting with the dynamic language interpreter on the running environment, controlling the execution process of the dynamic language program and acquiring the context of the debugged process. The dynamic language debugging processing work of the server is divided into the dynamic language debugging request monitoring server and the dynamic language debugger, so that decoupling can be effectively realized, the specific implementation process is simplified, the stability of a remote debugging system can be effectively improved, and the development efficiency of large-scale engineering software adopting dynamic languages is effectively improved.
Example two
Referring to the first embodiment of the present invention and the specific process of steps S11 to S14 described in fig. 1, and referring to fig. 2 to fig. 4, step S11 is to establish an interactive connection with the dynamic language debugger through the dynamic language debugging request monitoring server after the dynamic language debugging controller receives a debugging request, and control the operation of the dynamic language debugger, which specifically includes the following steps:
s111, after receiving a debugging request, the dynamic language debugging controller establishes connection with a dynamic language debugging request monitoring server and sends an application instruction for applying for starting the dynamic language debugging to the dynamic language debugging request monitoring server;
specifically, the dynamic language debugging controller receives a debugging request started by a developer, and establishes a connection with the dynamic language debugging request monitoring server.
And S112, when the dynamic language debugging request monitoring server receives the application instruction and starts the dynamic language debugger, the dynamic language debugging controller establishes interactive connection with the dynamic language debugger and sends the debugging request to the dynamic language debugger to control the running action of the dynamic language debugger.
Correspondingly, the execution process of the dynamic language debugging controller further comprises the following steps:
and the dynamic language debugging controller receives the running information obtained by the dynamic language debugging controller and displays the running information.
Correspondingly, step S12, namely the dynamic language debugging request monitoring server monitors the dynamic language debugging controller, starts the dynamic language debugger, and assists the dynamic language debugger to establish an interactive connection with the dynamic language debugging controller, specifically includes the following steps:
s121, the dynamic language debugging request monitoring server receives a debugging request of the dynamic language debugging controller, and starts the dynamic language debugger according to the request content of the debugging request;
and S122, when the dynamic language debugger is started successfully, the dynamic language debugging request monitoring server assists the dynamic language debugger to establish interactive connection with the dynamic language debugging controller.
Specifically, the dynamic language debugger is continuously operated after being started, and waits for a connection request of the dynamic language debugging controller.
After the step S122, the dynamic language debugging request listening server assists the dynamic language debugger to establish an interactive connection with the dynamic language debugging controller, the method further includes:
and the dynamic language debugging request monitoring server waits for receiving a debugging request sent by the dynamic language debugging controller subsequently.
Correspondingly, before the step S13 is executed, that is, before the dynamic language debugger debugs the dynamic language server program, and establishes an interactive connection with the dynamic language interpreter, the method controls the execution process of the debuggee program, and obtains a process context of the debuggee program, the method further includes:
the dynamic language debugger monitors the starting parameters transmitted by the server according to the dynamic language debugging request and starts the corresponding running process;
and monitoring the assistance processing of a server through the dynamic language debugging request, and establishing interactive connection with the dynamic language debugging controller.
And the step S13 specifically includes the steps of:
s131, after the dynamic language debugger is started, the dynamic language debugger establishes interactive connection with the dynamic language interpreter, receives a debugging control instruction of the dynamic language debugging controller, and controls an execution process of an interpretation process of the dynamic language interpreter;
s132, the dynamic language debugger obtains the running context of the dynamic language server program debugging processing process, and controls the execution process of the dynamic language interpreter interpretation process.
According to the technical scheme disclosed by the second embodiment of the invention, the dynamic language debugging controller receives the debugging request of a developer, and the monitoring server starts the dynamic language debugger and establishes connection with the dynamic language debugger through the dynamic language debugging request so as to control the running action of the dynamic language debugger; monitoring a debugging request initiated by a dynamic language debugging controller by a dynamic language debugging request monitoring server, starting the dynamic language debugger, and assisting the dynamic language debugger to establish connection with the dynamic language debugging controller; the dynamic language debugger starts or associates the debugged process, controls the execution process of the debugged process through interaction with the dynamic language interpreter, obtains the context of the debugged process, obtains debugging control information through establishing connection with the dynamic language debugging controller, and returns the process context of the debugged process. The remote debugging method of the dynamic language is more reasonable and simpler to realize by reasonably dividing and distributing the debugging process, and the development efficiency of the dynamic language adopted by large-scale engineering software can be effectively improved by remotely debugging the dynamic language server program.
EXAMPLE III
Corresponding to the dynamic language remote debugging methods disclosed in the first and second embodiments of the present invention, a third embodiment of the present invention further provides a dynamic language remote debugging system, referring to fig. 5, where the system includes:
a dynamic language debugging request monitoring server 1, a dynamic language debugger 2 and a dynamic language interpreter 4 arranged at the server side, and a dynamic language debugging controller 3 arranged at the local development side, wherein,
the dynamic language debugging controller 3 is used for establishing interactive connection with the dynamic language debugger through the dynamic language debugging request monitoring server after receiving a debugging request, and controlling the running action of the dynamic language debugger;
the dynamic language debugging request monitoring server 1 is used for monitoring the dynamic language debugging controller, starting the dynamic language debugging controller and assisting the dynamic language debugging controller to establish interactive connection with the dynamic language debugging controller;
the dynamic language debugger 2 is used for debugging a dynamic language server program, controlling an execution process of the debugged program by establishing interactive connection with the dynamic language interpreter, and acquiring a process context of the debugged program;
the dynamic language interpreter 4 is configured to analyze an execution process of a debugging process of the debuggee program, and send a process context of the debuggee program to the dynamic language debugger.
Accordingly, the dynamic language debugging controller 3 includes: a set-up unit 31 and a control unit 32, wherein,
the establishing unit 31 is configured to establish a connection with the dynamic language debugging request monitoring server after receiving a debugging request, and send an application instruction for applying to start the dynamic language debugger to the dynamic language debugging request monitoring server;
and the control unit 32 is used for establishing the interactive connection with the dynamic language debugger after the dynamic language debugger is started when the dynamic language debugging request monitoring server receives an application instruction, and sending the debugging request to the dynamic language debugger to control the running action of the dynamic language debugger.
Specifically, the dynamic language debugging controller further includes a presentation unit 33, wherein,
the display unit 33 is configured to receive the operation information obtained by the dynamic language debugging controller, and display the operation information.
Correspondingly, the dynamic language debugging request monitoring server 1 includes: an activation unit 11 and a helper unit 12, wherein,
the starting unit 11 is configured to receive a debugging request of the dynamic language debugging controller, and start the dynamic language debugger according to a request content of the debugging request;
the assisting unit 12 is configured to assist the dynamic language debugger to establish an interactive connection with the dynamic language debugging controller after the dynamic language debugger is successfully started.
Specifically, the dynamic language debugging request listening server 1 further comprises a waiting unit 13, wherein,
the waiting unit 13 is configured to wait for receiving a debugging request subsequently issued by the dynamic language debugging controller.
Correspondingly, the dynamic language debugger 2 includes: a start-up processing unit 21 and a connection-establishing unit 22, wherein,
the starting processing unit 21 is configured to monitor a starting parameter transmitted by the server according to the dynamic language debugging request, and start a corresponding running process;
the connection establishing unit 22 is configured to establish an interactive connection with the dynamic language debugging controller through the assistance processing of the dynamic language debugging request monitoring server.
Correspondingly, the dynamic language debugger further comprises: a receiving unit 23 and an obtaining unit 24, wherein,
the receiving unit 23 is configured to establish an interactive connection with the dynamic language interpreter, receive a debugging control instruction of the dynamic language debugging controller, and control an execution process of an interpretation process of the dynamic language interpreter;
the obtaining unit 24 is configured to obtain an operation context of a dynamic language server program debugging process, and control an execution process of the dynamic language interpreter interpretation process.
In the third embodiment of the present invention, when a dynamic language debugging controller initiates debugging, the dynamic language debugging controller establishes connection with a dynamic language debugging request monitoring server, the dynamic language debugging request monitoring server starts a dynamic language debugger according to request contents of the dynamic language debugging controller, after the dynamic language debugger is started, the dynamic language debugging controller directly establishes connection with the dynamic language debugger, the dynamic language debugging controller directly interacts with the dynamic language debugger in a subsequent debugging process, and the dynamic language debugger is responsible for interacting with the dynamic language interpreter in an operating environment, controlling an execution process of a dynamic language program, and acquiring a context of a debugged process. The dynamic language debugging processing work of the server is divided into the dynamic language debugging request monitoring server and the dynamic language debugger, so that decoupling can be effectively realized, the specific implementation process is simplified, the stability of a remote debugging system can be effectively improved, and the development efficiency of large-scale engineering software adopting dynamic languages is effectively improved.
The embodiments in the present description are described in a progressive manner, each embodiment focuses on differences from other embodiments, and the same and similar parts among the embodiments are referred to each other. The device disclosed by the embodiment corresponds to the method disclosed by the embodiment, so that the description is simple, and the relevant points can be referred to the method part for description.
The previous description of the disclosed embodiments is provided to enable any person skilled in the art to make or use the present invention. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without departing from the spirit or scope of the invention. Thus, the present invention is not intended to be limited to the embodiments shown herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.

Claims (14)

1. A dynamic language remote debugging method is characterized in that the method is suitable for a dynamic language remote debugging system, the system comprises a dynamic language debugging request monitoring server, a dynamic language debugger and a dynamic language interpreter which are arranged at a server side, and a dynamic language debugging controller which is arranged at a local development side, and the dynamic language remote debugging method comprises the following steps:
after the dynamic language debugging controller receives a debugging request, the dynamic language debugging controller establishes interactive connection with the dynamic language debugger through the dynamic language debugging request monitoring server and controls the running action of the dynamic language debugger;
the dynamic language debugging request monitoring server monitors the dynamic language debugging controller, starts the dynamic language debugger and assists the dynamic language debugger to establish interactive connection with the dynamic language debugging controller;
the dynamic language debugger debugs a dynamic language server program, establishes interactive connection with the dynamic language interpreter, controls the execution process of the debugged program and acquires the process context of the debugged program;
and the dynamic language interpreter analyzes the execution process of the debugging process of the debuggee program and sends the process context of the debuggee program to the dynamic language debugger.
2. The method according to claim 1, wherein after receiving a debugging request, the dynamic language debugging controller establishes an interactive connection with the dynamic language debugger through the dynamic language debugging request listening server to control the operation of the dynamic language debugger, and the method includes:
after receiving a debugging request, the dynamic language debugging controller establishes connection with the dynamic language debugging request monitoring server and sends an application instruction for applying for starting the dynamic language debugger to the dynamic language debugging request monitoring server;
when the dynamic language debugging request monitoring server receives an application instruction, and starts the dynamic language debugger, the dynamic language debugging controller establishes an interactive connection with the dynamic language debugger, and sends the debugging request to the dynamic language debugger to control the running action of the dynamic language debugger.
3. The method of claim 2, further comprising:
and the dynamic language debugging controller receives the operation information and displays the operation information.
4. The method of claim 1, wherein the dynamic language debugging request monitoring server monitors the dynamic language debugging controller, starts the dynamic language debugger, and assists the dynamic language debugger in establishing an interactive connection with the dynamic language debugging controller, comprising:
the dynamic language debugging request monitoring server receives a debugging request of the dynamic language debugging controller and starts the dynamic language debugger according to the request content of the debugging request;
and when the dynamic language debugger is successfully started, the dynamic language debugging request monitoring server assists the dynamic language debugger to establish interactive connection with the dynamic language debugging controller.
5. The method of claim 4, wherein after the dynamic language debugging request listening server assists the dynamic language debugger in establishing an interactive connection with the dynamic language debugging controller, the method further comprises:
and the dynamic language debugging request monitoring server waits for receiving a debugging request sent by the dynamic language debugging controller subsequently.
6. The method according to claim 1, wherein the dynamic language debugger debugs the dynamic language server program and controls the execution process of the debuggee program by establishing an interactive connection with the dynamic language interpreter, and before acquiring the process context of the debuggee program, the method further comprises:
the dynamic language debugger monitors the starting parameters transmitted by the server according to the dynamic language debugging request and starts the corresponding running process;
and monitoring the assistance processing of a server through the dynamic language debugging request, and establishing interactive connection with the dynamic language debugging controller.
7. The method according to claim 1, wherein the dynamic language debugger debugs a dynamic language server program and controls an execution process of the debuggee program by establishing an interactive connection with the dynamic language interpreter, and obtains a process context of the debuggee program, including:
after the dynamic language debugger is started, the dynamic language debugger establishes interactive connection with the dynamic language interpreter, receives a debugging control instruction of the dynamic language debugging controller and controls the execution process of the dynamic language interpreter interpretation process;
the dynamic language debugger obtains the running context of the dynamic language server program debugging processing process and controls the execution process of the dynamic language interpreter interpretation process.
8. The dynamic language remote debugging system is characterized by comprising a dynamic language debugging request monitoring server, a dynamic language debugger, a dynamic language interpreter and a dynamic language debugging controller, wherein the dynamic language debugging request monitoring server, the dynamic language debugger and the dynamic language interpreter are arranged at a server side, the dynamic language debugging controller is arranged at a local development side, the dynamic language debugging controller is connected with the dynamic language debugging request monitoring server,
the dynamic language debugging controller is used for establishing interactive connection with the dynamic language debugger through the dynamic language debugging request monitoring server after receiving a debugging request and controlling the running action of the dynamic language debugger;
the dynamic language debugging request monitoring server is used for monitoring the dynamic language debugging controller, starting the dynamic language debugger and assisting the dynamic language debugger to establish interactive connection with the dynamic language debugging controller;
the dynamic language debugger is used for debugging a dynamic language server program, controlling the execution process of the debugged program by establishing interactive connection with the dynamic language interpreter, and acquiring the process context of the debugged program;
the dynamic language interpreter is used for analyzing the execution process of the debugging process of the debuggee program and sending the process context of the debuggee program to the dynamic language debugger.
9. The system of claim 8, wherein the dynamic language debugging controller comprises: a set-up unit and a control unit, wherein,
the establishing unit is used for establishing connection with the dynamic language debugging request monitoring server after receiving a debugging request, and sending an application instruction for applying to start the dynamic language debugger to the dynamic language debugging request monitoring server;
and the control unit is used for establishing the interactive connection with the dynamic language debugger after the dynamic language debugger is started when the dynamic language debugging request monitoring server receives an application instruction, and sending the debugging request to the dynamic language debugger to control the running action of the dynamic language debugger.
10. The system of claim 9, wherein the dynamic language debugging controller further comprises a presentation unit, wherein,
and the display unit is used for receiving the running information obtained by the dynamic language debugging controller and displaying the running information.
11. The system of claim 8, wherein the dynamic language debugging request listening server comprises: an initiating unit and an assisting unit, wherein,
the starting unit is used for receiving the debugging request of the dynamic language debugging controller and starting the dynamic language debugger according to the request content of the debugging request;
and the assisting unit is used for assisting the dynamic language debugger to establish interactive connection with the dynamic language debugging controller after the dynamic language debugger is successfully started.
12. The system of claim 11, wherein the dynamic language debugging request listening server further comprises a waiting unit, wherein,
and the waiting unit is used for waiting to receive a debugging request sent by the dynamic language debugging controller subsequently.
13. The system of claim 8, wherein the dynamic language debugger comprises: a start-up processing unit and a connection-establishing unit, wherein,
the starting processing unit is used for monitoring the starting parameters transmitted by the server according to the dynamic language debugging request and starting the corresponding running process;
and the connection establishing unit is used for establishing interactive connection with the dynamic language debugging controller through the assistance processing of the dynamic language debugging request monitoring server.
14. The system of claim 8, wherein the dynamic language debugger further comprises: a receiving unit and an obtaining unit, wherein,
the receiving unit is used for establishing interactive connection with the dynamic language interpreter, receiving a debugging control instruction of the dynamic language debugging controller and controlling the execution process of the dynamic language interpreter interpretation process;
the acquiring unit is used for acquiring the running context of the dynamic language server program debugging processing process and controlling the execution process of the dynamic language interpreter interpretation process.
CN201710379732.XA 2017-05-25 2017-05-25 Dynamic language remote debugging method and system Active CN107220177B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710379732.XA CN107220177B (en) 2017-05-25 2017-05-25 Dynamic language remote debugging method and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710379732.XA CN107220177B (en) 2017-05-25 2017-05-25 Dynamic language remote debugging method and system

Publications (2)

Publication Number Publication Date
CN107220177A CN107220177A (en) 2017-09-29
CN107220177B true CN107220177B (en) 2021-03-09

Family

ID=59944555

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710379732.XA Active CN107220177B (en) 2017-05-25 2017-05-25 Dynamic language remote debugging method and system

Country Status (1)

Country Link
CN (1) CN107220177B (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8069371B2 (en) * 2007-04-26 2011-11-29 Hewlett-Packard Development Company, L.P. Method and system for remotely debugging a hung or crashed computing system
CN102981957A (en) * 2012-11-30 2013-03-20 福建天晴数码有限公司 Virtual breakpoint script debugging method
CN103678135A (en) * 2013-12-25 2014-03-26 普元信息技术股份有限公司 System and method for achieving cross-process and cross-thread debugging in large-data environment

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5410681A (en) * 1991-11-20 1995-04-25 Apple Computer, Inc. Interpreter for performing remote testing of computer systems
CN101739333B (en) * 2008-11-25 2013-10-16 国际商业机器公司 Method, tool and device for debugging application program

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8069371B2 (en) * 2007-04-26 2011-11-29 Hewlett-Packard Development Company, L.P. Method and system for remotely debugging a hung or crashed computing system
CN102981957A (en) * 2012-11-30 2013-03-20 福建天晴数码有限公司 Virtual breakpoint script debugging method
CN103678135A (en) * 2013-12-25 2014-03-26 普元信息技术股份有限公司 System and method for achieving cross-process and cross-thread debugging in large-data environment

Also Published As

Publication number Publication date
CN107220177A (en) 2017-09-29

Similar Documents

Publication Publication Date Title
CN106997298B (en) Application resource acquisition method and device
TW201117095A (en) Electronic device capable of automatically setting up operating systems and related method and system
JP2009070371A (en) Client server system for performing analysis and performance adjustment of remote graphics device
CN110389834B (en) Method and device for submitting deep learning training task
EP2477116A1 (en) Method and system for debugging a job running on a legacy system
CN110781089B (en) Method and device for automatically testing UI of equipment, electronic equipment and medium
CN111866160B (en) Multi-machine control method, device, equipment and storage medium
CN107066600A (en) Automatic method, system, mobile terminal and the readable storage medium storing program for executing for skipping advertising page
CN108829591B (en) Web-based collaborative debugging system and method
CN111432033A (en) Application program downloading method, device and system, IOS equipment and medium
CN112491586A (en) Network device driving method, device, storage medium and computer device
US20120215883A1 (en) Document management apparatus and document management system
CN107220177B (en) Dynamic language remote debugging method and system
WO2016008256A1 (en) Method for terminal to update operating system, terminal and system
JP4048736B2 (en) Failure analysis support method and apparatus
US9917963B2 (en) Information processing device and information processing method
CN112866312A (en) Script generation method, remote operation method and related equipment
CN107967363B (en) Data processing method and device and electronic equipment
CN106598770B (en) Native layer exception reporting processing method and device in Android system
CN107193670B (en) Remote management method, device and system for cluster workstations
US9740503B2 (en) Centralized administration method for operating system of thin client and method thereof
CN114691486A (en) Program debugging method and device and computer equipment
CN108270803B (en) Method and system for realizing transmission of network file and desktop application through webpage technology
US9405658B1 (en) Method and apparatus for debugging applications in development environments
CN103593254A (en) Application snapshot service system and application snapshot generating method thereof

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
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20210203

Address after: Building 9, No.1, guanpu Road, Guoxiang street, Wuzhong Economic Development Zone, Wuzhong District, Suzhou City, Jiangsu Province

Applicant after: SUZHOU LANGCHAO INTELLIGENT TECHNOLOGY Co.,Ltd.

Address before: Room 1601, floor 16, 278 Xinyi Road, Zhengdong New District, Zhengzhou City, Henan Province

Applicant before: ZHENGZHOU YUNHAI INFORMATION TECHNOLOGY Co.,Ltd.

GR01 Patent grant
GR01 Patent grant