Health Endpoint Monitoring pattern

Cloud-hosted applications are impacted by several factors, including network latency, the performance and availability of the underlying compute and storage systems, and the network bandwidth between them. The service can fail entirely or partially due to any of these factors. We need a system to verify system availability on a regular intervals.

The monitoring system should check for response code , response time , expiration of SSL certificates , effectiveness of CDN etc.

HealthMonitoring.png

Points to consider before implementing this pattern.

  • Is 200 Ok status code sufficient to verify the correctness of the application.
  • How many health monitoring endpoints to be exposed for an application ?
  • How much and what type of information to collect?
  • Do we need to cache the monitoring endpoint?
  • How to configure security of the monitoring endpoint ?

Ref : https://docs.microsoft.com/en-us/azure/architecture/framework/resiliency/monitoring

https://github.com/dotnet/AspNetCore.Docs/tree/main/aspnetcore/host-and-deploy/health-checks/samples/5.x/HealthChecksSample

https://www.amazon.in/gp/product/B009G8PYY4/ref=dbs_a_def_rwt_bibl_vppi_i0