Book Image

Building Serverless Python Web Services with Zappa

By : Abdulwahid Abdulhaque Barguzar
Book Image

Building Serverless Python Web Services with Zappa

By: Abdulwahid Abdulhaque Barguzar

Overview of this book

Serverless applications are becoming very popular these days, not just because they save developers the trouble of managing the servers, but also because they provide several other benefits such as cutting heavy costs and improving the overall performance of the application. This book will help you build serverless applications in a quick and efficient way. We begin with an introduction to AWS and the API gateway, the environment for serverless development, and Zappa. We then look at building, testing, and deploying apps in AWS with three different frameworks--Flask, Django, and Pyramid. Setting up a custom domain along with SSL certificates and configuring them with Zappa is also covered. A few advanced Zappa settings are also covered along with securing Zappa with AWS VPC. By the end of the book you will have mastered using three frameworks to build robust and cost-efficient serverless apps in Python.
Table of Contents (20 chapters)
Title Page
Dedication
Packt Upsell
Contributors
Preface
Index

Catching unhandled exceptions


Zappa provides a feature to capture unhandled exceptions. This will allow you to process the unhandled exception to raise an alert notification via email, SNS, or other sources. It depends on your requirements, but you can choose any sources to raise a notification. This will be really helpful so that you can track anything that's broken down in any deployed environment.

 

 

For example, if we wanted to send bulk email notifications to all developers and QA engineers for any deployed environment, Zappa provides an easy way to configure the mechanism of catching the unhandled exception. With the help of the exception_handler attribute, you can bind an exception handler method from which you can process the exception to send bulk email notifications.

The following is a code snippet of the Zappa settings file:

{
    "dev": {
        ...
"exception_handler": "your_module.unhandled_exceptions",
    },
    ...
}

Here, the exception handler is a method that's defined in...