Introduction
In the previous chapter, you used services to ensure the security of your serverless architecture. You used an API Management instance to protect your serverless functions from denial-of-service attacks, and you used Azure Active Directory B2C to protect your clients' private data (stored in its login process).
When you have created a complex and sophisticated serverless architecture, it's incredibly important that you're able to maintain it and recover it from failures. Luckily, large classes of failures, such as memory leaks and insufficient resources, should be absent because serverless services autoscale resources, but other errors, such as network failures and security breaches, can still happen. The only way you can fix these failures is by understanding what failures have occurred, and the only way you can do that is with some form of observability.
In this chapter, you will learn about observability and how to use Azure Application Insights to help you collect and analyze...