The rise of technologies like cloud computing and automated delivery pipelines has enabled teams to deliver software at breakneck speed. In fact, top tech companies deploy software hundreds, even thousands of times per day, raising the bar for digital services. To stay competitive, organizations in every industry must match the pace of innovation set by these digital-native companies.
However, it’s challenging to maintain heterogeneous applications and ensure that service is not only available, but also delighting users and driving business outcomes. From the front-end experience to back-end architecture, a web of third-party services, legacy data centers and a distributed, multicloud infrastructure are supporting the application.
If you’re unable to effectively manage these applications, your business is impacted by lost productivity, resources and customers. An AppDynamics survey of 6,000 IT professionals found the cost of an average outage in the United States and United Kingdom totals $402,542 USD and $212,254 USD, respectively (UK outage costs were converted to US dollars).
While deployment velocity has increased exponentially, traditional approaches to troubleshooting fall short when it comes to equipping developers with enough information to pinpoint the root cause of application issues in production. According to Stripe Research, developers spend roughly 17.3 hours each week debugging, refactoring and modifying bad code—valuable time that could be spent writing more code, shipping better products and innovating. The bottom line? Nearly $300B (US) in lost developer productivity every year.
More Time Writing Code, Less Time Debugging
Today, developers endure long deployment cycles just to add a single log line, all in hope of collecting the right data that will reveal what’s causing a bug in production.
AppDynamics Deep Code Insights (DCI) powered by Rookout provides live code-level visibility during runtime execution without having to make changes to source-code, introduce performance overhead, or disrupt the environment or end users. With DCI, you capture necessary debug data on demand to pinpoint root cause.
DCI extends AppDynamics’ observability into live production environments, further reducing the time between issue identification and resolution. So no more time wasted on adding, tweaking and removing logs.
How DCI Works
When application performance is degrading, AppDynamics alerts and provides rich context into where the issue may be occurring within the app. DCI enables you to further investigate root cause to diagnose complex code issues without having to reproduce issues in dev or test.
Simply add dynamic watchpoints—breakpoints that don’t break the app—to collect critical data such as local variables or stack traces that lead to errors in real time. As the line of code with dynamic watchpoints executes, DCI briefly pauses the thread of execution to capture debug information (like live production data) and then releases the thread without stopping or impacting the app.
The best part? With a read-only view of production data, developers can securely collect additional information necessary to pinpoint the root cause of code issues without the fear of disrupting the application or end users.
A New Age for Debugging
AppDynamics Deep Code Insights simplifies the debugging process by offering an unprecedented level of visibility into running code without disrupting your environment. The result, an AppDynamics internal study found, is tighter alignment between Dev and Ops and a 25% improvement in developer productivity, freeing up time to release new features.
Whether you’re battling issues in monolithic environments or in highly distributed, microservices-based applications, DCI greatly improves software delivery efficiency by enabling your developers to spend less time debugging and more time delivering world-class software.
Key Benefits of DCI
Real-time Performance and Business Monitoring
- Method-level visibility into transaction snapshots
- Shortens debug time by pinpointing code segments that need debugging
- Enables a better understanding of a bug’s impact on end users and the business
- Provides read-only access to production data, eliminating the need to recreate issues in test or change code
- Collects data on demand without interrupting thread processing
- Enables dynamic logging (conventional logging requires redeploying code)
- Equips developers with isolated fault domain down to the method, and the ability to further investigate and pinpoint root cause
Integrated Developer Environment (IDE)
- Live debugging view of running production code eliminates the need for multiple hand-offs, saving time and resources
- Intuitive, easy-to-navigate UI is immediately familiar to developers and other users with coding experience
Learn more about DCI here. If you’re an AppDynamics customer, contact us to get started with DCI today.