Serverless transactions are generally a chain of multiple invocations and resources which get a business objective done. Out of the box monitoring solutions provides information about every single invocation but not for a whole transaction with resources, 3rd party APIs, or DBs. Moreover, it is also not possible to track what happens to local variables and parameters inside the function invocation automatically.
Today, we’re proud to announce that Thundra supports distributed tracing on top of its existing local tracing capabilities. This means that you can now trace the serverless transactions from its origin Lambda till to the end of its transaction. As you may know, Thundra is already capable of tracing functions locally to check which methods took how much inside an invocation. While we’re introducing distributed tracing, we combine it with our local tracing capabilities which unlocks the “full tracing” for the serverless community. With full tracing, you can both check the messages exchanged between functions during a transaction and see the variables of local values in the invocation making up that transaction. All on one console! You can see an example “Trace Map” below that a Lambda function gets triggered from API-Gateway and a serverless transaction begins. At the same time, you can see what happened in this function line-by-line.
Currently, we support the full tracing for Java, Node.js, Python and Golang runtimes but this is just a beginning! We will be adding more on it in the near future.
Read more for details by checking out our blog announcing this new update:
Don’t forget to try it in our demo environment. Thundra is free to use and set up takes only a few minutes. Get your account and start using Thundra today. We want to listen to your serverless observability challenges. We’re giving away Yan Cui’s “Production-Ready Serverless” to those who share their story with us.