Operations | Monitoring | ITSM | DevOps | Cloud

Latest Posts

Debugging AWS Lambda Timeouts

Some time ago, an ex-colleague of mine at DAZN received an alert through PagerDuty. There was a spike in error rate for one of the Lambda functions his team looks after. He jumped onto the AWS console right away and confirmed that there was indeed a problem. The next logical step was to check the logs to see what the problem was. But he found nothing. And so began an hour-long ghost hunt to find clues as to what was failing and why there were no error messages.

How to Debug AWS Lambda Performance Issues

Ten years ago, Amazon found that every 100ms of latency would cost them roughly 1% in sales. This is a pretty clear statement on the importance of user experience! It’s especially true in today’s ultra-competitive market where the cost of switching (to another provider) for consumers is lower than ever. And one of the most common performance issues in serverless architectures is related to elevated latencies from services we depend on.

Hooray, We're Cool! At least according to Gartner :)

We’re thrilled to announce that Gartner has named Lumigo a cool vendor in its recent Cool Vendors in Performance Analysis for Cloud-Native Architectures report by Padraig Byrne, Josh Chessman, Federico De Silva, Pankaj Prasad, Charley Rich, published May 18, 2020. The report explains something we at Lumigo heartily agree with: in a cloud-first world, the lines between development and operations are blurring.

Unlocking new serverless use cases with EFS and Lambda

Today, the AWS Lambda platform has added a new arrow to its quiver – the ability to integrate with Amazon Elastic File System (EFS) natively. Until now, a Lambda function was limited to 512MB of /tmp directory storage. While this is sufficient for most use cases, it’s often prohibitive for use cases such as Machine Learning, as Tensorflow models are often GBs in size and cannot fit into the limited /tmp storage.

A time machine for your env variables

One of the great things about Lumigo is that it records a lot of context about each Lambda invocation. This includes the invocation event and its return value, as well as the environment variables that were in use at the time. I find this super helpful because it gives me all the relevant information about an invocation in one place. I don’t have to jump between different screens to find the relevant information and then piece the clues together in my head.

Feature Spotlight: System Maps

Lumigo’s System Map is a real-time visualization of your entire application. A bird’s eye view of the whole stack with filters that allow you to drill down into a subset of your infrastructure. Our systems have grown exponentially both in scale and complexity. AWS takes care of scaling automatically, ensuring your application will scale gracefully regardless of the programming language, load, or location.

Feature Spotlight: Timeline

Lumigo’s Transaction Timeline lets you see in a glance the flow of a transaction across its components and the latency caused by each, allowing you to easily identify bottlenecks and issues. Distributed tracing is a popular method for monitoring and profiling transactions in a microservices architecture. It’s what developers use to pinpoint failures, performance drops and other problems.

Feature Spotlight: Auto-Tracing

Lumigo’s Auto-Tracing allows you to implement distributed tracing on your Lambda functions with 3-clicks and no manual code changes. If you’ve already decided to move to a serverless infrastructure, you probably understand the importance of monitoring your AWS Lambdas and what it might entail. For the few out there that are still wondering what monitoring AWS Lambda means, I’ll break it down for you in a couple of steps.