Deployment
On-premise deployment
Can be deployed on AWS
Can be deployed on Azure
Can be deployed in a private cloud
Monitor on-premise applications in virtualized environments
Monitor applications running on AWS and Azure
Monitor applications running on Pivotal Cloud Foundry, Redhat OpenShift and
Heroku
Support for Pivotal Cloud Foundry, Redhat OpenShift. Heroku is a future roadmap item.
Configuration and Infrastructure
Configuration and management through a single, web-based user interface
Automatically create a visualization of the entire application topology with all
components.
Automatically discover business transactions
Automatically discover standard back end systems (database, web services, SAP
etc.)
Discover and display non-standard backend systems through point-and-click
configuration
Automatically baseline every component within the business transaction
Can be deployed in multi-tenant environment
Application Visibility and Control
Provide correlated views of distributed business transactions between
tiers/services
Automatically baseline every component within the Business Transaction
Provide code level diagnostics (class & method-level visibility) of business
transactions
Monitor JVM health information (heap, GC, generational spaces, etc.)
Monitor CPU utilization, OS memory usage, disk I/O, network I/O, other hardware
metrics
Report application errors & exceptions
Automatically monitor entire call stack when application problems occur
Does not disable monitoring functionality as a compromise to limit product
overhead
Historical performance monitoring and trending
Full view of infrastructure details without leaving context of business
transactions
Single UI for server and application monitoring
Alert on deviation from baseline
Mean Time To Repair
Identify slow and stalled business transactions without manual intervention
Count, measure and score every transaction
Identify error business transactions without manual intervention
Identify slow SQL queries without manual intervention
Identify slow backend systems or external services without manual intervention
Automatically discover code deadlocks
Provide quick cross launching into problem areas within the UI through hyperlinked
alerts
Automatically send email containing hyperlink to identified problem
Automatic analysis of end-to-end APM data to provide root cause analysis
Business Transactions
Automatically discover business transactions
Automatically learn and baseline performance of discovered business transactions
Automatically count, measure and score every transaction
Discover synchronous, asynchronous and multi-threaded business transactions
Business Metrics
Provide visibility into the impact of outages on business metrics
Capture business metrics (e.g. revenue, orders) from applications and background
jobs
Enables creation of custom dashboards for business metrics and application
behavior
Out of the box reports on business transaction summary and trends
Automatically correlate business transactions with environment monitoring (OS, JMX,
etc.)
Usability
Browser-based web client
Automatic & dynamic baselining of all metrics to reduce false alarms
Include an online virtual collaboration space as a virtual "war room"
Visualize multiple applications and the connectivity / dependencies between them
Enable sharing of analysis/ visualizations without having to export data from the
UI
Group transactions using a Session ID and display transactions in order of
execution
Drill down from business transaction to correlated log file entries in single
platform
Available through CA's Log Analytics solution which can be integrated with APM
Historical Trending
Trending with metric persistence to do historical analysis and compare to
baselines
The ability to view and drill into Flow Map for extended periods up to 1 year
The ability to compare Flow Maps from different time frames for up to 2 years
Support for Agile
Dynamic instrumentation of the application
No need to reconfigure agent instrumentation when new app releases are deployed
Automatically pick up application configuration changes as a result of agile
releases
Regression analysis to compare and highlight app performance improvements
Areas of poor metric stability (differential analysis) and architectural potential (high call ratio) for
improvement are analyzed, but through more advanced logic than regression
Provide capability to compare business transactions flows for different releases
Pre-Production Performance Tuning
Identify the longest running methods in business transactions
Determine relationship between increased load and application response time
Identify worst backend calls (Database, Web Services, other backend) automatically
Provide business transaction performance change from one code release to the next
Scalability and Infrastructure
Support at least 5000 agents on a single platform without requiring data
federation
Ability to support high availability APM infrastructure servers
Has steady network traffic between agent and APM server regardless of transaction
levels
Encrypt data transmissions end-to-end across the environment
Agentless monitoring
Analytics
Single UI incorporating Analytics and APM modules
Analytics UI is web browser based with no locally installed client software
Analytics layer providing intelligence across data collected by APM modules
Scalable repository capable of collecting and storing large volume of
metrics/events
In context drill down between analytics data and APM data
Graphical query builder for ease of use and broad adoption
Ability to adjust timeframe via click and drag on dashboard charts
Automated ranking (top N) of relevancy of every indexed field to current selection
Configurable to collect not all, but specific desired transaction data/fields
Alert off of metrics created in analytics based on search criteria
Analytics data collection does not require full call method stack data
No code changes required to pull custom (non-native) metrics into data repository
Data collected, stored and analysed in near real time (i.e. not hours, days, or weeks
later)
API to input custom metrics
Search API
Ability to chart result set in custom dashboards
Granular role based access control (RBAC)
Log Analytics
Ability to collect and store log files from monitored nodes
Available via CA's log analytics solution which can be integrated with APM
Log file data through TCP
Available via CA's log analytics solution which can be integrated with APM
Auto-inject business transaction identifier for each log statement
Can be configured via custom tracer, requires integration with logging framework
Ability to extract any field from log file for processing
Available via CA's log analytics solution which can be integrated with APM
Root Cause Analysis
Historical performance monitoring and trending - retain 100% of historical data
Report top database activities (e.g. Top SQL, Top Users, Top Programs)
Report database activity profile over-time (identify patterns)
Collect and store all database wait events and correlate with SQL/Stored
Procedures
Collect and store SQL/Stored Procedure KPIs (CPU, Count, Reads/Writes)
Collect and store database instance level statistics (table size, row count,
indexes)
Collect and store database server/host KPIs (CPU, Memory, �)
Ability to breakdown latency of stored procedure components
Collect SQL Explain & Execution plans
Collect and store performance data on database objects (Schemas, tables, indexes)
Ability to collect and correlate deep-dive storage information
Database Monitoring
Provide a real-time view of performance showing current database activity
Provide a holistic view of all database performance through a multi-instance
dashboard
Ability to send pro-active alerts based on health and performance of databases
Static and dynamic alerting on collected database metrics
Server Monitoring
Monitor Machine availability
Monitor CPU usage
Monitor Disk performance
Monitor Volume usage
Monitor Machine load
Monitor Memory
Monitor SWAP
Monitor Processes
Monitor Network Adapter(s)
Dynamic Baselining
Synthetic page checker
Application Monitoring
Identify JVM memory leaks caused by leaky collections
Enable tracking of object instantiations/destructions to troubleshoot JVM heap
thrash
PHP monitoring
.NET monitoring
Node.js monitoring
Python monitoring
Docker Monitoring
Integrated monitoring of Dockerized containers with application monitoring
Automatic discovery of containers
Support Docker attributes and perspectives
Visualize distribution of containers over cluster hosts
Network Monitoring
Autodiscovery of network topology and interdependencies
Available via CA network flow analysis, which can be integrated with APM
Report on throughput, packet loss, and RT rates
Available via CA network monitoring tools, which can be integrated with APM
Monitors network without need of TAP or SPAN port
Available via CA network monitoring tools (without then need for TAP/SPAN), which can be integrated with APM
Single UI to drill from network to application and business transaction
Network monitoring data integrated into APM can be displayed natively within APM dashboards alongside business
transaction data
Virtualization Monitoring
Citrix XenApp and XenDesktop monitoring
Server virtualization monitoring
VDI monitoring
Web RUM
Support for modern desktop browsers
Support for mobile browsers
Monitor all page requests
Monitor all iFrame requests
Full support for monitoring single page applications properly
Automatically detect JavaScript errors
Display response time status on Geo Map
Collect and display Navigation Timing API data for all poor performing requests
Collect and display Resource Timing API data for all poor performing requests
Correlate web transactions with server side transactions for drill down
Provide detailed browser traces for poor performing end user requests
Provide usage based analytics showing browser types and versions
Provide usage based analytics showing device and OS types
Provide customizable analytics area for troubleshooting and analysis purposes
Provide cache metrics for each page request
Show server side response time for all pages
Provide drill down from poor performing request to server side deep diagnostic
session
Session tracking
Ability to generate a synthetic page request directly from the poor performing
request
SDK for support of any Single Page Application (SPA) framework
EUM cross application correlation
Analytics built into EUM portion of UI
Custom user data available at the session and page request level
Page grouping at root level instead of individual pages for each set of parameters
Mobile RUM
Support for native mobile applications
Support for mobile browsers
See mobile app performance, http errors, and network error information
See the performance of API calls from your mobile application to the server side
Track crashes and exception
Provide crash analytics
User tracing/breadcrumbs
Trace transactions from mobile device all the way to the server side
Correlate mobile transactions with server side transactions for drill down
Provide usage and performance analytics based upon device type
Provide usage and performance analytics based upon OS type
Provide usage and performance analytics based upon OS version
Provide unified user interface for mobile and server diagnostics
Integrated and correlated data between mobile, server, and infrastructure
monitoring
Display response time status on Geo Map
Provide device and carrier diagnostic metrics
Track user sessions to understand user flows and behavior
Capture user interactions within each session
Alert based upon deviation from normal behavior for mobile metrics
Provide percentile metrics related to mobile performance
AppDynamics, New Relic & CA Technologies?
It all depends on the problems you want to solve. They all have their strengths. CA is long in the tooth (old) and with NetQoS has new life being pushed into it, but making it all fit is a challenge. Also with CA you may have to open up the applications to add some other custom monitoring of application package names/methods if you want more detail than out of the box.
Understanding the full flow of a transaction when it talks to other transactions was our key to understanding why we had issues. The Riverbed family of products enabled that for us but even that required work on our part to further decode the MQ traffic better than they did. It went into the MQ Black box, and came out, but did not reveal what happened inside the box. There were requests inside the box that went elsewhere. Those had not been picked up with the tool.
Cons for all of them are that they only sample transactions and can't follow a single user from their device all the way through to the backend database or mainframe. Best using dynaTrace if you want true 100% end to end monitoring.
Saluting Mike, Richard for your sound advice!
Henry
I have found Dynatrace to be much better. It integrates with more tools than any of the 3 listed above.
From my experience with CA Wily, it's more expensive and requires a long implementation, it is also less flexible.
We did not consider New Relic because we did not want to have our sensitive data hosted in the cloud. Not acceptable in our business.
AppDynamics offered a short implementation time, immediate satisfaction and only required fine-tuning afterwards. Also the pricing was lower then CA Wily.
All three are good tools for monitoring web application transactions. Of course, CA has a much broader set of capabilities than the other two - can monitor networks, servers, databases, etc. AppDynamics provides a product that you can use in-house. NewRelic is only a SaaS offering. Which of these is best for you - depends on what you need. If you already have CA deployed, you are probably looking at just web transaction monitoring then. AppDynamics and NewRelic are more current in this area than CA Wily.