Skip to content

Synthetic

Definition

Monitoring web transactions can be done in many ways including metrics, but one of the most popular ways out there is synthetic monitoring.

Synthetic monitoring, also known as synthetic testing, active or proactive monitoring, is an application performance monitoring practice that uses scripted recordings of a series of requests and emulates them to simulate the user's interactions with your website or application. In a nutshell, it helps you understand your user's experience and improve website performance by predictive behavior.

Synthetic performance monitoring involves running constant tests to provide information about critical business transactions, applications availability, website speed, and much more.

Synthetic monitoring tools help answer questions like:

  • Is the site or app up and running?
  • How fast is my site at this moment?
  • Are the 3rd Part APIs still operating?
  • Are the response chains fully correct?

Why Need Synthetic Monitoring

  1. Fix performance issues before they affect end users
  2. Benchmark your website
  3. Test your scaling capabilities
  4. Test new product features before launching
  5. Monitor third-party APIs and critical business processes
  6. Ensure SLA compliance
  7. Reduce MTTR

Synthetic Monitors

API Monitor

HTTP(s) Monitor

The HTTP(s) Monitor sends HTTP requests to your web pages from different checkpoints located around the world and reports back on their availability.

Ping Monitor

The Ping Monitor simulates the basic network connectivity test known as ping. This monitor assesses the reachability and responsiveness of a target server or network device by sending ICMP echo requests and measuring the time taken for the corresponding echo replies.

Port Monitor

The Port Monitor builds a TCP connection between MCT and your target server, and then sends a configurable value to the remote. This monitor assesses the reachability and availability of a target server.

Certificate Monitor

The Certificate Monitor leverages the openssl tool to compare the expiration attribute in a certificate with a configurable duration threshold for assessing certificate expiration.

Docker Monitor

The Docker Monitor triggers image execution with a configurable command line and parameters. This monitor assesses the Docker status on the MCT side and the result of your executed image.

UI Monitor

The UI Monitor is an advanced testing option in MCT built on the robust open-source Appium framework, designed to streamline automated UI testing for applications. Its intuitive approach allows users to define test scenarios in a simple YAML file format, minimizing the need for complex coding. By mimicking real user interactions, UI Monitor ensures accurate and reliable testing results.

Service Offering

The Synthetic UI Monitoring Service enables teams to monitor and validate the performance and availability of their UI systems. Our service is designed to ensure efficient resource utilization while maintaining optimal performance. The primary reason for this offering consideration is the cost associated with Windows server compute resources and licensing, which requires careful management to optimize expenses and avoid unnecessary overhead.

We offer two resource utilization models: Dedicated Pool and Shared Pool.

  • Dedicated Pool: For specific monitoring service requests, we will negotiate the size of the dedicated pool based on requirements. CPU utilization rates will be monitored to avoid resource waste. - If utilization spikes for a short duration, we leverage the Shared Pool for temporary testing. - If sustained high utilization persists, additional resources will be allocated to a dedicated instance.
  • Shared Pool: Shared resources are used for general-purpose monitoring and testing.

Cost

Infrastructure Provider: WEBEX DATACENTER

ITEM Unit UNIT PRICE UNIT PRICE PER MONTH
VCPU 1 $15 MONTH $15
LICENSE 1 $23.07/2 YEAR $1

By average, 1 case requires 2 Windows instances (2 * 4 vCPU = 8 vCPU).

For a month:

  • Cost per instance: $16 × 8 = $128
  • Time cost per case:
    • Average runtime for 1 case: 10 minutes
    • Number of runs per hour: 6
    • Total runs per month: 6 × 24 × 30 = 4,320 cases
    • Unit price per case: $128 ÷ 4,320 = $0.0296 ≈ $0.03
Test Mode Compute Mode Case Amount Cost (per month)
Desktop 2 Windows (8 vCPU) 1 $0.03
Desktop 1 Windows (4 vCPU) 1 $0.015
Browser 0 Windows, Linux only 1 $0.0009

Infrastructure Provider: AWS

  • TBD

Utilization Model per Environment

flowchart LR

B["Dev"]

B --> C["Staging"]

C --> D["Production"]

Resource Utilization Model

  • Development Environment: Shared
  • Staging Environment: Shared / Dedicated
  • Production Environment: Shared / Dedicated

Getting started