The Stonemason's True Level: On the Practice of Synthetic Transactions

We spend our days watching dashboards, our eyes tracing the green lines of health checks and the steady pulse of uptime percentages. It’s comforting, like watching a metronome tick. But a metronome in an empty room proves nothing about the orchestra’s ability to play a symphony. Our basic health checks are that metronome. They confirm the instrument is powered on, but not that it can produce the right music. For that, you need to play it yourself. You need a synthetic transaction.

A synthetic transaction is a scripted, automated interaction that mimics the exact path of a real user. It’s the stonemason’s true level—a tool that doesn’t just check if the surface exists, but if it is perfectly, functionally level. While a simple HTTP GET to your `/login` page might return a 200 status code, a synthetic transaction would actually populate the username and password fields, click the submit button, and verify it lands on the dashboard page. It tests the entire chain of logic, not just the front door.

Laying the First Stone

Implementing this is less about complex tools and more about a shift in perspective. Start with your absolute critical path—the journey that represents the core value of your service. For an online store, it’s not the homepage being up; it’s a user adding a product to their cart and completing the checkout. Script that.

Write a small program or use a monitoring service that can execute a headless browser. It should navigate to your site, find a specific test product, add it to the cart, and proceed through the payment flow (using a test payment gateway, of course). The final validation should be the appearance of an order confirmation message or a specific thank-you URL. This script runs not every minute, but perhaps every five or ten, from a location outside your infrastructure. It’s your canary, not in a coal mine, but in the concert hall, listening for the first note of dissonance.

The value is immediate and profound. You’ll catch failures your health checks never could: a misconfigured CSS selector that breaks the ‘Submit’ button, a third-party API for shipping calculations that has started timing out, or a recent database migration that subtly broke the cart item association. These are the cracks a simple level would miss, but a true level finds instantly.

This practice moves us from passive observation to active participation. We are no longer just watching the lights blink on the server rack; we are continuously walking through our own digital front door, touching the walls, and ensuring the foundation is sound. It is the ultimate act of taking our own service seriously, of sampling our own elixir before expecting anyone else to take a sip. By building and heeding these synthetic journeys, we stop assuming the orchestra is playing and start listening to the music ourselves.

Notes & further reading

A few pages I came back to while writing this: