Observability is something that we need in order to troubleshoot, debug, monitor, benchmark, and optimize our serverless applications. With the many distributed components that make up a serverless application, we need a way to track the performance of a single transaction throughout the system. This gets really hard when the compute we get from Lambda is so ephemeral, and when functions can be chained with asynchronous or parallel invocations. Observability can encompass event logging, metrics, and tracing. We've already covered a lot of logging and metrics so far, so let's dig into options for traceability.
Most third-party Application Performance Management (APM) tools rely on an agent or daemon being present on the host ...