CN110471787A - Problem catching method, system, device, electronic equipment and storage medium on line - Google Patents

Problem catching method, system, device, electronic equipment and storage medium on line Download PDF

Info

Publication number
CN110471787A
CN110471787A CN201910777921.1A CN201910777921A CN110471787A CN 110471787 A CN110471787 A CN 110471787A CN 201910777921 A CN201910777921 A CN 201910777921A CN 110471787 A CN110471787 A CN 110471787A
Authority
CN
China
Prior art keywords
capture
target
preset
input information
user
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.)
Pending
Application number
CN201910777921.1A
Other languages
Chinese (zh)
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.)
Industrial and Commercial Bank of China Ltd ICBC
Original Assignee
Industrial and Commercial Bank of China Ltd ICBC
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 Industrial and Commercial Bank of China Ltd ICBC filed Critical Industrial and Commercial Bank of China Ltd ICBC
Priority to CN201910777921.1A priority Critical patent/CN110471787A/en
Publication of CN110471787A publication Critical patent/CN110471787A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0712Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a virtual computing platform, e.g. logically partitioned systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0727Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a storage system, e.g. in a DASD or network based storage system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/079Root cause analysis, i.e. error or fault diagnosis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45591Monitoring or debugging support

Abstract

This specification embodiment provides problem catching method, system, device, electronic equipment and storage medium on a kind of line.The described method includes: receiving the input information of user, and according to the input information searching target process;Preset bytecode is injected in the corresponding target JAVA virtual machine of the target process;Capture request is received, and is requested according to the capture, the preset byte Code acquisition target data is executed;Return to the target data of the capture.This method can realize problem diagnosis on line in the non-stop-machine situation of system, rapidly and efficiently orientation problem, ensure that production run is stablized.

Description

