AppDynamics an application performance management solution for mission-critical Java applications. It can organize user requests and business transactions, monitor business transaction health, identify and diagnose slow requests, identify and diagnose errors, and drill down. It is built from the ground up for highly distributed service-oriented environments. It has fast root cause diagnostics at the method/class level, but creates no more than 2% overhead, even in high-volume production deployments. It can not only manage applications, but dynamically scale them in cloud and virtual environments.