Skip to main content

No project description provided

Project description

https://img.shields.io/badge/code%20style-black-000000.svg

Handle AWS Lambda events.

Events are passed to handlers for processing. Each event is passed to the handler in this order:

  • Handler defined in the event

  • Http events handler (for WSGI applications)

  • SQS events handler (if configured)

  • Default handler (if configured)

  • Logger handler (if no default is defined)

Provided Handlers

  • pd_aws_lambda.handlers.wsgi.handler: convert HttpAPI requests to WSGI environs.

  • pd_aws_lambda.handlers.shell.handler: Run shell commands.

  • pd_aws_lambda.handlers.logger.handler: log the received event and context.

Usage

  1. Add pd-aws-lambda to your application dependencies.

    poetry add pd-aws-lambda
  2. Set the required environment variables according to your needs in your Python Deploy application configuration.

    # Python path to the WSGI application that will handle Http requests.
    PD_WSGI_APPLICATION=my_django_project.wsgi.application
    
    # Python path to the handler for SQS events.
    PD_SQS_HANDLER=my_custom_handlers.sqs_handler
    
    # Python path to the default fallback handler.
    PD_DEFAULT_HANDLER=my_custom_handlers.default_handler

Custom handlers

A handler is a python function that receives an event and a context and does something with them. It can return a value if it makes sense for the type of event. For example, HttpAPI handlers like the one we use to call your wsgi application (pd_aws_lambda.handlers.wsgi.handler) should return a dictionary compatible with the AWS HttpAPI to form an Http response.

def handler(event, context):
    """
    I handle AWS Lambda invocations.

    I print the received event and context.
    """
    print("The event:", event)
    print("The context:", context)

Developed to be used with Python Deploy.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pd_aws_lambda-1.0.0.tar.gz (10.2 kB view hashes)

Uploaded Source

Built Distribution

pd_aws_lambda-1.0.0-py3-none-any.whl (13.1 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page