Problem catching method, system, device, electronic equipment and storage medium on line
Technical field
This specification embodiment is related to field of computer technology, in particular to problem catching method, system, dress on a kind of line It sets, electronic equipment and storage medium.
Background technique
With the fast development of cloud computing technology, the application of distributed type assemblies is received more and more attention, in a distributed manner For storage system, distributed memory system uses expansible system structure, shares storage load using multiple servers, no But the reliability, availability and storage efficiency of system are improved, and is easy to extend.For distributed memory system distributed For cluster, the stability and reliability of cluster are most important.
Distributed type assemblies hundreds and thousands of a nodes easily, once a certain link breaks down or performance bottleneck, traditional O&M Mode generally requires that system-down is checked log on more machines repeatedly, is often required to across multiple the investigation of simple problem Platform and team diagnose more difficult, to need cost very big between research and development and test ditch for being difficult to the problem of reappearing on line Logical cost, it is very low that problem checks efficiency.
Summary of the invention
The purpose of this specification embodiment is to provide problem catching method, system, device, electronic equipment on a kind of line and deposits Storage media, to realize problem diagnosis on line in the non-stop-machine situation of system, rapidly and efficiently orientation problem, ensures that production run is steady It is fixed.
To solve the above problems, this specification embodiment provides problem catching method, system, device, electronics on a kind of line What equipment and storage medium were realized in.
Problem catching method on a kind of line, which comprises receive the input information of user, and believed according to the input Breath searches target process;Preset bytecode is injected in the corresponding target JAVA virtual machine of the target process;Receive capture Request, and requested according to the capture, execute the preset byte Code acquisition target data;Return to the number of targets of the capture According to.
Problem capture systems on a kind of line, the system comprises interactive devices and acquisition equipment;The interactive device is used for Input information, the capture request of user are received, and the input information of the user, capture request are issued to the capture and filled It sets, and receives the data that the acquisition equipment returns;The acquisition equipment is used for the input information searching target according to user Process;Preset bytecode is injected in the corresponding target JAVA virtual machine of the target process;It is requested according to capture, executes institute State preset byte Code acquisition target data;The target data of the capture is returned to interactive device.
Problem acquisition equipment on a kind of line, described device includes: searching module, for receiving the input information of user, and According to the input information searching target process;Injection module, in the corresponding target JAVA virtual machine of the target process The middle preset bytecode of injection;Execution module is requested for receiving capture request, and according to the capture, is executed described default Byte Code acquisition target data;Return module, for returning to the target data of the capture.
A kind of electronic equipment, comprising: network communication unit, for receiving input information, the capture request of user;Processing Device, for the input information searching target process according to user;It is infused in the corresponding target JAVA virtual machine of the target process Enter preset bytecode;It is requested according to capture, executes the preset byte Code acquisition target data;Return to the mesh of the capture Mark data.
A kind of computer readable storage medium is stored thereon with computer program instructions, the computer program instructions quilt It is realized when execution: receiving the input information of user, and according to the input information searching target process;In the target process pair Preset bytecode is injected in the target JAVA virtual machine answered;Capture request is received, and is requested according to the capture, described in execution Preset byte Code acquisition target data;Return to the target data of the capture.
The technical solution provided by above this specification embodiment is as it can be seen that problem is caught on the line that this specification embodiment provides Method is obtained, can receive the input information of user, and according to the input information searching target process;In the target process pair Preset bytecode is injected in the target JAVA virtual machine answered;Capture request is received, and is requested according to the capture, described in execution Preset byte Code acquisition target data;Return to the target data of the capture.The method that this specification embodiment provides can be with Online capture ability in real time is provided, is not interrupting current JAVA virtual machine, i.e., problem of implementation is caught in the non-stop-machine situation of system It obtains, solves the pain spot of offline case study mode inefficiency, the node to go wrong is enabled directly to carry out on-line debugging, side Just using team, rapidly and efficiently orientation problem, Upgrade Problem check efficiency, ensure that production run is stablized.
Detailed description of the invention
In order to illustrate more clearly of this specification embodiment or technical solution in the prior art, below will to embodiment or Attached drawing needed to be used in the description of the prior art is briefly described, it should be apparent that, the accompanying drawings in the following description is only The some embodiments recorded in this specification, for those of ordinary skill in the art, before not making the creative labor It puts, is also possible to obtain other drawings based on these drawings.
Fig. 1 is problem capture systems schematic diagram on a kind of line of this specification embodiment;
Fig. 2 is the flow chart of problem catching method on a kind of line of this specification embodiment;
Fig. 3 is the functional module map flow chart of problem acquisition equipment on a kind of line of this specification embodiment;
Fig. 4 is the configuration diagram of this specification embodiment a kind of electronic equipment.
Specific embodiment
Below in conjunction with the attached drawing in this specification embodiment, the technical solution in this specification embodiment is carried out clear Chu is fully described by, it is clear that described embodiment is only this specification a part of the embodiment, rather than whole implementation Example.The embodiment of base in this manual, those of ordinary skill in the art are obtained without making creative work Every other embodiment, all should belong to this specification protection range.
Referring to Fig. 1, this specification embodiment provides problem capture systems 100 on a kind of line.Problem captures on the line System 100 includes interactive device 110 and acquisition equipment 120.
In the hundreds and thousands of a nodes of distributed type assemblies, once a certain link breaks down or performance bottleneck, user can be with The IP address of server is determined according to the node of failure or performance bottleneck, and in certain processes in the server Method and class captured, and the reason of going wrong, is determined according to the execution of these methods.
The front end of problem capture systems 100 on the line is arranged in the interactive device 110, for being received by the interface UI The input information of user, capture request, and the input information of the user, capture request are issued to acquisition equipment 120, and The capture result that acquisition equipment 120 returns is fed back into user.Wherein, the input information may include destination server IP Location, target process keyword;The capture request includes the class name and method name that user to be captured.
The interactive device 110 can be a server;Alternatively, can also be the server set for including multiple servers Group.The interactive device 110 may include receiving unit and issuance unit.Institute's receiving unit is used to receive the input letter of user Breath, capture request, the input information may include destination server IP address, target process keyword, the capture request It may include the class name and method name that user to be captured;The issuing unit is used to ask the input information of the user, capture It asks and is issued to acquisition equipment 120, and the capture result that acquisition equipment 120 returns is fed back into user.
The acquisition equipment 120 is used for the input information searching target process according to user, and in the target process pair Preset bytecode is injected in the target JAVA virtual machine answered, is requested further according to capture, the preset byte Code acquisition is executed Target data, and the target data of the capture is returned to interactive device 110.
In the present embodiment, the bytecode is commonly referred to as having already passed through compiling, but unrelated with specific machine code, needs The intermediate code of machine code could be become after wanting Command Interpreter to translate, bytecode can allow people to read usually unlike source code, and It is the sequence of the compositions such as numeric constant, reference, instruction after coding, bytecode is realized mainly for realizing specific software operation Mode be by compiler and virtual machine, source code is compiled into bytecode by compiler, and virtual machine on particular platform will Bytecode translates to the instruction that can directly execute.Wherein, the typical case of bytecode is Java language, and Java bytecode is usual It is the .classes file obtained after Java code compiles, can be correctly executed by Java Virtual Machine.It is wherein described preset Bytecode can be used for being requested according to capture, capture target data.
In the present embodiment, Java Virtual Machine is a kind of for calculating the specification of equipment, it is one and fabricates out Computer, be by actual computer analogue simulation various computer functions realize.Java Virtual Machine usually wraps It is virtual to include a set of byte code instruction collection, one group of register, a stack, a garbage reclamation heap and a storage method domain, Java Machine shields information relevant to specific operating system platform, makes java applet that need to only generate the word run on a java virtual machine Save code, so that it may run in kinds of platform, bytecode actually or is construed to by Java Virtual Machine when executing bytecode Machine instruction on platform specific executes.
The acquisition equipment 120 can be a server;Alternatively, can also be the server set for including multiple servers Group.The acquisition equipment 120 may include start unit and capturing unit.The start unit is used for the pass inputted according to user Key word searches target process, and injects preset bytecode in the corresponding target JAVA virtual machine of the target process;It is described Capturing unit is used to be requested according to capture, executes the preset byte Code acquisition target data, and return to the mesh of the capture Data are marked to interactive device 110.Wherein, the target data may include method name, class name, execute time-consuming, input ginseng it is defeated, different The information such as normal storehouse, return value.
In some embodiments, the target Java Virtual Machine can be determined according to the target process, obtaining target In Software Development Kit (JDK) lib catalogue tools.jar after process, such as by calling Java language The attach method of VirtualMachine class, the Java Virtual Machine where when crawl target process is run, obtains target Java Virtual machine object;It is based on byte code enhancement technology again, preset bytecode is injected in the target Java Virtual Machine, executes institute Preset bytecode is stated, capture target data can be requested according to the capture.
Above-mentioned byte code enhancement technology refers to modifying to it after Java bytecode generates, enhancing its function, This mode, which is equivalent to, modifies to the binary file of application program, and the application scenarios that Java bytecode enhances technology are main It is to reduce redundant code, the realization details of bottom is shielded to developer.Byte code enhancement technology usually can there are two types of realize Mechanism: one is a subclasses by creation primitive class;Another kind is the mode of very violence, directly goes to modify originally Class bytecode.
Realize that byte code enhancement technology can be realized by following two steps.
Step 1: getting original bytecode in memory, then pass through some other API (such as ASM, Javaasist) It modifies its byte array, obtains a new byte array;
Step 2: this new byte array being write into the region PermGen, that is, loads it or replaces original Class Bytecode, bytecode enhancing can also be transferred in process with completion.
In some embodiments, the capturing unit can be refused when executing the preset byte Code acquisition target data Capture request duplicate absolutely just continues to next capture after waiting the capture being carrying out request to return to capture result Request.
In some embodiments, the capturing unit is when executing the preset byte Code acquisition target data, can be with Judge whether the duration for executing the preset byte Code acquisition target data is more than preset threshold, if it is, returning Capture time-out terminates capture operation.
In some embodiments, problem capture systems 100 further include gateway apparatus 130 on the line.The gateway apparatus The capture ability of acquisition equipment 120 for the communication in problem capture systems 100 on unified agent line, is packaged into API and connect by 130 Confession other systems are called.The gateway apparatus 130 may include communication unit, message converting unit and con current control unit, The communication unit such as receives the defeated of the user that interactive device 110 issues for docking interactive device 110 and acquisition equipment 120 Enter information, capture request, receive acquisition equipment 120 and return to the target data of the capture, it is simple for, the communication unit The capture ability of acquisition equipment 120 can be packaged into api interface to call to interaction end;The message converting unit will be for that will hand over The input information of the received user of mutual device 110, capture are requested and the capture result of the return of acquisition equipment 120 is read out, group Dress, cutting etc., finally convert the data into structural data (such as JSON format) and are returned by REST interface.The con current control Unit is used to, since server connection resource is limited, need in gateway apparatus 130 when more people occur while being captured online Middle offer con current control function, to prevent locking system overload.Wherein, the con current control function, which refers to work as, has multiple threads operating When, if only one CPU of system, it will not carry out more than one thread simultaneously, it can only divide CPU runing time At several periods, then each thread will be distributed to the period and executed, it is other in the thread code operation of a period Thread, which is in, hangs up shape.
In some embodiments, problem capture systems 100 further include audit device 140 on the line.The audit device 140 for auditing for the sensitive operation of user's operation especially production environment, to the daily access situation of user, carries out not With the statistics of dimension.The audit device 140 may include auditable unit, storage unit and display unit 43, the record Member is for recording the access information of user, comprising: who, when, done what operation etc., as the ID of user, capture request, Capture request time, returns the result capture duration;Data of the storage unit for unified storage recording unit records, The storage and cleaning of data are realized by table subregion;The display unit is used to show that security audit is believed using visualization tool Breath, such as access inventory, amount of access trend, access details.
In some embodiments, problem capture systems 100 further include playback reproducer 150 on the line.The playback reproducer 150, for storing the target data that the acquisition equipment 120 captures, when receiving playback request, deposit described in return The target data of storage.Specifically, the playback reproducer 150 can deposit the target data that the acquisition equipment 120 captures Storage, and the target data that a unique ID tag this time captures is generated, want back further according to the playback request of user, such as input The corresponding ID of the target data put, the playback reproducer 150 can play back the target data of storage.Pass through playback reproducer 150 can make user when needing to capture identical information, without issuing capture request again through interactive device 110, directly Target data can be obtained by playback reproducer by inputting the ID.
Fig. 2 is the flow chart of problem catching method on a kind of line of this specification embodiment.Problem catching method on the line It can be applied to acquisition equipment, can specifically include following steps.
S210: the input information of user is received, and according to the input information searching target process.
In the hundreds and thousands of a nodes of distributed type assemblies, once a certain link breaks down or performance bottleneck, user can be with The IP address of server is determined according to the node of failure or performance bottleneck, and in certain processes in the server Method and class captured, and the reason of going wrong, is determined according to the execution of these methods.
In some embodiments, acquisition equipment can receive the input information for the user that interactive device issues, wherein described Interactive device can receive the input information of user by the interface UI.The input information may include destination server IP Location, target process keyword, for upper cloud application, the input information can also include container IP address.
In some embodiments, the destination server IP address or container IP address that can be inputted according to user determine target Server or target container, and target process is searched according to target process keyword.
In some embodiments, it is determined that, can be according to target process keyword after destination server or target container Target process is searched, using the process comprising the keyword as target process.
S220: preset bytecode is injected in the corresponding target JAVA virtual machine of the target process.
The bytecode is commonly referred to as having already passed through compiling, but unrelated with specific machine code, after needing Command Interpreter to translate The intermediate code of machine code could be become, bytecode can allow people to read usually unlike source code, but the numerical value after encoding The sequence of the compositions such as constant, reference, instruction, for bytecode mainly for realizing specific software operation, the mode of realization is to pass through volume Device and virtual machine are translated, source code is compiled into bytecode by compiler, and the virtual machine on particular platform translates to bytecode can With the instruction directly executed.Wherein, the typical case of bytecode is Java language, and Java bytecode is usually Java code compiling The .classes file obtained afterwards can correctly be executed by Java Virtual Machine.Wherein the preset bytecode can be used for It is requested according to capture, captures target data.
The Java Virtual Machine is a kind of for calculating the specification of equipment, and it is logical that it, which is one and fabricates the computer come out, On actual computer various computer functions of analogue simulation are crossed to realize.Java Virtual Machine generally includes a set of bytecode Instruction set, one group of register, a stack, a garbage reclamation heap and a storage method domain, Java Virtual Machine shield and have The relevant information of body operating system platform, makes java applet that need to only generate the bytecode run on a java virtual machine, so that it may It is run in kinds of platform, bytecode actually or is construed on platform specific by Java Virtual Machine when executing bytecode Machine instruction execute.
In some embodiments, the target Java Virtual Machine can be determined according to the target process, obtaining target In Software Development Kit (JDK) lib catalogue tools.jar after process, such as by calling Java language The attach method of VirtualMachine class, the Java Virtual Machine where when crawl target process is run, obtains target Java Virtual machine object;It is based on byte code enhancement technology again, preset bytecode is injected in the target Java Virtual Machine, executes institute Preset bytecode is stated, capture target data can be requested according to the capture.
Above-mentioned byte code enhancement technology refers to modifying to it after Java bytecode generates, enhancing its function, This mode, which is equivalent to, modifies to the binary file of application program, and the application scenarios that Java bytecode enhances technology are main It is to reduce redundant code, the realization details of bottom is shielded to developer.Byte code enhancement technology usually can there are two types of realize Mechanism: one is a subclasses by creation primitive class;Another kind is the mode of very violence, directly goes to modify originally Class bytecode.
Realize that byte code enhancement technology can be realized by following two steps.
Step 1: getting original bytecode in memory, then pass through some other API (such as ASM, Javaasist) It modifies its byte array, obtains a new byte array;
Step 2: this new byte array being write into the region PermGen, that is, loads it or replaces original Class Bytecode, bytecode enhancing can also be transferred in process with completion.
S230: capture request is received, and is requested according to the capture, the preset byte Code acquisition number of targets is executed According to.
In some embodiments, the acquisition equipment can receive capture request, wherein the capture request may include The class name and method name that user to be captured.For example, acquisition equipment can receive the capture request that interactive device issues, wherein institute The capture solicited message that user issues can be received by the interface UI by stating interactive device.
In some embodiments, the preset bytecode is executed, it can be according to the class name and method name in capture request It is captured, obtains target data.For example, the class name in the capture request will be included in the class and method that execute on line It is captured with the class and method of method name.Wherein, the target data may include method name, class name, execute time-consuming, input Join the information such as defeated, exception stack, return value.User can analyze the target data, so that it is determined that problem goes out on line Existing concrete reason.
In some embodiments, when executing the preset bytecode, duplicate capture request can be rejected, etc. After capture request wait be carrying out returns the result, next capture request is continued to execute.For example, if including in capture request Identical class name and method name can then determine that capture request repeats, and server can reject capture request, corresponding Unduplicated capture request just continues to execute next capture and asks after the capture being carrying out request can be waited to return the result It asks.
In some embodiments, when executing the preset bytecode, judge the execution preset bytecode Whether the duration for capturing target data is more than preset threshold, if it is, returning to capture time-out, terminates capture operation.Specifically, A capture duration can be set, if the duration for executing the preset byte Code acquisition target data is more than the duration, Capture time-out is returned, terminates capture operation, connection resource is avoided to exhaust.
S240: the target data of the capture is returned.
After capturing the target data, the target data can be back to interactive device, in order to which user is logical It crosses interactive device and obtains target data.
Problem catching method on the line that this specification embodiment provides, can receive the input information of user, and according to institute State input information searching target process;Preset bytecode is injected in the corresponding target JAVA virtual machine of the target process; Capture request is received, and is requested according to the capture, the preset byte Code acquisition target data is executed;Return to the capture Target data.The method that this specification embodiment provides can provide real-time online capture ability, current not interrupting Problem of implementation captures in the non-stop-machine situation of JAVA virtual machine, i.e. system, solves the pain of offline case study mode inefficiency Point enables the node to go wrong directly to carry out on-line debugging, facilitates using team's rapidly and efficiently orientation problem, Upgrade Problem Efficiency is checked, ensures that production run is stablized.
This specification embodiment additionally provides a kind of computer readable storage medium, is stored thereon with computer program and refers to It enables, the computer program instructions are performed realization: receiving the input information of user, and according to the input information searching mesh Mark process;Preset bytecode is injected in the corresponding target JAVA virtual machine of the target process;Receive capture request, and root It is requested according to the capture, executes the preset byte Code acquisition target data;Return to the target data of the capture.
In the present embodiment, above-mentioned storage medium includes but is not limited to random access memory (Random Access Memory, RAM), read-only memory (Read-Only Memory, ROM), caching (Cache), hard disk (Hard Disk Drive, HDD) or storage card (Memory Card).The memory can be used for storing the computer program and/or mould Block, the memory can mainly include storing program area and storage data area, wherein storing program area can storage program area, Application program needed at least one function (such as sound-playing function, text conversion function etc.) etc.;Storage data area can deposit Storage uses created data (such as audio data, text message data etc.) etc. according to user terminal.In addition, memory can It can also include nonvolatile memory to include high-speed random access memory.In the present embodiment, this is computer-readable The function and effect of the program instruction specific implementation of storage medium storage, can compare explanation, herein not with other embodiment It repeats again.
Referring to Fig. 3, on software view, this specification embodiment additionally provides problem acquisition equipment on a kind of line, should Device can specifically include construction module below.
Searching module 310, for receiving the input information of user, and according to the input information searching target process;
Injection module 320, for injecting preset bytecode in the corresponding target JAVA virtual machine of the target process;
Execution module 330 requests for receiving capture request, and according to the capture, executes the preset bytecode Capture target data;
Return module 340, for returning to the target data of the capture.
In some embodiments, described device further includes judgment module, for sentencing when executing the preset bytecode Whether the duration for executing the preset byte Code acquisition target data of breaking is more than preset threshold, is caught if it is, returning Time-out is obtained, capture operation is terminated.
The embodiment of the present application also provides a kind of electronic equipment, as shown in figure 4, may include following equipment.
Network communication unit 410, for receiving input information, the capture request of user;
Processor 420, for the input information searching target process according to user;In the corresponding target of the target process Preset bytecode is injected in JAVA virtual machine;It is requested according to capture, executes the preset byte Code acquisition target data;It returns Return the target data of the capture
The network communication unit is transmitted for information, order or status information can be transmitted to from one end channel The other end, information transmission mode may include wire transmission and wireless transmission, and wire transmission mode can by telephone wire or specially Network information transfer is carried out with cable, wireless transmission method can carry out network information transfer by radio station, wireless network etc..
The processor can be central processing unit (Central Processing Unit, CPU), can also be it His general processor, digital signal processor (Digital Signal Processor, DSP), specific integrated circuit (APPlication Specific Integrated Circuit, ASIC), ready-made programmable gate array (Field- Programmable Gate Array, FPGA) either other programmable logic device, discrete gate or transistor logic, Discrete hardware components etc..General processor can be microprocessor or the processor is also possible to any conventional processor Deng.
The electronic equipment that this specification embodiment provides can receive the input information of user, and be believed according to the input Breath searches target process;Preset bytecode is injected in the corresponding target JAVA virtual machine of the target process;Receive capture Request, and requested according to the capture, execute the preset byte Code acquisition target data;Return to the number of targets of the capture According to.The method that this specification embodiment provides can provide real-time online capture ability, not interrupt current JAVA virtual machine, Problem of implementation captures i.e. in the non-stop-machine situation of system, solves the pain spot of offline case study mode inefficiency, makes to obtain and ask The node of topic can directly carry out on-line debugging, facilitate using team's rapidly and efficiently orientation problem, and Upgrade Problem checks efficiency, protects Hinder production run to stablize.
It should be noted that all the embodiments in this specification are described in a progressive manner, each embodiment it Between the same or similar part may refer to each other, the highlights of each of the examples are it is different from other embodiments it Place.For Installation practice and apparatus embodiments, since it is substantially similar to the method embodiment, so description Fairly simple, the relevent part can refer to the partial explaination of embodiments of method.
Those skilled in the art may not need creative work and expect this specification after reading this specification file It some or all of enumerates embodiment and carries out any combination, these combinations are also in the range of this disclosure and protection.
In the 1990s, the improvement of a technology can be distinguished clearly be on hardware improvement (for example, Improvement to circuit structures such as diode, transistor, switches) or software on improvement (improvement for method flow).So And with the development of technology, the improvement of current many method flows can be considered as directly improving for hardware circuit. Designer nearly all obtains corresponding hardware circuit by the way that improved method flow to be programmed into hardware circuit.Cause This, it cannot be said that the improvement of a method flow cannot be realized with hardware entities module.For example, programmable logic device (Programmable Logic Device, PLD) (such as field programmable gate array (Field Programmable Gate Array, FPGA)) it is exactly such a integrated circuit, logic function determines device programming by user.By designer Voluntarily programming comes a digital display circuit " integrated " on a piece of PLD, designs and makes without asking chip maker Dedicated IC chip.Moreover, nowadays, substitution manually makes IC chip, this programming is also used instead mostly " is patrolled Volume compiler (logic compiler) " software realizes that software compiler used is similar when it writes with program development, And the source code before compiling also write by handy specific programming language, this is referred to as hardware description language (Hardware Description Language, HDL), and HDL is also not only a kind of, but there are many kind, such as ABEL (Advanced Boolean Expression Language)、AHDL(Altera Hardware Description Language)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL (Java Hardware DescriptionLanguage)、Lava、Lola、MyHDL、PALASM、RHDL(Ruby Hardware Description Language) etc., VHDL (Very-High-Speed Integrated is most generally used at present Circuit Hardware DescriptionLanguage) and Verilog2.Those skilled in the art also will be apparent to the skilled artisan that and only need Method flow slightly programming in logic and is programmed into integrated circuit with above-mentioned several hardware description languages, so that it may be easy to The hardware circuit of the accomplished logical method process.
System, device, module or the unit that above-described embodiment illustrates can specifically realize by computer chip or entity, Or it is realized by the product with certain function.It is a kind of typically to realize that equipment is computer.Specifically, computer for example may be used Think personal computer, laptop computer, cellular phone, camera phone, smart phone, personal digital assistant, media play It is any in device, navigation equipment, electronic mail equipment, game console, tablet computer, wearable device or these equipment The combination of equipment.
As seen through the above description of the embodiments, those skilled in the art can be understood that this specification It can realize by means of software and necessary general hardware platform.Based on this understanding, the technical solution of this specification Substantially the part that contributes to existing technology can be embodied in the form of software products in other words, the computer software Product can store in storage medium, such as ROM/RAM, magnetic disk, CD, including some instructions are used so that a computer Equipment (can be personal computer, server or the network equipment etc.) executes each embodiment of this specification or embodiment Certain parts described in method.
All the embodiments in this specification are described in a progressive manner, same and similar portion between each embodiment Dividing may refer to each other, and each embodiment focuses on the differences from other embodiments.Especially for system reality For applying example, since it is substantially similar to the method embodiment, so being described relatively simple, related place is referring to embodiment of the method Part explanation.
This specification can be used in numerous general or special purpose computing system environments or configuration.Such as: personal computer, Server computer, handheld device or portable device, laptop device, multicomputer system, microprocessor-based system, Set top box, programmable consumer-elcetronics devices, network PC, minicomputer, mainframe computer including any of the above system are set Standby distributed computing environment etc..
This specification can describe in the general context of computer-executable instructions executed by a computer, such as journey Sequence module.Generally, program module include routines performing specific tasks or implementing specific abstract data types, programs, objects, Component, data structure etc..This specification can also be practiced in a distributed computing environment, in these distributed computing environment In, by executing task by the connected remote processing devices of communication network.In a distributed computing environment, program module It can be located in the local and remote computer storage media including storage equipment.
Although depicting this specification by embodiment, it will be appreciated by the skilled addressee that there are many become for this specification Shape and the spirit changed without departing from this specification, it is desirable to which the attached claims include these deformations and change without departing from this The spirit of specification.

