Automatic capture of detailed analysis information based on remote server analysis

US10904112B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10904112-B2
Application numberUS-201615345275-A
CountryUS
Kind codeB2
Filing dateNov 7, 2016
Priority dateFeb 2, 2012
Publication dateJan 26, 2021
Grant dateJan 26, 2021

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A system monitors a network or web application provided by one or more distributed applications and provides data for each and every method instance in an efficient low-cost manner. Agents may monitor the performance of the distributed application by the web services and report monitoring data as runtime data to the remote server, for example a controller. The controller may analyze the data to identify one or more performance issues or “hot spot” methods based on current or past performance, functionality, content, or business relevancy. Instructions and/or configuration information may be transmitted by the controller to the agents that correspond to a particular business transaction portion associated with a hot spot. The portions are then monitored to collect data associated with the hot spot and the hot spot data is reported back to the controller.

First claim

Opening claim text (preview).

What is claimed is: 1. A method for monitoring a distributed business transaction, comprising: configuring, through a controller in communication with a plurality of agents over a network, diagnostic parameters for the plurality of agents, the plurality of agents a) installed on a plurality of remote computers and b) configured to monitor an application that provides the distributed business transaction, the application running on at least some of the remote computers; receiving, by the controller and from some of the plurality of agents, runtime data associated with requests of the application, the runtime data indicative of performance of the distributed business transaction; determining, by the controller and from the received runtime data, a hot spot representing a performance issue associated with the distributed business transaction by a) comparing the runtime data to an identified dynamic data path of a stable state of the distributed business transaction and b) determining that one or more methods in the received runtime data exceeds a cyclometric complexity threshold, wherein the identified dynamic data path of the stable state is a dynamically changing runtime execution path of the distributed business transaction that is learned by the controller based on existing distributed business transactions from which hot spots have already been learned; and instructing, by the controller and in response to determining the hot spot, an agent of the plurality of agents to implement a diagnostic session by implementing modifications to the diagnostic parameters of the agent to collect hot spot data associated with the hot spot that is in addition to the runtime data. 2. The method of claim 1 , wherein the diagnostic parameters include at least one of: a number of transactions to simultaneously track; a time of the diagnostic session; a sampling rate for a thread; and a threshold percent of requests detected to run slow before triggering an anomaly. 3. The method of claim 1 , including: building a call graph from the hot spot data based on the runtime data associated with requests of the application and the hot spot data associated with the hot spot that is in addition to the runtime data. 4. The method of claim 1 , including: determining from the runtime data whether an execution time for a method associated with the requests satisfies a threshold. 5. The method of claim 1 , including: determining from the runtime data whether a method associated with the requests orchestrates a flow by having a threshold number of methods that are called directly or indirectly from a root method. 6. The method of claim 1 , including: qualifying the hot spot data to prioritize methods associated with the hot spot based on factors that affect performance of the distributed business transaction. 7. The method of claim 1 , including: comparing the hot spot data against a hotspot threshold. 8. A system for monitoring a distributed business transaction, comprising: a controller, installed at a networked server machine and in communication with a plurality of agents over a network, configuring diagnostic parameters for instructing the plurality of agents wherein the plurality of agents are a) installed on a plurality of remote computers and b) configured to monitor an application that provides the distributed business transaction, the application running on at least some of the remote computers; the controller, accessible through a web user interface, receiving, from some of the plurality of agents, runtime data associated with requests of the application, the runtime data indicative of performance of the distributed business transaction; the controller, from the received runtime data, determining a hot spot representing a performance issue associated with the distributed business transaction by a) comparing the runtime data to an identified dynamic data path of a stable state of the distributed business transaction and b) determining that one or more methods in the received runtime data exceeds a cyclometric complexity threshold, wherein the identified dynamic data path of the stable state is a dynamically changing runtime execution path of the distributed business transaction that is learned by the controller based on existing distributed business transactions from which hot spots have already been learned; and the controller instructing, in response to determining the hot spot, an agent of the plurality of agents to implement a diagnostic session by implementing modifications to the diagnostic parameters of the agent to collect hot spot data associated with the hot spot that is in addition to the runtime data. 9. The system of claim 8 , wherein the diagnostic parameters include at least one of: a number of transactions to simultaneously track; a time of the diagnostic session; a sampling rate for a thread; and a threshold percent of requests detected to run slow before triggering an anomaly. 10. The system of claim 8 , wherein the controller is configured to build a call graph from the hot spot data based on the runtime data associated with requests of the application and the hot spot data associated with the hot spot that is in addition to the runtime data. 11. The system of claim 8 , wherein the controller is configured to determine from the runtime data whether an execution time for a method associated with the requests satisfies a threshold. 12. The system of claim 8 , wherein the controller is configured to determine from the runtime data whether a method associated with the requests orchestrates a flow by having a threshold number of methods that are called directly or indirectly from a root method. 13. The system of claim 8 , wherein the controller is configured to qualify the hot spot data to prioritize methods associated with the hot spot based on factors that affect performance of the distributed business transaction. 14. The system of claim 8 , wherein the plurality of remote machines include Java Virtual Machines (JVM). 15. A non-transitory computer readable medium having instructions executable by a processor to perform operations for monitoring a distributed business transaction, the operations including: configuring, through a controller in communication with a plurality of agents over a network, diagnostic parameters for the plurality of agents, the plurality of agents a) installed on a plurality of remote computers and b) configured to monitor an application that provides the distributed business transaction, the application running on at least some of the remote computers; receiving, by the controller and from some of the plurality of agents, runtime data associated with requests of the application, the runtime data indicative of performance of the distributed business transaction; determining, by the controller and from the received runtime data, a hot spot representing a performance issue associated with the distributed business transaction by a) comparing the runtime data to an identified dynamic data path of a stable state of the distributed business transaction and b) determining that one or more methods in the received runtime data exceeds a cyclometric complexity threshold, wherein the identified dynamic data path of the stable state is a dynamically changing runtime execution path of the distributed business transaction that is learned by the controller based on existing distributed business transactions from which hot spots have already been learned; and instructing, by the controller and in response to determining the hot spot, an agent of the plurality of agents to implement a diagno

Assignees

Inventors

Classifications

  • H04L67/535Primary

    Tracking the activity of the user (network monitoring arrangements H04L43/00; recording of computer activity G06F11/34) · CPC title

  • Handling of user complaints or trouble tickets · CPC title

  • H04L43/04Primary

    Processing captured monitoring data, e.g. for logfile generation · CPC title

  • of different types · CPC title

  • Computing arrangements using knowledge-based models · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10904112B2 cover?
A system monitors a network or web application provided by one or more distributed applications and provides data for each and every method instance in an efficient low-cost manner. Agents may monitor the performance of the distributed application by the web services and report monitoring data as runtime data to the remote server, for example a controller. The controller may analyze the data to…
Who is the assignee on this patent?
Appdynamics Llc, Cisco Tech Inc
What technology area does this patent fall under?
Primary CPC classification H04L67/535. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Jan 26 2021 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).