Live availability for each public service, plus how fresh the ingested data is. There is no SLA on these services nor guarantee to any schedule or interval; these are observational only.
Uptime over the last 15 minutes, 1 hour, and 24 hours. Cells
without enough data yet show —.
| Service | Now | 15 min | 1 hour | 24 hours |
|---|---|---|---|---|
| HTTPS | … | … | … | … |
| MCP | … | … | … | … |
| NNTP | … | … | … | … |
| IMAP | … | … | … | … |
| POP3 | … | … | … | … |
| Blended | … | … | … | … |
— = no data for this window. 1 hour samples: up to 360 (TCP connect every 10 s). Latency for the most recent probe shown in the Now tooltip.
Last updated — · source: /healthz
| Tool | Calls | Errors | p50 | p95 |
|---|---|---|---|---|
| Loading… | ||||
Frequency and latency per MCP verb over the selected window. Latency colour: green < 0.5 s · yellow 0.5–5 s · red > 5 s. Samples shown after the slash. Tools with zero traffic in the window are omitted.
Where in the world the last 24 hours of requests came from, summed across every public surface (REST, GraphQL, MCP, git, mailing-list HTML, site). Country fill brightness is proportional to total request count; hover a country for the per-API breakdown.
| Country | Total | REST | GraphQL | MCP | Git | Mail HTML | Site |
|---|---|---|---|---|---|---|---|
| Loading… | |||||||
Client IPs are looked up against the DB-IP Lite IP-to-Country
database (CC-BY-4.0). Only the (country, API, minute) tuple is stored;
IP addresses are never persisted. Aggregated from primary node
(fra) traffic only — see /about for
coverage notes.
| Query | Calls | Mean | Max | Rows |
|---|---|---|---|---|
| Loading… | ||||
Top 10 statements by mean execution time from
pg_stat_statements, excluding the introspection query itself
and bare BEGIN/COMMIT/SET/SHOW.
Hover the query cell for the full statement (truncated to 200 chars
server-side). Same colour scale as MCP TOOL UTILIZATION:
green < 0.5 s · yellow 0.5–5 s · red > 5 s.
Per-host snapshot of CPU, memory, /data disk, disk I/O and network over the last 24 hours, sampled every 60 s on each node and averaged into 5-minute buckets. Sparkline colour switches to amber when the metric crosses its warning threshold and red when it crosses critical.
Thresholds: CPU warn 60% / crit 85%, MEM warn 70% / crit 90%, DISK /data warn 85% / crit 95%, DISK I/O warn 20 MB/s / crit 80 MB/s, NET warn 5 MB/s / crit 50 MB/s. CPU and MEM are tighter on these shared 2 vCPU / 4 GB instances than they would be on dedicated hardware. Source: /api/v2/host-metrics.
How recently each ingestion source produced new content. Ages are wall time since the latest record landed in PostgreSQL. There is no SLA on these intervals; they are observational.
| Inbox | Items | Latest message |
|---|---|---|
| Loading… | ||
| Repository | Commits | Symbols | Latest commit | Last fetched |
|---|---|---|---|---|
| Loading… | ||||
| Source | Kind | Last fetched | Next sync |
|---|---|---|---|
| Loading… | |||
Approximate monthly and annual cost to keep pg.ddx.io running.
Figures shown in USD; Exoscale invoices arrive in EUR and are converted
at €1 = $1.10. Source-of-truth:
infra/docs/cost.txt in the
infra repo
(last reconciled 2026-05-25 after Bundle A: both hosts upsized to
standard.large and 400 GB SSD).
| Provider | Service | Monthly | Annual |
|---|---|---|---|
| Exoscale | fra Standard.Large (4 vCPU / 8 GB) | $42.68 | $512.16 |
| Exoscale | fra block volume (400 GB SSD) | $39.60 | $475.20 |
| Exoscale | gva Standard.Large (4 vCPU / 8 GB) | $42.68 | $512.16 |
| Exoscale | gva block volume (400 GB SSD) | $39.60 | $475.20 |
| Exoscale | Egress (within plan) | $0 | $0 |
| Cloudflare | DNS & CDN (Free plan) | $0 | $0 |
| Cloudflare | Load Balancer (Standard, ~50 k qry/mo) | $5.50 | $66.00 |
| Cloudflare | R2 storage (~600 GB w/ lifecycle) | $9.00 | $108.00 |
| Cloudflare | R2 Class A ops (writes, ~50 k/mo) | $0.23 | $2.76 |
| Cloudflare | R2 Class B ops (reads, ~10 k/mo) | $0.01 | $0.12 |
| Cloudflare | R2 egress | $0 | $0 |
| Registrar | pg.ddx.io domain ($12 / yr amortised) | $1.00 | $12.00 |
| AWS SES | Outbound mail (alarms, ~1 k/mo) | $0.10 | $1.20 |
| Total | $180.40 | $2,164.80 | |
| Tip Jar (planned) | $0 | — | |
| Net (operator-funded) | −$180.40 | −$2,164.80 |
Figures are pinned to the live IaC: Exoscale instance type and block
volume sizes are read from infra/terranix/exoscale.nix;
Cloudflare Load Balancer and DNS are read from
infra/terranix/cloudflare.nix; R2 sizing is read from the
breakdown in infra/docs/cost.txt. Re-reconciled against
actual bills every quarter; if a number drifts, fix it there and the
table follows on next site-deploy. The Tip Jar is planned — the site does not currently accept donations.