UptimeBoard is building a hosted status page service for SaaS companies. Each customer gets a public page (e.g., `status.example.com`) showing:
- Component status - list of services (API, Dashboard, Database) with status indicators (operational, degraded, outage).•Uptime history - a 90-day uptime bar graph per component showing daily/hourly availability.•Incidents - admins create incident reports with updates ("Investigating" → "Identified" → "Monitoring" → "Resolved"). Subscribers get email/SMS notifications.•Scheduled maintenance - announce upcoming maintenance windows.•Health checks - automatic HTTP/TCP/ping checks every 60 seconds. Auto-create incidents when a check fails 3 times in a row.
Targeting 2,000 customers each with a public status page.
Design a status page service (like Statuspage.io) showing uptime, incident updates, and health checks. Build this architecture under realistic production constraints, then validate tradeoffs in the design lab simulation.
Request path: The solution keeps ingress, service logic, and stateful dependencies separated so each layer can scale independently.
Reference flow: Web Clients -> API Gateway -> API Service -> Primary SQL DB -> Monitoring -> Log Aggregator