Aimed at monitoring, diagnosing, and preventing performance issues across the full lifecycle - development, test and production - for mission critical applications, dynaTrace 3 (from dynaTrace) delivers new features to manage application performance for large, globally-deployed SOA, Java and .Net applications.
The foundation of the dynaTrace Application Performance Management (APM) system is the company's PurePath transaction tracing technology, which follows and captures individual transactions down to the code level across different tiers and technologies in a distributed environment on a 24/7 basis, without impacting a customer's overall system performance. "The way we architected the product is done in a way where we can collect high-volume transactions with very little overhead," says Andreas Grabner, technology strategist for dynaTrace Software Inc., in Lexington, Mass.
Grabner says in order to trace those calls across tiers, other solutions often take a statistical correlation approach to try to find out how one server impacts another but it doesn't allow them to go deeper or more granular than averages. PurePath, he said, captures all contextual data such as method arguments, SQL statements, SQL bind values, sync events, exceptions, and log messages, providing the information needed by the developer to precisely identify the code segment causing the slowdown.
In addition to tagging and tracing all transactions across servers/tiers, the APM system also offloads all the data processing to a network, in this case, dynaTrace's central server. This enables dynaTrace to have much lighter weight agents on each one of the servers, asking them to do as little as possible. All the heavy work including network traffic and packets is done in the centralized server.
Jim Nichols, enterprise architect for EnerNOC, an energy management solution provider in Boston that helps utilities and grid operators manage energy supply and demand, says "being able to get a full call trace execution and having it be pretty lightweight was very important. It has some amount of overhead but it's trivial."
Trends like SOA make application requirements more dynamic but are also making it more difficult and complex to monitor these distributed network environments. Even with SOA's dynamically decoupled service where you don't exactly know how the transaction will flow through the SOA-based application, dynaTrace is able to map and visualize each transaction. "With dynaTrace we can follow every transaction and visualize the pathway to give the real picture of what's going on in the SOA environment," says dynaTrace's Grabner.
The dynaTrace dashboard, designed to meet the unique needs of different stakeholders in the application lifecycle, makes it easier and faster to find and fix problems, together with streamlining communications between operations, system architects, software developers, testers and others. In addition, the automated and color-coded alerts speed up the whole process and the dashboard templates are customizable.
dynaTrace 3 also offers three fully integrated editions, specifically tailored to the needs of development, test and production. "But no matter where you use it in the lifecycle, it's always the PurePath data that we collect and share with all the stakeholders in the process. With new dashboard technology, you can build dashboards to present the PurePath data in a way that makes sense for the person who looks at it. For the developer it will be a very technical view like looking at SQL statements but for operations it might just be a high-level view on response times or memory allocation or usage," says Grabner. In addition, the Purepath data can be shared very easily in a single file.
Being able to slice and dice the same set of information for things such as methods, Web services and database queries through different dimensions is important, says user Nichols of EnerNOC. In addition to analyzing high transactional volume, he also uses dynaTrace for day-to-day development tasks.
Nichols indicates key dynaTrace benefits include application uptime and improvements in the quality of the software itself, reduced performance defects, and better operational efficiency of its user community, along with reduced time for development and performance engineering to fix performance problems. EnerNOC currently uses dynaTrace version 2.6, although it is in process of upgrading to 3.0, on a three-tier Java application.