Home » Product » Architecture
dynaTrace is designed for usage across the entire application lifecycle, including development, test, staging and production.
Its unique architecture enables global PurePath transaction tracing to be always-on -
whether during continuous integration, high-scale load testing or 24x7 production operations.
Key for being able to turn PurePath transaction tracing always-on is the fact that the dynaTrace Agents do not accumulate any data,
but instead all diagnosis data is sent asynchronously and in real-time to the dynaTrace Server, which constructs the distributed PurePaths.
The dynaTrace Collector is fully optional and removes instrumentation burden from the dynaTrace Server, providing high-scalability, and enabling dynaTrace to trace transactions
even globally across WAN environments.
KnowledgeSensors™
KnowledgeSensors mark a transaction’s progress along its execution path and identify all transaction entry points
(e.g., Java Servlet invocations) and method calls, as well as their sequence and nesting. For each transaction,
the KnowledgeSensors record not only pure performance metrics (e.g., response times, CPU usage) of an execution
path, but also contextual information (e.g., method arguments, return values, exceptions, log events, IO usage,
network traffic, objects created, SQL calls, remote calls, and synchronization delays) in order to enable
precise root-cause analysis.
In this way, KnowledgeSensors provide all the data included in PurePaths.
Plus, you can subscribe them also as dedicated performance monitors to allow time-based performance analysis.
To support a smooth deployment and an easy administration, several KnowledgeSensors can be packaged into a single
KnowledgeSensorPack™.
dynaTrace Agents
The lightweight dynaTrace Agent injects the instrumented byte/IL-code (original code + KnowledgeSensors) into the target application automatically;
no source code changes are required. The dynaTrace point and click auto-sensor assistant and visual class browser with auto-discovery help you to
maximize visibility with minimum instrumentation and overhead. The level of detail for code-level transaction tracing can also be adjusted on-the-fly
without restarting the target application using HotSensorPlacement™. The dynaTrace Agent is also used
to gather memory and thread dumps. Plus, it can be deployed and managed from a central location and requires only minimal system resources for sustained 24x7 operation. Finally, the
dynaTrace Agents are capable of collecting dynamic monitoring data in-process from JVMs, CLRs and application servers via JMX, PerfMon and PMI.
dynaTrace Collector
The dynaTrace Collector instruments the target application through adding KnowledgeSensors into its byte/IL-code. It also reduces network payload and provides data security between
the target application and the dynaTrace Server as it provides data compression and strong encryption (SSL/TLSv3). Thus, the Collector reduces memory and CPU usage on the dynaTrace server to
collect all the diagnostics data. The dynaTrace Collector allows dynaTrace to efficiently scale from small application deployments to very large server clusters. It also enables global end-to-end
transaction tracing across applications deployed over WAN environments, such as SOA applications or applications accessed through rich/fat clients deployed in e.g. remote branch offices.
Additionally, the Collector also executes OSGi-based monitoring plugins (e.g., Unix, Windows, SNMP monitors) and forwards results to the dynaTrace server.
dynaTrace Server
The dynaTrace Server collects all diagnostics data including transaction traces, monitors and memory/thread dumps. The Server centrally creates the
PurePaths, which may span distributed JVMs/CLRs, and derives all aggregations from them, while preserving the atomic PurePath information. This allows
overhead on the target application to be sustained at a very low level of only 3-5% while providing deep application visibility on a transaction by transaction basis. This makes dynaTrace
ideally suited for usage in load test and 24x7 production environments, even in large clustered application environments.
dynaTrace Repository
The dynaTrace Repository stores historical performance data for forward- and backward-looking long range
analysis.
dynaTrace Client
By providing an intuitive, platform-independent user interface, the dynaTrace Client guides IT employees
through the processes of managing application performance.
- Team members can access dashboards, detailed diagnosis data
and reports in real-time via context-sensitive menus that minimize GUI navigation steps.
- Interactive analysis of stored diagnosis data - including PurePaths,
memory dumps and monitors - enables developers to fully reconstruct application
hotspots in their local development environment to quickly understand a problem’s root cause.
Integrations API
Open interfaces allow easy integration into existing environments, such as Continuous Integration, load testing, or enterprise management systems. Plus, you can easily extend dynaTrace
with custom instrumentation sensors and OSGi-based open source plugins, such as monitors, actions or notifications, which you may download from our Community Portal. Simply customize
and deploy them using the Rapid Plugin Development Environment.
Using the CodeLink plugin you can accelerate final problem resolution by directly accessing the source-code of classes and methods you have identified as being a bottleneck in your
favorite IDE (e.g., Eclipse) without hassle.
|