What are monitoring and observability?
Most deployments perform monitoring using logging and metrics. This allows an organization to track the application’s performance, usage, and health. It is also used to detect failure states in an application. Monitoring is about reacting to the analysis of the data that is being collected:
Figure 12.1 – Basic monitoring of a service
Some examples of monitoring include the following:
- Kubernetes checking whether a container is still running or responding by performing a health check
- Tracking the query performance when swapping out one database for another
- Automatically scaling services based on the CPU and memory usage
- Sending alerts when the error rate of an endpoint exceeds a certain threshold
The data that is produced from your monitoring efforts is fed into dashboards so that basic questions can be answered. The data is also used to configure alerts so that when a problem is...