Claims (11)

1. problem catching method on a kind of line, which is characterized in that the described method includes:
The input information of user is received, and according to the input information searching target process;
Preset bytecode is injected in the corresponding target JAVA virtual machine of the target process;
Capture request is received, and the preset byte Code acquisition target data is executed according to capture request;
Return to the target data of the capture.
2. the method as described in claim 1, which is characterized in that described in the corresponding target JAVA virtual machine of the target process Injecting preset bytecode includes:
The target JAVA virtual machine is determined according to the target process;
Based on byte code enhancement technology, preset bytecode is injected in the target JAVA virtual machine.
3. the method as described in claim 1, which is characterized in that when executing the preset bytecode, rejection is repeated Capture request.
4. the method as described in claim 1, which is characterized in that when executing the preset bytecode, judge the execution Whether the duration of the preset byte Code acquisition target data is more than preset threshold, if it is, returning to capture time-out, is terminated Capture operation.
5. problem capture systems on a kind of line, which is characterized in that the system comprises interactive devices and acquisition equipment;
The interactive device is used to receive the input information of user, capture request, and the input information of the user, capture are asked It asks and is issued to the acquisition equipment, and receive the data that the acquisition equipment returns;
The acquisition equipment is used for the input information searching target process according to user;In the corresponding target of the target process Preset bytecode is injected in JAVA virtual machine;It is requested according to capture, executes the preset byte Code acquisition target data;It returns The target data of the capture is returned to interactive device.
6. system as claimed in claim 5, which is characterized in that the system also includes:
Playback reproducer, the target data for capturing the acquisition equipment stores, and when receiving playback request, returns The target data of the storage.
7. system as claimed in claim 5, which is characterized in that the system also includes:
Audit device, for recording the incoming event of user, the incoming event includes the ID of user, capture request, captures and ask Seeking time, at least one of returns the result capture duration.
8. problem acquisition equipment on a kind of line, which is characterized in that described device includes:
Searching module, for receiving the input information of user, and according to the input information searching target process;
Injection module, for injecting preset bytecode in the corresponding target JAVA virtual machine of the target process;
Execution module requests for receiving capture request, and according to the capture, executes the preset byte Code acquisition target Data;
Return module, for returning to the target data of the capture.
9. device according to claim 8, which is characterized in that described device further include:
Judgment module, for when executing the preset bytecode, judging the execution preset byte Code acquisition mesh Whether the duration for marking data is more than preset threshold, if it is, returning to capture time-out, terminates capture operation.
10. a kind of electronic equipment characterized by comprising
Network communication unit, for receiving input information, the capture request of user;
Processor, for the input information searching target process according to user;It is empty in the corresponding target JAVA of the target process Preset bytecode is injected in quasi- machine;It is requested according to capture, executes the preset byte Code acquisition target data;Described in return The target data of capture.
11. a kind of computer readable storage medium, is stored thereon with computer program instructions, the computer program instructions are held Row Shi Shixian: the input information of user is received, and according to the input information searching target process;It is corresponding in the target process Target JAVA virtual machine in inject preset bytecode;Capture request is received, and is requested according to the capture, is executed described pre- If byte Code acquisition target data;Return to the target data of the capture.
CN201910777921.1A 2019-08-22 2019-08-22 Problem catching method, system, device, electronic equipment and storage medium on line Pending CN110471787A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910777921.1A CN110471787A (en) 2019-08-22 2019-08-22 Problem catching method, system, device, electronic equipment and storage medium on line

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910777921.1A CN110471787A (en) 2019-08-22 2019-08-22 Problem catching method, system, device, electronic equipment and storage medium on line

