DOP-C02 Practice Question 17: Synthetics Canary User Journey
AWS Certified DevOps Engineer – Professional (DOP-C02) · Test 2 · question 7 of 10
An e-commerce site's checkout is a multi-step browser flow: sign in, add an item to the cart, and pay with a test card. Twice this quarter a front-end release broke the payment step overnight, when the site has almost no traffic. Nobody noticed until customers complained the next morning. The operations team wants to detect a broken checkout within 5 minutes even when there are no users on the site, to see a screenshot of the step that failed, and to alarm on the result.
Which solution meets these requirements?
Show answer and explanation
Answer:
CloudWatch Synthetics canaries are scripts that run on a schedule and "follow the same routes and perform the same actions as a customer". The docs note this lets you "continually verify your customer experience even when you don't have any customer traffic". Node.js and Python canaries drive a headless browser through Playwright, Puppeteer, or Selenium, so one script can walk the whole sign-in, cart, and payment flow. Canaries can store screenshots of the UI, run as often as once per minute, and publish metrics to the CloudWatchSynthetics namespace that a CloudWatch alarm can watch. A broken payment step fails the next run, within 5 minutes, whether or not any real user is on the site.
Option A checks one URL. A health check can confirm that the checkout page loads and contains a string, but it cannot sign in, fill a cart, or submit a payment, so a broken payment step still passes. It also takes no screenshots.
Option B is real-user monitoring. RUM reports what actual visitors experience, so when nobody is on the site overnight there are no sessions and nothing to alarm on. That is the exact gap the stem describes.
Option C is built from real requests to the service. With no overnight traffic, an SLO on latency and faults has almost no data to evaluate, and a front-end bug in the payment page might not produce server-side faults at all. It also gives no screenshot.
Reference: Synthetic monitoring (canaries)