Thundra

Thundra: Serverless Observability for AWS Lambda

The black box nature of AWS Lambda and other serverless environments means that identifying and fixing performance issues is difficult and time-consuming. Built for straightforward debugging, monitoring, and observability, Thundra provides deep insight into your entire serverless environment. Thundra collects and correlates all your metrics, logs, and traces, allowing you to quickly identify problematic invocations and also analyzes external services associated with that function. With Thundra’s zero overhead and automated instrumentation capabilities, your developers are free to write code without worrying about bulking up their Lambdas or wasting time on chasing black box problems.

Get Started    Discussions

Functions List Page

Functions List Breakdown

Functions List Breakdown

The Functions List page can be considered Thundra Web Console's homepage, giving you a direct view of your functions being monitored. You may navigate to the page using the functions icon present in the navigation bad on the left of the console.

Function Icon

Function Icon

The Functions List page displays all your deployed functions according to the query you set using the query bar and helper on the top. Moreover, you may also change the time constraint on the functions you are displaying using the time option next to the query bar. Overall the Functions List page is the one main page for you to navigate through all your deployed functions and see their monitoring data.

As can be seen from the illustration above, the Functions List page can be broken down into various components that all help you filter through your functions and view all monitoring data pertaining to an individual function. These components are as listed below:

Query List

The Query List component which is on the right of the Functions List page lists all the defined queries that you can use to filter through the list of functions displayed. It can be split into two sections which include Predefined queries and Saved Searches.

The Predefined section lists all the Queries that Thundra has created for you to allow quick and convenient filtering of your Lambda functions. These include the following predefined queries:

  • Most Costly - Order functions by monthly estimated cost in descending order.
  • Most Erroneous - Order functions by error count in descending order.
  • Most Invoked - Order functions by invocation count in descending order
  • Node.js Functions - List only those functions whose runtimes are Node.js
  • Slowest - Order functions by average duration in descending order
  • Top Memory Consuming - Order by average memory usage in descending order
  • Lat Invoked - Order by last invocation time in descending order

The saved search section of the Query List shows all the queries that you would like to save after writing them in the Query Bar or via the Query Helper.

To use a query in the Queries List, simply select a query and the function listed shall be filtered and ordered depending on the selected query. Moreover, by clicking or hovering a query you will see two buttons appear on the right of the query, allowing you to either delete the selected query or setting the query as the default query and hence filtering your functions according to the default query whenever you visit your Thundra console.

Query Options

Query Options

Editing Listed Queries

Editing Listed Queries

Query Bar

The Query Bar, which sits on top of the listed functions, allows you to write your custom queries to filter through your functions. Two buttons are present at the end of the Query Bar and they allow you to run and save the written query respectively.

Using Query Bar

Using Query Bar

As can be seen from the illustration above, the 'Run' button shall execute whatever query there is in the bar, and the 'Save' button shall open up a drop menu on which you can select saving the query as Search or Alert Policy. The Save as Search Dialog which will allow you to name the query you wish to save. The Save as Alert Policy view will allow you to save this condition as an alert policy. It is explained in detail here.

Query Save Details

If your role in the organization is Admin or Account Owner, you can save queries as public so that everyone in the organization can see the saved query. You can still save some queries as private so that only you can see the saved query. If you are User or Developer, you can only save the query for yourself and your query won't be visible to the whole organization.

Saving Queries as Alert Policies

If your role in the organization is Admin or Account Owner or Developer, you can save queries as alert policies. The dropdown menu is not visible to the User role.

Time Setting

The Time Setting drop-down is present at the right of the Query Bar and you can use it to list all the functions that were last invoked within the chosen time setting. There are default time range settings for you to choose, but if you may also specify your own custom range by clicking on "Custom Range" which will then bring up the Custom Range view allowing you to set the time range you would like to apply when viewing your Lambda functions.

Default Time Ranges

Default Time Ranges

Custom Dates

Custom Dates

Search Bar

The search bar which lies just on top of all the listed functions allows you to search your list of functions by name.

Function Info

Every listed function has basic information so that you may know what function you are looking at in the list. This information includes the following fields:

  • Function Name - The name of the Lambda function invoked
  • Last Invoked Time - The time elapsed since the last time the function was invoked
  • Lambda Info - The runtime, AWS region, stage name, and project name of the Lambda function

The Lambda info is displayed in the form of various badges with different colors. The badges are arranged in the order as listed below, with the following color codes:

Function Infor Legend

Function Infor Legend

Function Info

Function Info

Invocation Summary

The invocation Summary lists vital information of your Lambda function according to all its invocations. These statistics can allow you to get an overview of your Lambda function's performance, especially in terms of its erroneous and economic nature. The illustration below describes the statistic keys present in the view.

Invocation Info Legend

Invocation Info Legend

It must be noted that ‘Estimated Cost’, ‘Estimated Monthly Cost’ and ‘Health’ are calculated invocation stats whereas the other invocation stats are derived from the outcome performance of the invocation. This outcome information is then used to calculate the previously mentioned three stats. ‘Health’ is simply the error count over the total invocation count whereas, the ‘Estimated Cost’ is derived from AWS as the cost incurred from the invocation and the ‘Estimated Monthly Cost’ is calculated by simply extrapolating the ‘Estimated Cost’.

Performance Summary

An overview of the computing performance of each Lambda function can be viewed in the Performance Summary. The statistics provided aim to give you a clear picture of how your AWS Lambda is running concerning memory usage and duration, allowing you to tweak your functions accordingly. The statistics provided include average, median, and 99th percentile of runtime duration and memory usage.

Monitoring Options

The monitoring options allow you to navigate to more detailed information on the function of choice. Clicking any one of these options navigates you away from the Functions List page to the Function Details page with the relevant information according to the data set selected from the Monitoring Options. This includes:

  • Invocations - Lists all invocations of the specific Lambda functions, and allows you to see each invocation separately.
  • Performance Analysis - Allows you to analyze the overall performance of your Lambda function according to the performance of your invocation.
  • Metrics - Provides graphical illustrations of the performance of the specific Lambda function.

Functions List Page


Suggested Edits are limited on API Reference Pages

You can only suggest edits to Markdown body content, but not to the API spec.