B/MBertrand MbanwiENGINEER / BUILDER All workLet’s talk
OBSERVABILITY / RELIABILITYCASE STUDY / 4 minute read

Automated Status Page

A SIGNAL.A DECISION.AN UPDATE.

A monitoring pipeline that translates reachability and latency into understandable service states, with public publishing and optional incident automation.

Independent project · Recorded synthetic metric inputsThe 60-second overview
Checked against GitHub
Last successful check · 2026-09-05 22:54 UTC3537d26Refresh Career Atlas after public repository changes
THE SHORT VERSION

WHAT THIS
DEMONSTRATES.

  1. 01

    Grafana Cloud metrics feed a Python status engine with configurable thresholds.

  2. 02

    GitHub Actions publishes the resulting status document and page. An optional integration updates Atlassian Statuspage.

  3. 03

    A local review passed 139 tests, including thresholds, persistence, component management, and incident behavior.

01 / CONTEXT

THE PROBLEM.

A dashboard can expose many measurements while leaving a visitor unsure whether a service is working. Status publishing needs a clear decision rule, a timestamp, and a consistent way to handle degraded or missing signals.

Constraints that shaped the work

  • Keep monitoring credentials out of the public page.
  • Allow different thresholds for different services.
  • Publish a simple status document alongside the interface.
  • Treat scheduled updates as observations with a time, not instantaneous availability.
02 / FOLLOW THE SYSTEM

ARCHITECTURE.

Choose a stage to explore its purpose and supporting source.

ARCHITECTURE WALKTHROUGH01 / 04

Collect observations

The Grafana client queries Prometheus reachability and latency. Configuration sets query windows, service checks, and thresholds.

WHAT TO INSPECT

The monitoring configuration defaults to a 15-minute reachability window and a 5-minute latency window.

Read the implementation
RECORDED FROM PUBLIC SOURCE

CHANGE THE SCENARIO.

5 SEP 2026
OFFLINE RECORDING

Inspect inputs and outputs captured from the repository. Switching scenarios replays saved results; it does not run cloud services or a model.

INPUT / SCENARIO
{
  "reachabilityPercent": 99,
  "latencyMs": 100
}
RECORDED OUTPUT
operational

Default thresholds: operational requires reachability ≥ 95% and latency ≤ 200 ms. Degraded allows reachability ≥ 75% and latency ≤ 1000 ms. The worse signal wins.

Inspect the complete recording
03 / ENGINEERING JUDGMENT

THE TRADEOFFS.

01

Use the worse signal

Degrade status when either reachability or latency crosses a threshold.

The tradeoffThe rule is easy to audit, but threshold choices and observation windows strongly influence the published result.

Inspect the decision
02

Fail conservatively on missing metrics

Map missing reachability or latency to major_outage.

The tradeoffThe public page avoids showing healthy status without telemetry, but cannot distinguish an actual outage from an observability failure. An unknown state would make that distinction clearer.

Inspect the decision
03

Publish a static interface

Run monitoring server-side and publish its JSON result through Pages.

The tradeoffVisitors need no monitoring credentials. They see the most recent published observation, which may become stale if the workflow fails.

Inspect the decision
04 / WHAT THE WORK SHOWS

OUTCOMES & LIMITS.

139 tests passed in the recorded review

The repository’s status, management, and incident tests passed locally on 5 September 2026 using isolated fixtures and mocked integrations.

Supporting source

Threshold behavior is inspectable

The replay shows why 99% reachability with 500 ms latency is degraded under the default thresholds, and why missing values become an outage.

Supporting source
THE LESSON

A status page is a communication product as much as a monitoring product. Measurement quality, freshness, and the distinction between symptoms and causes matter as much as the color of the status indicator.

Where the evidence ends

  • The demonstration uses synthetic inputs, not current service measurements.
  • No uptime, recovery-time, or production reliability claim is made.
  • The current engine returns operational for an empty component list and major_outage for missing metrics. Both deserve explicit handling before wider operational use.
  • Automated postmortem text describes symptoms; it is not a verified root-cause analysis.
05 / CHECK THE WORK

THE SOURCEBOOK.

Reviewed 5 September 2026. These links point to the source revision used for this case study.

Source revision 4a30431 · View current workflow history ↗

KEEP EXPLORING

J.A.R.V.I.S.