NON-INTRUSIVE GATHERING OF DIAGNOSTIC DATA USING ASYNCHRONOUS MECHANISMS
First Claim
1. A method for performing a diagnostic action in a monitored system, comprising:
- receiving indication of a condition from a first process or thread in the monitored system;
determining a diagnostic action to be performed responsive to the condition, the diagnostic action comprising gathering diagnostic data for the condition;
initiating a second process or thread; and
executing the determined diagnostic action in the second process or thread, wherein the first process or thread can continue processing without being delayed or interrupted by the execution of the diagnostic action in the second process or thread.
1 Assignment
0 Petitions
Accused Products
Abstract
Techniques for non-intrusive performance of diagnostic actions including actions that result in gathering of diagnostic data in response to a condition detected in a monitored system. In one embodiment, the diagnostic actions are performed asynchronously by processes or threads that are different from the failing process or thread that receives or detects the condition that triggers the diagnostic actions such that the failing process or thread can continue processing without being affected by the executions of the diagnostic actions. Multiple asynchronous processes or threads that are different from the failing process or thread may be spawned to perform multiple diagnostic actions in parallel. The asynchronous processes or threads may be monitored to ensure that they do not adversely impact the monitored system.
-
Citations
20 Claims
-
1. A method for performing a diagnostic action in a monitored system, comprising:
-
receiving indication of a condition from a first process or thread in the monitored system; determining a diagnostic action to be performed responsive to the condition, the diagnostic action comprising gathering diagnostic data for the condition; initiating a second process or thread; and executing the determined diagnostic action in the second process or thread, wherein the first process or thread can continue processing without being delayed or interrupted by the execution of the diagnostic action in the second process or thread. - View Dependent Claims (2, 3, 4, 9, 10, 11)
-
- 5. The method of 4 wherein at least one threshold from the one or more thresholds is related to one or more resources used by the second process or thread.
-
6. The method of 5 wherein the at least one threshold is related to an amount of time taken by the second process or thread, an amount of central processing unit (CPU) usage by the second process or thread, an amount of resources used by the second process, or a number of processes or threads executing in the monitored system.
-
12. A computer readable storage medium storing a plurality of instructions for controlling a processor to perform a diagnostic action in a monitored system, the plurality of instructions comprising:
-
instructions that cause the processor to receive indication of a condition from a first process or thread in the monitored system; instructions that cause the processor to determine a diagnostic action to be performed responsive to the condition, the diagnostic action comprising gathering diagnostic data for the condition; instructions that cause the processor to initiate a second process or thread; and instructions that cause the processor to execute the determined diagnostic action in the second process or thread, wherein the first process or thread can continue processing without being delayed or interrupted by the execution of the diagnostic action in the second process or thread. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19)
-
-
20. A system for performing a diagnostic action for a monitored system, the system comprising:
-
a memory; and a processor coupled to the memory; wherein the processor is configured to; receive indication of a condition from a first process or thread in the monitored system; determine a diagnostic action to be performed responsive to the condition, the diagnostic action comprising gathering diagnostic data for the condition; initiate a second process or thread; and execute the determined diagnostic action in the second process or thread, wherein the first process or thread can continue processing without being delayed or interrupted by the execution of the diagnostic action in the second process or thread.
-
Specification