System status
A live reading of the pipeline that moves market data from the venue to your screen — what is streaming, what has fallen back, and what carries the site when something stops. Everything below is measured right now; nothing is a track record.
The ingest worker is alive, its sockets are delivering, and prices are written to the cache as the venue sends them.
- Symbols on socket
- 300
- Subscribed on the live ticker sockets, spot and perpetuals together
- Symbols watched
- 0
- Symbols holding depth, trade and candle channels because a terminal is watching them
- Ticker frames received
- 58.06M
- Counted over the worker’s current run — it resets on restart
- Last heartbeat
- 10:13:03
- 2026-08-30 UTC · written every 10 s, expires after 30 s
Subsystems
Four pieces carry a price from the venue — a live Binance public data feed — to your screen. Each row says what the piece does, what the heartbeat reports about it right now, and what its failure looks like from a chair. That last part matters because a degraded feed does not look broken; it looks slow, and the difference between slow and stale is the whole point of this page.
Spot ingest
StreamingHolds the spot websocket and writes live 24-hour tickers for the most liquid pairs as the venue sends them. The rest of the catalogue refreshes on a 60-second REST sweep even when everything is healthy — the socket carries the pairs people watch, the sweep carries the long tail.
When degraded — A socket silent for 45 seconds stops being trusted, and the sweep tightens to 15 seconds and carries every pair. On screen: spot prices step every 15 seconds instead of ticking continuously — current, but coarser, and the boards say so with a feed badge.
Perpetuals ingest
StreamingThe same job for perpetuals, built differently because the venue’s futures ticker channel accepts a subscription and then delivers nothing — a measured behaviour, not an assumption. Perpetual prices are rebuilt from the live trade tape plus a REST 24-hour baseline, and the forming one-minute candle is folded from the same tape.
When degraded — Degraded looks the same as spot: the 15-second REST sweep carries every contract until the tape delivers again.
The last funding-and-liquidation pass skipped no contract for a stale mark price.
Terminal detail feed
IdleA second socket that opens depth, trade and candle channels for exactly the symbols open terminals are watching, and drops each one when its last watcher leaves. Idle is its healthy resting state — nothing subscribes until a terminal opens. The heartbeat reports what this socket has open, not proof it is delivering.
When degraded — When this path fails, an open terminal polls the venue directly: the order book refreshes every 3 seconds instead of ten times a second. Visibly coarser — and still current.
Web tier
ServingThe servers rendering pages and relaying streams — including this one. It does not self-report, and does not need to: this reading arriving is the measurement. Were this tier down, you would be looking at an error page, not a status page.
When degraded — Its degraded mode is the fallback story below — with the worker’s cache empty or gone, every market read goes to the venue’s public REST API directly, request by request.
The settlement rail
Two more workers report beside market ingest: a deposit watcher that credits confirmed on-chain transfers to the ledger, and a withdrawal worker that can carry an approved payout to a signed broadcast. Both are real, and both are confined by configuration to test networks — the rail refuses mainnet outright, and testnet tokens carry no monetary value, so every balance here remains simulated paper money. The Deposit and Withdraw pages expose the configured address, request, history or refusal state; these rows report whether the machinery behind those surfaces is actually running.
Deposit watcher
WatchingScans its chain for transfers to issued deposit addresses and credits each one only once it is buried deep enough to trust — after re-reading the block at the deposit’s height, so a chain reorganisation orphans the record rather than paying it. With no address issued it idles, and idle is its healthy resting state.
The heartbeat reports it bound to chain id 56.
When degraded — Its chain endpoint stopped answering, or a scan step failed — which would otherwise look exactly like a chain with no deposits on it. Nothing is credited on a guess; the pass retries until its reads succeed.
Withdrawal worker
IdleFollows any payment already broadcast through to settlement, then starts approved ones — every transition behind an atomic claim, the signed transaction recorded before it is sent. It starts only when payouts are explicitly enabled, the faucet is closed and the configured signer is healthy. Every request reaches it only after one human approval. The pill names which refusal applies rather than reporting an idle it has not earned.
The heartbeat reports it bound to chain id 56.
When degraded — A payment already on the chain is being followed but a step is failing or waiting on an operator. Nothing is re-sent and nothing is released on the strength of an outage.
A dead worker makes pages slower, not blank
The ingest worker and its cache are an acceleration layer, not a dependency — a rule the code enforces rather than a slogan. Every server-side market read tries the cache first and, finding nothing, calls the venue’s public REST API for the same data. Streams degrade the same way: a terminal that cannot be pushed to falls back to polling.
So the failure mode of everything above is cadence, not absence: the same numbers, arriving less often. What never happens is a blank board — or a frozen price dressed as a fresh one, which is why streaming surfaces carry a badge naming the mode they are in.
What this page cannot tell you
A venue’s status page usually has three more things: an uptime percentage, an incident history, and a row of 90-day bars. This one has none of them, because the heartbeat it reads is a live value with a 30-second memory and nothing records it over time. There is no history to compute those from — and an uptime figure computed from nothing would be an invented statistic wearing a decimal point.
Two smaller gaps, same reason. The frame counter measures the worker’s current run, not a record — it resets on every restart. And everything here measures our connection to the venue, not the venue itself: the venue having a bad day of its own looks, from here, like a healthy feed delivering less.
Catalogue
- Spot pairs trading
- 1,358
- Perpetual pairs trading
- 567
Filtered against the venue’s live catalogue. Its ticker endpoint returns every symbol ever listed — roughly 3,600 on spot — so an unfiltered count would overstate the product about threefold and show delisted pairs at frozen prices.
Verify this yourself
This page renders one endpoint. It returns 503 rather than 200 when ingest is down, and names the fallback carrying the site in the meantime — so a monitor, or a sceptic, can hold it to the same standard this page holds the worker.