Troubleshooting Distributed Transactions in Development

Maranda Williams Developer Tips, Tricks & Resources

You’ve spent hours unsuccessfully figuring out why users are unable to complete the payment portion on your website. You and collaborating developers are searching errors and logs from production, but everyone reports “it works on my machine.” And your company continues to lose money from every user who cannot complete their purchase. Your troubleshooting tools don’t have distributed tracing, so you lack needed observability into these distributed transactions to fix the problem.

The bane of every developer’s existence is troubleshooting pesky cases where the root cause of an issue is just out of reach. The process is maddening and amplified in cloud-native applications, where distributed transactions make everything more complicated. IT teams can waste hours going back and forth simply trying to figure out whose code base is actually the culprit!

Not Just for Production Applications

The production environment is not a great place for developers to troubleshoot root causes or test potential solutions. While IT teams must be proactive to ensure a great user experience, troubleshooting production applications is often too late. In addition, understanding how requests perform across services can help developers optimize application performance long before production. For multiple teams to troubleshoot different containers and microservices effectively, they need tools with distributed tracing.

With Prefix Premium, you can easily see the full transactions starting in your cart services and traversing into payment services. By setting up profiling for both applications, you get a full end-to-end view of that transaction. Prefix Premium helps you uncover root causes in pre-production, even for complicated distributed transactions. With logs and errors available in one view, you realize it is a simple fix – the outbound call to the payment service is not completing successfully. Had you started with Prefix Premium from the beginning, hours of your time would have been saved. Leadership wouldn’t have been breathing down your neck. And multiple customers would have successfully completed purchasing their items.

Distributed Tracing with Prefix Premium

Distributed transactions within Prefix Premium are viewed in two places – the Summary Dashboard and the Transactions tab. The Summary Dashboard shows you the top and slowest transactions collected from the services you are working on. On the Transactions tab, Prefix Premium lists the root-level requests that start a transaction, which application each transaction is part of and the number of requests that make up that overall transaction. No matter how many services or containers are involved, Premium provides detailed transaction tracing, .

The Transaction Tab in Prefix Premium
The Transaction Tab in Prefix Premium

When you click on any transaction, Prefix Premium displays a graphical representation of the elements that make up that transaction. The graph is accompanied by a list of dependencies, top level spans and requests. Once expanded, those requests show the trace details collected and the parent-child relationships within. Any errors or logs collected by Prefix Premium also give you context of everything happening in that moment of time.

Distributed Tracing in Prefix Premium
Distributed Tracing in Prefix Premium

Ensuring a Great User Experience

Prefix Premium makes it easy to understand your code and how requests, queries, external calls and cache affect transaction performance. Errors are easy to debug with the trace and log correlation provided in one view. By looking at slow performance times, Prefix Premium also makes it easy to identify areas for optimizing your applications. You can also compare transaction performance before and after changes locally and avoid the severe consequences of downtime in production.

Prefix Premium is the tool for bringing the insights of distributed tracing to the developer while they code. Stop sending applications to production simply hoping for the best. Take back wasted time blindly troubleshooting distributed transactions. Download Prefix Premium today!

About Maranda Williams

Maranda Williams is the Product Manager for Prefix by Netreo and brings more than six years experience as a full stack application developer and customer success engineer to the role. She is passionate about cultivating solutions that make it easy for developers to create amazing user experiences and is a member of the WIT network. When not improving Prefix usability and performance, Maranda enjoys her family and reading the latest sci-fi and fantasy novels.