Synthetic monitoring

In software design, web design, and electronic product design, synthetic monitoring (also known as active monitoring or proactive monitoring) is a monitoring technique that is done by using a simulation or scripted recordings of transactions. Behavioral scripts (or paths) are created to simulate an action or path that a customer or end user would take on a site, application, or other software (or even hardware). Those paths are then continuously monitored at specified intervals for performance, such as functionality, availability, and response time measures.

Synthetic monitoring enables a webmaster or an IT/Operations professional to identify problems and determine if a website or application is slow or experiencing downtime before that problem affects actual end users or customers. This type of monitoring does not require actual traffic, thus the name synthetic, so it enables companies to test applications 24x7, or test new applications prior to a live customer-facing launch.

Because synthetic monitoring is a simulation of typical user behavior or navigation through a website, it is often best used to monitor commonly trafficked paths and critical business processes. Synthetic tests must be scripted in advance, so it is not feasible to measure performance for every permutation of a navigational path an end user might take. This is more suited for passive monitoring.

Synthetic testing is useful for measuring uptime, availability, and response time of critical pages and transactions (how a site performs from all geographies) but doesn't monitor or capture actual end user interactions, see Website monitoring.

Synthetic monitoring will report myriad metrics, and it's up to the a webmaster or an IT/Operations professional to identify which ones are most important. Common metrics from synthetic website monitoring includes Time to First Byte, Speed Index, Time to Interactive, and Page Complete.

Demand for synthetic monitoring has grown exponentially corresponding to the underlying growth in websites/applications. IT/Operations staff need mechanisms to identify health and performance issues in advance of their customers identifying and reporting them to avoid customer satisfaction issues. To accomplish this they can write custom simulation scripts, or leverage the growing number of commercial synthetic monitoring solutions. Example include:


 * New Relic's Synthetics
 * F5's Distributed Cloud Synthetic Monitoring
 * Data Dog's Automated Synthetic Monitoring
 * Powerhouse Nudge Synthetic Monitoring by Atakama Technologies

By implementing Synthetic Monitoring IT/Operations staffs are able to identify application issues in advance of them becoming critical, and take remedial action. Identifying such issues can be difficult because of:


 * The number of applications monitored by an average sized organization can be several hundred
 * Issues may vary by geography; for example performance issues may be evident to users in Asia, but may not appear to users in Europe
 * IT/Operations staff need not only to identify the fact that an issue exists, but also need diagnostic information on what is causing the identified issue
 * IT/Operations staff often lack the historical perspective on application performance which can be helpful in diagnosing an evolving issue