an engineer's perspective on synthetic monitoring

An Engineer’s Perspective on Synthetic Monitoring

I’ll get the deep-nerd stuff out of the way up front: synthetic monitoring has a special place in my heart because it was my way into this whole observability/SRE/IT ops/monitoring space.

*Adjusts glasses*

My synthetic monitoring journey began as a Network Operations Center (NOC) engineer in the Managed Services department at a software company. When I started, we pretty much waited for things to break, browsed the site to confirm they were indeed broken, and then called the unfortunate sysadmin who was on-call that night.

That got dull fast, so I moved on to monitoring customers’ web front ends using an on-premises synthetic monitoring tool called SiteScope. Shortly after, I took over synthetic monitoring completely, creating Gomez and then Keynote scripts and analyzing data to make sure we were meeting customer Service-Level Agreements (SLAs).

I then advanced to my current company – SP6 – where I’ve implemented multiple different solutions with Splunk Synthetic Monitoring.

Now, I’m not here today to convince you that Splunk Synthetic Monitoring is the best synthetics platform out there (although, in my opinion, it hands-down is — skip to the end for a few reasons why).

Instead, I want to talk about synthetic monitoring more generally: what it is, why you might need it, and how it can impact your organization’s bottom line.

What is synthetic monitoring, anyway?

Synthetic monitoring involves scripting out a visit to a web page or set of pages and then running simulated versions of that visit automatically.  

It’s a cheap, easy-to-implement way to monitor simulated web transactions and gather detailed performance data like: 

Did the page load successfully? 

    • How long did each element take to load? 
    • If something was slow, what parts of the request and response were slow?  
    • Are key transactions working as expected? 

Developers can create scripts for various user journeys and actions such as navigating through a set of pages to make a purchase, filling out a contact form, or logging out. They can run these scripts whenever and however often they want.  

Why not Real User Monitoring (RUM)?

Real User Monitoring (RUM) is a similar technology that gathers performance data from real users instead of scripted bots. So why not just use RUM? 

Think back to high school science class: you need a control.   

Synthetics let you control every element of the transaction: what pages are visited, what browser and device are used, where the transactions are run from and how often, and so on. 

RUM, on the other hand, is uncontrolled. Is the user coming from a gigabit fiber connection or from a one-bar mobile connection out in remote Lincoln County, Colorado?   

Not accounting for factors like this can lead to confusing performance data that can then prompt incorrect conclusions about your performance. 

Additionally, synthetic monitoring allows you to conduct performance analyses whenever you want without requiring any traffic to your website. This is helpful when launching a new website changes in the middle of the night or when testing out a site that’s still in its trial phase.  

Advanced synthetic monitoring platforms like Splunk Synthetic Monitoring also allow you to conduct tests wherever you want, which leads into the next point… 

On-Prem or SaaS?

Numerous monitoring tools let you do simple synthetic checks from on premises, and this can be a good place to start. 

The reason I recommend a SaaS solution instead, however, is that a SaaS allows for multiple Points of Presence (PoPs) and eliminates single points of failure. 

In real life, you will find internet problems that are restricted to particular geographic regions, ISPs, or mobile carriers. A synthetic solution lets you choose which locations — and in certain  cases, which carriers — you conduct tests from, helping you pinpoint exactly where the problem is.   

If I see a problem on the SP6 Blog home page from everywhere in the world, for instance, I know that I have a real problem. But if it’s only affecting the PoPs in the Southwestern United States over Verizon mobile, I can tell it is likely a Verizon issue and outside my control. 

Why does all this matter? How does it affect the bottom line?

When things are broken, synthetic monitoring alerts you and allows you to fix them before your customers notice. 

When things are not broken, synthetic monitoring allows you to benchmark performance so that you can optimize it for the future.  

Why does performance matter so much? 

If you’re dealing with internal web properties, performance impacts user adoption. And if you’re dealing with public-facing web properties, performance is directly correlated with conversion rates. 

According to a recent study by Portent that analyzed over 100 million page views, a site that loads in one second has a conversation rate 3x higher than a site that loads in five seconds (Wiegand, 2022). Additionally, 46% of users report abandoning a web page all together if it takes just a few seconds too long to load (Haileyesus, 2020).  

Synthetic monitoring gives you the tools you need to ensure that every component of your webpage loads properly and quickly. With a solid synthetics practice in place, you can be confident that the performance health of your website is exactly where it needs to be. 

How SP6 can help

Using Splunk Synthetic Monitoring, SP6 can equip your organization with today’s most advanced end-to-end synthetics platform.   

You’ll be able to monitor performance from nearly 50 global locations, visualize how changes affect users through film strips and video playback, track and report SLOs and SLAs, and view 300+ optimization recommendations that are tailored to you. 

To get started on your synthetic monitoring journey today, contact us now