Publications (1)

Publication Number Publication Date
CN110471787A true CN110471787A (en) 2019-11-19

Family

ID=68513476

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910777921.1A Pending CN110471787A (en) 2019-08-22 2019-08-22 Problem catching method, system, device, electronic equipment and storage medium on line

Country Status (1)

Country Link
CN (1) CN110471787A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111625225A (en) * 2020-05-28 2020-09-04 北京达佳互联信息技术有限公司 Program specified data output method and device
CN112860517A (en) * 2021-02-10 2021-05-28 中国工商银行股份有限公司 Performance diagnosis method, device and equipment based on distributed application
CN113067886A (en) * 2021-03-30 2021-07-02 深圳红途创程科技有限公司 Database three-layer correlation auditing method and device, computer equipment and storage medium
CN115629992A (en) * 2022-12-16 2023-01-20 云筑信息科技(成都)有限公司 Method for debugging application system constructed by using Spring technology stack
CN116701470A (en) * 2023-08-07 2023-09-05 舟谱数据技术南京有限公司 Method and device for reproducing customer problems under medium rack, electronic equipment and medium

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120246517A1 (en) * 2011-03-24 2012-09-27 Ibm Corporation Providing first field data capture in a virtual input/output server (vios) cluster environment with cluster-aware vioses
CN104346148A (en) * 2013-07-30 2015-02-11 阿里巴巴集团控股有限公司 Method, device and system for acquiring program performance consumption information
CN110083436A (en) * 2019-05-14 2019-08-02 上海理想信息产业(集团)有限公司 A kind of business datum real-time monitoring system and method based on Java bytecode enhancing technology

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120246517A1 (en) * 2011-03-24 2012-09-27 Ibm Corporation Providing first field data capture in a virtual input/output server (vios) cluster environment with cluster-aware vioses
CN104346148A (en) * 2013-07-30 2015-02-11 阿里巴巴集团控股有限公司 Method, device and system for acquiring program performance consumption information
CN110083436A (en) * 2019-05-14 2019-08-02 上海理想信息产业(集团)有限公司 A kind of business datum real-time monitoring system and method based on Java bytecode enhancing technology

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111625225A (en) * 2020-05-28 2020-09-04 北京达佳互联信息技术有限公司 Program specified data output method and device
CN112860517A (en) * 2021-02-10 2021-05-28 中国工商银行股份有限公司 Performance diagnosis method, device and equipment based on distributed application
CN113067886A (en) * 2021-03-30 2021-07-02 深圳红途创程科技有限公司 Database three-layer correlation auditing method and device, computer equipment and storage medium
CN115629992A (en) * 2022-12-16 2023-01-20 云筑信息科技(成都)有限公司 Method for debugging application system constructed by using Spring technology stack
CN116701470A (en) * 2023-08-07 2023-09-05 舟谱数据技术南京有限公司 Method and device for reproducing customer problems under medium rack, electronic equipment and medium
CN116701470B (en) * 2023-08-07 2023-10-13 舟谱数据技术南京有限公司 Method and device for reproducing customer problems under medium rack, electronic equipment and medium

