If you're developing a distributed system composed of serverless functions, containers, and VMs, it is important to be able to trace your transactions end-to-end with great detail. You need to keep your system stable, be aware of bottlenecks in your application, and measure your system performance to keep it at an optimum level. In serverless-centric environments, it's harder to understand what actually happened in and between functions due to the distributed nature of serverless. Logs can help to some extent, but they are not as helpful as they should be when it comes to revealing why your transactions are slow. In order to understand what's going on, you'll need to instrument your function and see the traces representing the life cycle of distributed transactions in a timeline. Thundra is the only vendor that can provide end-to-end visibility through instrumentation. “End-to-end” means understanding and managing the aggregate set of distributed services an application consumes, right down to the line level of the runtime code for every local service or container-based application.