aws-samples / aws-lambda-extensions

A collection of sample extensions to help you get started with AWS Lambda Extensions
MIT No Attribution
442 stars 145 forks source link
aws-lambda

AWS Lambda Extensions

AWS Lambda extensions

AWS Lambda Extensions are a new way for tools to more easily integrate deeply into the Lambda execution environment to control and participate in Lambda’s lifecycle.

You can use extensions to integrate your Lambda functions with your preferred monitoring, observability, security, and governance tools. You can choose from a broad set of tools provided by AWS Lambda partners or you can create your own Lambda extensions.

Extensions use the Extensions API, a new HTTP interface, to register for lifecycle events and get greater control during function initialization, invocation, and shutdown. They can also use environment variables to add options and tools to the runtime, or use wrapper scripts to customize the runtime startup behavior.

For more information on using the features of Lambda extensions, see Using AWS Lambda extensions.

For more information on building Lambda extensions, see Building Extensions for AWS Lambda.

Sample extension demos and examples

In this repository you will find a number of demos and sample projects from AWS and AWS Partners to help you get started with building your own extensions.

AWS examples

Extension Demos

Extension examples by language

Logs API demos and example extensions

Other extension examples

Wrapper script extension examples by language

AWS Lambda Ready Partner examples that are open-source

Coralogix HashiCorp Vault Honeycomb
Coralogix is a machine data analytics SaaS platform that drastically improves the delivery & maintenance process for software providers. The extension provides full integration of Lambda functions with the Coraligix service The HashiCorp Vault extension makes it easy for operators to manage secrets and make them available for developers to use within their function code, without having to make their functions Vault aware. The Honeycomb Lambda extension allows you to send messages from your Lambda function to Honeycomb by just writing JSON to stdout. The extension receives the messages and forwards them to Honeycomb as an event.
View extension code View extension code View extension code
Lumigo New Relic Sumo Logic
Lumigo helps identify functions that are CPU- or network-bound. This allows you to improve their performance by increasing their memory size. An AWS Lambda extension to collect, enhance, and transport telemetry data from your AWS Lambda functions to New Relic. The Sumo Logic extension, along with Sumo Logic's continuous intelligence platform, enables you to get instance visibility into the health and performance of your mission-critical serverless applications.
View extension View extension View extension

Additional examples that are open-source

Available AWS Lambda Ready Partner extensions

Additional Resources

Contributing guidelines

See CONTRIBUTING for more information.

Security issue notifications

If you discover a potential security issue in this project we ask that you notify AWS/Amazon Security via our vulnerability reporting page. Please do not create a public github issue.

Licensing

This library is licensed under the MIT-0 License. See the LICENSE file.