Chapter 8. Advanced AWS Lambda

As we start getting towards the end of the book, it’s time to learn some of the aspects of Lambda that are important as you start to build production-ready applications—error handling, scaling, plus a few capabilities of Lambda that we don’t use all the time, but are there—and important—when you need them.

Error Handling

All of our examples so far have lived in the wonderful world of rainbows and unicorns where no systems fail and no one makes a mistake in writing code. Of course, back in the real world, Things Go Wrong, and any useful production application and architecture needs to handle the times when errors occur, whether those be errors in our code or in the systems we rely on.

Since AWS Lambda is a “platform,” it has certain constraints and behavior when it comes to errors, and in this section we’ll dig into what kind of errors can happen, for which contexts, and how we can handle them. As a language note, we use the words error and exception interchangeably, without the nuance that comes between the two terms in the Java world.

Classes of Error

When using Lambda, there are several different classes of error that can occur. The primary ones are as follows, in order roughly of the time in which they can occur through the processing of an event:

  1. Error initializing the Lambda function (a problem loading our code, locating the handler, or with the function signature)

  2. Error parsing input into specified function parameters

  3. Error communicating ...

Get Programming AWS Lambda now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.