Thundra provides users to monitor and troubleshoot their serverless system applications seamlessly. Local and distributed tracing, metrics and logs of an invocation are the many ways to observe serverless application in a glance. In addition to these features checking logs is the most efficient and ancient way to see any content that you printed in case of a problem. However, it is not straightforward to check for the chunk of logs. Thundra comes with a solution that gives you the flexibility to search your serverless application logs: Log Investigation.
Under favor of log investigation feature, you can display your log messages in as a whole and you can search through them in Logs Page. Procure your logs using different filtering options in this page such as:
Log level - Some logs can be more critical than the others. Logs can have different levels of severity such as
console.error(). Also, you can define different log levels using Thundra logger and filter them with Log Investigation feature.
Log Message - Content of printed log is the main part of discovering problems. You can now search for the log messages which contain exact words or expressions with wild cards. As an example, you can type
*undr* and logs to bring logs that contain
Log Context - You can use the standard output or any logger of Thundra or custom logger. You can filter the logs according to their source with this field.
Now, procuring logs in one of the main issues however discovering more about a log is another one. Here, Thundra provides you a way to get through other features of Thundra. After you filter your logs, you can navigate to invocation where log item is printed. When you reach the related invocation that responsible for producing this log, you can check your code and its metrics such as health, duration, and interaction between other resources.
To navigate the invocation of a log, click Go to Invocation button and you can display what actually happens in Invocation Detail page. Here you can find spans that are operated in this invocation and details of each operation to find the real problem.