This repository contains a collection of AWS Lambda extension examples and demonstrations across multiple programming languages (Go, Python, Node.js, Java, C#, Rust) and wrapper scripts (Bash, Python, Ruby). Each example illustrates how to build a Lambda extension that integrates deeply with the Lambda execution environment using the Extensions API for lifecycle event registration, and the Logs API/Telemetry API for observability data processing. The extensions perform tasks such as forwarding logs to external destinations (S3, Kinesis, Firehose, Elasticsearch, etc.), collecting and sending telemetry data, implementing custom runtime behavior via wrapper scripts, and caching data from AWS services like DynamoDB and Parameter Store. The repository serves as a practical guide for developers to understand and implement Lambda extensions for observability, security, and governance use cases.
This repository is a Node.js library implementing an OpenID 1.0/1.1/2.0 Relying Party (client). It enables Node.js applications to authenticate users via OpenID providers by handling discovery, association, authentication, and assertion verification. The library is modular, with separate modules for HTTP requests, XRDS parsing, and extension handling (Supporting SREG, AX, OAuth, UI, and PAPE extensions). It uses a callback-based asynchronous style and provides default in-memory storage for associations and discovered information, which can be overridden for persistent storage. The codebase shows signs of age but remains functional, with a test suite that includes integration tests against real OpenID providers.