Similar Documents

Publication Publication Date Title
CN110471787A (en) Problem catching method, system, device, electronic equipment and storage medium on line
US7975262B2 (en) Error tracing with context history
CN109062780B (en) Development method of automatic test case and terminal equipment
CN109034993A (en) Account checking method, equipment, system and computer readable storage medium
US9442822B2 (en) Providing a visual representation of a sub-set of a visual program
CN108459962A (en) Code specification detection method, device, terminal device and storage medium
CN110162512B (en) Log retrieval method, device and storage medium
CN103678135A (en) System and method for achieving cross-process and cross-thread debugging in large-data environment
CN108460068B (en) Method, device, storage medium and terminal for importing and exporting report
CN107066519A (en) A kind of task detection method and device
CN107203465A (en) System interface method of testing and device
CN104572448A (en) Method and device for realizing use condition of thread stack
CN113722020A (en) Interface calling method, device and computer readable storage medium
CN110888926A (en) Method and device for structuring medical text
CN102982217B (en) The treating method and apparatus of silk-screen
CN110381026A (en) A kind of the business service encapsulation and access system, method and apparatus of rich client
US20180359317A1 (en) System and method for non-intrusive context correlation across cloud services
CN111159040A (en) Test data generation method, device, equipment and storage medium
CN106201859A (en) A kind of regression testing method and system
CN110489248A (en) System-down method, service calling method, device and storage medium
CN112559525B (en) Data checking system, method, device and server
CN110442819A (en) Data processing method, device, storage medium and terminal
KR100717242B1 (en) Error management system providing debugging information and method using the same
Chen et al. Service encapsulation for middleware management interfaces
CN104778087B (en) A kind of information processing method and information processing unit

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20191119

RJ01 Rejection of invention patent application after publication