Effective Synthetic Monitoring
Why do we need a synthetic monitoring and how should we integrate it into our software development chain?
Nowadays, downtimes of business applications result in a loss of revenue because a user order cannot be placed and this user may not return in the future. Uptime has now become a major concern of business and IT departments.
Based on my experience, manual monitoring of application availability, accuracy and performance is very time consuming and too expensive. A much better approach is to identify some critical use cases within the affected applications, automate those and execute them regularly at the required business locations.
This so-called synthetic monitoring allows you to identify downtimes prior to they affecting the end user. In addition, performance, accuracy and availability metrics could be permanently collected and used to raise a ticket if certain thresholds were violated.
The flipside of synthetic monitoring is that a change in an application under monitoring could result in false alerts. To avoid such situations you should make synthetic monitoring part of your development chain and test your synthetic scripts also during acceptance test of your business applications.
Ideally, you should make your performance engineering team responsible for the monitoring platform and maintenance of the synthetic scripts. In addition, I recommend selecting one of the synthetic monitoring suites, which would allow you a re-use of existing performance testing scripts.