Abstract:
A system uses agents to monitor a distributed business transaction as well as monitor changes in software configuration. An agent may detect a file load, such a class load, obtain portions of the file such as functions, and perform a hash on the byte code functions. A hash tree may then be constructed and compared to previous states of the system. The hash tree may be generated, for example, at each file loading detected, so that system states can be compared. Differences in hash trees are detected and the changes are reported to an administrator of the system that provides the distrusted business transaction.
Abstract:
The present technology monitors a web application provided by one or more services. A service may be provided by applications. The monitoring system provides end-to-end business transaction visibility, identifies performance issues quickly and has dynamical scaling capability across monitored systems including cloud systems, virtual systems and physical infrastructures. In instances, a request may be received from a remote application. The request may be associated with a distributed transaction. Data associated with the request may be detected. A distributed transaction identifier may be generated for a distributed transaction based on the data associated with the request.
Abstract:
An application which utilizes a single thread is monitored and context for the individual requests and business transactions operating on that platform are provided. A wrapper is placed is around an object that calls a request. The wrapper renames a request object. Request objects are renamed with a unique name when they are called. When a call stack is sampled, the sampler will retrieve the unique name. Performance data associated with the unique name may be correlated to a business transaction and particular request as metrics are subsequently analyzed. For subsequent reporting, such as call graph reporting, the report or call graph will have requests in the context of a particular business transaction and a particular request instance. This provides more context in reporting of an business application request for frameworks that utilize as single request for multiple threads.
Abstract:
A system processes a large volume of real time hierarchical system metrics using distributed computing by stateless processes. The metrics processing system receives different types of hierarchical metrics coming from different sources and then aggregates the metrics by their hierarchy. The system is on-demand, cloud based, multi-tenant and highly available. The system makes the aggregated metrics available for reporting and policy triggers in real time. The aggregators and collectors may be upgraded to new versions with minimal loss in data.
Abstract:
A system processes a large volume of real time hierarchical system metrics using distributed computing by stateless processes. The metrics processing system receives different types of hierarchical metrics coming from different sources and then aggregates the metrics by their hierarchy. The system is on-demand, cloud based, multitenant and highly available. The system makes the aggregated metrics available for reporting and policy triggers in real time. The metrics aggregation and roll up method involves two different classes of stateless java programs that work in tandem to receive, aggregate and roll up the incoming metrics. The method also involves a persistence store to save incoming and aggregated metrics. The method uses a quorum to communicate between these processes.
Abstract:
A transmitted transport communication protocol (TCP) packet in an established TCP connection is intercepted and resent with a modified IP layer to determine network nodes within a network path. No new connection is required, and the data may be transmitted to its intended location as part of the existing connection, bypassing firewalls and other obstacles commonly affecting ping commands. The change to the IP layer may include a modified TTL value. Address location and response time may be determined for each node in a network path.
Abstract:
A system associates resource usage with a particular business transaction. A business transaction may include a PHP request and occur over a distributed system. The distributed application may be monitored. The resource usage by the requests that form the business transaction may be compiled together to determine the resource usage of the business transaction. The resources may include resources used by PHP requests, such as for example memory pool usage, files used, CPU usage, and other resources.
Abstract:
The present technology may determine an anomaly in a portion of a distributed business application. Data can automatically be captured and analyzed for the portion of the application associated with the anomaly. By automatically capturing data for just the portion associated with the anomaly, the present technology reduces the resource and time requirements associated with other code-based solutions for monitoring transactions. In an embodiment, a method for monitoring an application may begin with detecting a diagnostic event. A diagnostic identifier may be associated with the request in response to the diagnostic event. An outgoing call may be detected at a first server associated with processing the request. The outgoing call may be modified at the first server to include the diagnostic identifier, the outgoing call with the diagnostic identifier received by a remote computer.
Abstract:
A system monitors a client request and a backend business transaction performed in response to the request and correlates the data generated from monitoring the request and business transaction. A request may be monitored in detail to determine several metrics. The metrics may include sever connection time, response receipt completion time, document download time, document processing time, and page rendering time. The metrics may be determined for an entire content page as well as individual page elements, such as Iframes and elements constructed from AJAX techniques.
Abstract:
Code intended to operate in an operating system without an isolation mechanism is executed in isolation. The present system enables synthetic transactions to be executed in isolation without affecting other client data and files. Isolation may be outsourced to a separate set of servers that have an operating system which does support isolation. A handshake or other protocol is utilized to maintain secure data and communication. Untrusted script code provided by a customer is isolated in one or more remote servers. To execute the script on a client machine, a key is provided to access this script. A machine at which the script is to be run is provided with the key and the address of the script code on the remote server. A secure connection is established between the client machine and the script code server and script is executed on the client machine.