发明名称 Method and system for combining trace data describing multiple individual transaction executions with transaction processing infrastructure monitoring data
摘要 A transaction monitoring and tracing system which combines transactional performance monitoring aspects with infrastructure performance and utilization measures, like e.g. used memory or CPU load of transaction executing computing infrastructure. The system uses two types of agents deployed to the monitored system, a transaction and process agent, which is deployed to a process executing monitored transactions, and a host agent, which is deployed to a computer system executing processes monitored by a transaction and process agent. The transaction and process agent provides transaction tracing and process infrastructure measurements, the host agent provides host or operating system infrastructure measurements. All three types of measurements are tagged by the corresponding agent in a way that allows a later correlation of corresponding tracing and measurement data by an external monitoring node. Combining transactional and infrastructure monitoring allows fast detection of non-transactional root causes of monitored transaction performance degradations.
申请公布号 US9451017(B2) 申请公布日期 2016.09.20
申请号 US201414338637 申请日期 2014.07.23
申请人 Dynatrace LLC 发明人 Greifeneder Bernd;Lehofer Andreas
分类号 G06F15/173;H04L29/08;H04L12/26;G06F11/30;G06F11/34 主分类号 G06F15/173
代理机构 Harness, Dickey & Pierce, P.L.C. 代理人 Harness, Dickey & Pierce, P.L.C.
主权项 1. A computer-implemented method for monitoring performance of an application executing on a host computing device, comprising: generating, by a transaction agent instrumented in the application, a transaction event caused by execution of the application, where the transaction event includes an identifier for the host computing device, an identifier for an execution thread that caused the transaction event, and at least one transaction metric indicative of application performance; sending, by the transaction agent, the transaction event across a network to a server computer located remotely from the host computing device; generating, by a host agent executing on the host computing device, a host event, where the host event includes the identifier for the host computing device and at least one host metric indicative of utilization of a computing resource of the host computing device during execution of the application; sending, by the host agent, the host event across the network to the server computer; receiving, by a transaction correlator residing on the server computer, the transaction event; determining, by the transaction correlator, whether the transaction event corresponds to a thread execution record residing in a transaction repository, where thread execution records includes an identifier for the host computing device, an identifier for the execution thread that caused the transaction event, and at least one transaction metric; updating, by the transaction correlator, a given thread execution record residing in the transaction repository when the transaction event corresponds to the given thread execution record; creating, by the transaction correlator, a thread execution record for the transaction event when the transaction event does not correspond to a thread execution record in the transaction repository; correlating, by an analyzer residing on the server computer, the transaction event with the host event using the identifier for the host computing device and when the thread execution record overlaps temporally with the host event, wherein the thread execution record includes an execution start time and an execution end time for the execution thread; receiving, by an infrastructure processor residing on the server computer, the host event; determining, by the infrastructure processor, whether the host event corresponds to a host record in an infrastructure repository; where host records in the infrastructure repository include an identifier for the host computing device, and at least one host metric for the host computing device; creating, by the infrastructure processor, a host record for the host event when the host event does not correspond to a host record in the infrastructure repository; creating, by the infrastructure processor, a measurement entry for each host metric encapsulated in the host event, where the measurement entries are associated with a host record in the infrastructure repository corresponding to the host event; and determining a health state for a given host metric by applying a rule set to measurement entries for the given host metric and logging the health state in the infrastructure repository.
地址 Waltham MA US