Blog

Easily Debug Your AWS Lambda Functions With Honeycomb

 

With the Honeycomb extension for AWS Lambda, you no longer need to make your Lambda functions Honeycomb-aware.

Today, AWS announced the general availability of AWS Lambda Extensions, which make it easy for us to send logs from your Lambda functions directly to Honeycomb. In October, we announced Honeycomb’s extension for AWS Lambda as part of a preview launch. Today, we’re pleased to announce everyone can now use this extension to easily debug their AWS Lambda functions with Honeycomb.

Using AWS Lambda with Honeycomb

Developers that use Honeycomb for application observability no longer need to write special code to send their debugging data to Honeycomb. The extension automatically sends any structured logs emitted to stdout or stderr by your Lambda function to your chosen dataset in Honeycomb. Install the extension as a Lambda Layer, and configure it with your Honeycomb API key and dataset name. That’s it. It’s just that easy. No custom code required.

“Many Honeycomb customers use AWS Lambda as part of their production service stack,” said Ben Darfler, Engineering Manager at Honeycomb. “Now they can easily get the debugging data they need to understand how their AWS Lambda functions are behaving in production. This also makes it easier than ever for anyone running AWS Lambda to start debugging those functions with Honeycomb.”

What is AWS Lambda and what are AWS Lambda Extensions?

AWS Lambda is a serverless compute service that lets you run code without provisioning, managing, or scaling servers or worrying about integrations and runtimes. With Lambda, you can run code for virtually any type of application with zero administration. For any production applications, Honeycomb observability lets you quickly identify and resolve performance issues. As Lambda adoption grows, so does the need for developers to debug their critical application functions.

The AWS Lambda Extensions API provides a simple way to extend AWS Lambda’s execution environment. Extensions run in parallel with Lambda function execution and they can run logic outside of the function’s invocation. Extensions can start before the function is invoked or also run after the function execution is complete. Honeycomb’s extension runs completely outside of your AWS Lambda functions and ensures your structured logs are sent to Honeycomb, even after the execution of your Lambda function has terminated.

How it works

Add the Honeycomb extension for AWS Lambda to your Lambda function as a Layer. Then add your Honeycomb API Key and Dataset as environment variables in your Lambda function runtime environment. That’s it. You can find additional configuration options and exact instructions in our docs.

As long as your Lambda functions emit structured data to stdout or stderr, you don’t need to worry about anything else. The new Honeycomb Lambda Logs extension decreases the overhead, latency, and cost of sending events to Honeycomb while increasing the reliability of that transmission. We’re excited to see this become generally available because it provides a big win for anyone using AWS Lambda with Honeycomb.

Getting started

To get started with the Honeycomb extension for AWS Lambda, head to our docs page and follow the instructions. Let us know what you think by reaching out to us in our Pollinators Community Slack group.