System and method for software test analysis
US-2024419581-A1 · Dec 19, 2024 · US
US10067862B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10067862-B2 |
| Application number | US-201615362668-A |
| Country | US |
| Kind code | B2 |
| Filing date | Nov 28, 2016 |
| Priority date | Oct 31, 2014 |
| Publication date | Sep 4, 2018 |
| Grant date | Sep 4, 2018 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Asynchronous operations associated with a request such as synchronous threads, runnable elements, callable elements, and other invokable objects are tracked to determine the metrics about the request and operations. The present technology tracks the start and end of each asynchronous operation and maintains a counter which tracks the currently executing asynchronous operations. By monitoring the request, the start and end of each asynchronous operation associated with the request, and the number of asynchronous operations currently executing, the present technology may identify the end of a request by identifying when the last asynchronous operation associated with the request ends. In some instances, the present technology identifies the end of a request when a counter which tracks the number of asynchronous operations executing reaches a value of zero after the first asynchronous operation has already begun.
Opening claim text (preview).
What is claimed is: 1. A method for monitoring an application, comprising: discovering a business transaction associated with the monitored application wherein the business transaction includes two asynchronous segment methods that execute on different threads of execution, wherein the discovering includes; receiving samples from a first thread of the different threads to obtain a first set of call data; identifying a first asynchronous segment method of the two asynchronous segment methods; receiving a first context object from the first asynchronous segment method; causing the first context object to be inserted into the first set of call data for the first thread; causing a state of the first asynchronous segment method for the first thread to be cached; causing the state of the first asynchronous segment method to be cleared from the first thread; receiving samples from a second thread of the different threads to obtain a second set of call data; identifying a second asynchronous segment method of the two asynchronous segment methods; receiving a second context object from the second asynchronous segment method; causing the second context object to be inserted into the second set of call data for the second thread; merging the first set of call data from the first asynchronous segment method with the second set of call data from the second asynchronous segment method based on a match of the first context object with the second context object; and monitoring the first asynchronous segment method in the first thread and the second asynchronous segment method in the second thread as being associated with the same business transaction. 2. The method of claim 1 , including: causing a modification of the second thread with the cached state of the first thread. 3. The method of claim 2 , including: causing storage of a partial call graph from the first thread after the first thread is monitored. 4. The method of claim 1 , including determining that the first asynchronous segment method is a begin segment and the second asynchronous segment method is an end segment. 5. The method of claim 1 , wherein the causing the context object for the first thread to be inserted in the call data includes causing the context object for the first thread to be placed in a call stack. 6. The method of claim 5 , including causing the call stack of the first thread to be cached. 7. The method of claim 1 , including causing the context object for the first thread to be cached. 8. A non-transitory computer readable storage medium having embodied thereon a program, the program being executable by a processor to perform operations for monitoring an application, the operations including: discovering a business transaction associated with the monitored application wherein the business transaction includes two asynchronous segment methods that execute on different threads of execution, wherein the discovering includes; receiving samples from a first thread of the different threads to obtain a first set of call data; identifying a first asynchronous segment method of the two asynchronous segment methods; receiving a first context object from the first asynchronous segment method; causing the first context object to be inserted into the first set of call data for the first thread; causing a state of the first asynchronous segment method for the first thread to be cached; causing the state of the first asynchronous segment method to be cleared from the first thread; receiving samples from a second thread of the different threads to obtain a second set of call data; identifying a second asynchronous segment method of the two asynchronous segment methods; receiving a second context object from the second asynchronous segment method; causing the second context object to be inserted into the second set of call data for the second thread; merging the first set of call data from the first asynchronous segment method with the second set of call data from the second asynchronous segment method based on a match of the first context object with the second context object; and monitoring the first asynchronous segment method in the first thread and the second asynchronous segment method in the second thread as being associated with the same business transaction. 9. The non-transitory computer readable storage medium of claim 8 , wherein the program is executable by a processor to perform operations including determining that the first asynchronous segment method is a begin segment and the second asynchronous segment method is an end segment. 10. The non-transitory computer readable storage medium of claim 8 , wherein the program is executable by a processor to perform operations including causing a modification of the second thread with the cached state of the first thread. 11. The non-transitory computer readable storage medium of claim 9 , wherein the program is executable by a processor to perform operations including causing a partial call graph from the first thread to be stored after the first thread is monitored. 12. The non-transitory computer readable storage medium of claim 8 , wherein causing the context object for the first thread to be inserted in the call data includes causing the context object for the first thread to be placed in a call stack. 13. The non-transitory computer readable storage medium of claim 12 , wherein the program is executable by a processor to perform operations including causing the call stack of the first thread to be cached. 14. A system for monitoring an application, including: a processor; a memory; and one or more modules stored in memory and executable by a processor to discover a business transaction associated with a monitored application wherein the business transaction includes two asynchronous segment methods that execute on different threads of execution, the one or more modules are executable by a processor to perform the discover including: receive samples from a first thread of the different threads to obtain a first set of call data; identify a first asynchronous segment method of the two asynchronous segment methods; receive a first context object from the first asynchronous segment method; cause the first context object to be inserted into the first set of call data for the first thread; cause a state of the first asynchronous segment method for the first thread to be cached; cause the state of the first asynchronous segment method to be cleared from the first thread; receive samples from a second thread of the different threads to obtain a second set of call data; identify a second asynchronous segment method of the two asynchronous segment methods; receive a second context object from the second asynchronous segment method; causing the second context object to be inserted into the second set of call data for the second thread; merge the first set of call data from the first asynchronous segment method with the second set of call data from the second asynchronous segment method based on a match of the first context object with the second context object; and monitor the first asynchronous segment method in the first thread and the second asynchronous segment method in the second thread as being associated with the same business transaction. 15. The system of claim 14 , the one or more modules further executable to cause a modification of the second thread with the cached state of the first thread. 16. The system of claim 15 , the one or more modules further executable to cause a partial call graph from the first thread to be sto
for test execution, e.g. scheduling of test suites · CPC title
Transaction processing · CPC title
Interprogram communication · CPC title
Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements · CPC title
where the computing system component is a software system · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.