Crate lambda_sqs
source ·Expand description
lambda_sqs
Specialised lambda_runtime to accept and process events from SQS.
§SQS Events
SQS dispatches events to the a lambda function in batches (often, it seems to my surprise). This crate provides a lambda_runtime implementation which expects to receive a batch of messages in the SqsEvent type and provides a method to transform the batch of events to a vector of your Struct.
§Example
In Cargo.toml add lambda_sqs as a dependency.
[dependencies]
lambda_sqs = " {0.2.7"
use lambda_sqs::{handler_fn, Context, Error};
use lambda_sqs::SqsEvent;
#[tokio::main]
async fn main() -> Result<(), Error> {
lambda_sqs::run(handler_fn(my_handler)).await?;
Ok(())
}
async fn my_handler(e: SqsEvent, c: Context) -> Result<(), Error> {
let events: Vec<YourStruct> = e.into_t();
Modules§
- Diagnostic utilities to convert Rust types into Lambda Error types.
- Tower middleware to be applied to runtime invocations.
- Utilities for Lambda Streaming functions.
async fn(Request) -> Result<Response, Error>
- This module provides primitives to work with
tracing
andtracing-subscriber
in Lambda functions.
Structs§
- Configuration derived from environment variables.
- The Lambda function execution context. The values in this struct are populated using the Lambda environment variables and the headers returned by the poll request to the Runtime APIs.
- Diagnostic information about an error.
- Incoming Lambda request containing the event payload and context.
- A simple container that provides information about a single invocation of a Lambda function.
- Metadata prelude for a stream response.
- Lambda runtime executing a handler function on incoming requests.
- Type that accepts a batch of messages from SQS
- A streaming response that contains the metadata prelude and the stream of bytes that will be sent to the client.
Enums§
- An enum representing the response of a function that can return either a buffered response of type
B
or a streaming response of typeS
.
Traits§
- a trait that can be implemented for any type that can be converted into a FunctionResponse. This allows us to use the
into
method to convert a type into a FunctionResponse. - An asynchronous function from a
Request
to aResponse
.
Functions§
- handler_
fn Deprecated Return a newServiceFn
with a closure that takes an event and context as separate arguments. - Starts the Lambda Rust runtime and begins polling for events on the Lambda Runtime APIs.
- Returns a new
ServiceFn
with the given closure.
Type Aliases§
- Error type that lambdas may result in