console · the fleet view
One screen over a fleet that keeps changing.
Cells arrive, serve, and are replaced. The console is where the record lands: what is live, what it costs, what failed, and what the rotation did about it.
the record · live from this box
The fleet, as this box recorded it.
Read from this origin's own event store over /api/one/runs — one box's runs, never a peer's. Every count below is computed from the rows shown.
the fleet
one row per host in the store| host | runs | failed | last it did |
|---|---|---|---|
| reading /api/one/runs… | |||
the ten newest runs
newest first, failures kept in| tag | argv[0] | outcome | uptime |
|---|---|---|---|
| reading /api/one/runs… | |||
computed from those rows
The record, counted.
The collector never blocks the cell.
A collector that shares a box with a serving engine has one job: be boring. If it is slow, the record should degrade and the engine should not.
- the append
- One line to a journal, on the box. No network call on the hot path — the journal write is the only synchronous work, and it never waits on the collector.
- the flusher
- One task on a timer with a bounded queue. A slow or dead collector drops the oldest non-lifecycle batches first and keeps every lifecycle row, so the shape of a run survives even when the detail does not.
- the store
- Per box, unreachable from a peer. Three tables answer three questions: what happened, what is happening now, what it said.
- the retention
- Events kept half a year, log lines kept a month. The run record outlives the noise it produced, which is the order you want when the question arrives late.
The console writes no access log of its own and the site makes no third-party request, so the record in the store is the only record that exists.
If the API is down, you will see it here.
The status pill at the top of this page asks this origin's own /api/health and shows what it answers. It reads a relative path — never a configured address — so the page checks whichever environment served it. The record above does the same over /api/one/runs: an origin without the route shows a labelled empty state rather than an error.