Code instrumentation and monitoring
Our work does not end with writing an application and deploying it to the target execution environment. It is possible to write an application that after deployment will not require any further maintenance, although it is very unlikely. In reality, we need to ensure that it is properly observed for errors and performance.
To be sure that our product works as expected, we need to properly handle application logs and monitor the necessary application metrics. This often includes:
Monitoring web application access logs for various HTTP status codes
A collection of process logs that may contain information about runtime errors and various warnings
Monitoring system resources (CPU load, memory, and network traffic) on remote hosts where the application is run
Monitoring application-level performance and metrics that are business performance indicators (customer acquisition, revenue, and so on)
Luckily there are a lot of free tools available for instrumenting your...