← Overview

dataTable

Sortable columns, and a table that survives a narrow screen.

Sortable columns

Four columns, three of them sortable, sorted by Last check on load. Click a header to sort by it: a fresh column starts ascending, the sorted one flips. The Requests and Median cells are formatted for people and carry a data-datatable-value for the machine; the dates sort by their <time datetime>. Two rows have gaps — an empty cell sorts last in both directions, because it is not a small value but no value.

Edge regions, last 24 hours
Region Requests Median Last check
Frankfurt 128,400 86 ms
Ashburn 94,120 141 ms
Singapore 41,880 203 ms
São Paulo 18,240 264 ms
Cape Town 7,310
Sydney 33,905 188 ms

Wide, with a sticky header and a sticky first column

Eleven columns, capped at 18rem tall — more than fits, on purpose. Scroll the box sideways: the region column stays put, and it carries whichever colour its row has — a stripe, or the one under your pointer — so it covers the columns passing underneath. Scroll it downwards and the header stays. The height is what makes that work: a sticky cell sticks inside its own scroll container, so without a cap the header would have nothing to stick to.

Deployments per region
Region Requests Median p95 Errors Uptime Cache hit Egress Version Deployed On call
Frankfurt 128,400 86 ms 214 ms 12 99.98 % 94.2 % 18.4 TB 4.12.0 Platform
Ashburn 94,120 141 ms 388 ms 47 99.91 % 91.7 % 14.1 TB 4.12.0 Platform
Singapore 41,880 203 ms 512 ms 8 99.99 % 88.3 % 6.7 TB 4.11.3 APAC
São Paulo 18,240 264 ms 701 ms 103 99.62 % 79.4 % 3.1 TB 4.11.3 LATAM
Cape Town 7,310 298 ms 844 ms 21 99.84 % 72.8 % 0.9 TB 4.10.7 EMEA
Sydney 33,905 188 ms 466 ms 15 99.95 % 90.1 % 4.5 TB 4.12.0 APAC
Tokyo 76,540 97 ms 245 ms 19 99.97 % 93.5 % 11.2 TB 4.12.0 APAC
Mumbai 52,470 167 ms 401 ms 34 99.88 % 85.6 % 7.9 TB 4.11.3 APAC

Stacked below 575px

The same kind of table, with data-datatable-stacked. Narrow the window below 575px and every row becomes a card of label/value pairs, with the header row surviving as a bar of sort chips — sorting is the one part of a table a phone wants more of, not less. The labels on the cards are written by the module from the header, and so are the explicit table roles, without which the cards would stop being a table for a screen reader. That is why the layout is keyed off data-datatable-ready: without the module, this stays the scrolling table above.

Open incidents
Incident Component Severity Opened Owner
INC-2041 Image pipeline 1 — critical Platform
INC-2038 Search index 2 — major Discovery
INC-2033 Checkout 3 — minor Payments
INC-2029 Mail delivery 2 — major Comms

No controls: the box itself takes the focus

Eleven columns again, this time with no sortable one — so the module adds no buttons, and nothing inside the box can take focus. Since the table is wider than the box, the module therefore makes the box a tab stop and names it by its caption, and the arrow keys scroll it. Tab to it and hold →. Make the window wide enough for the table to fit and the tab stop goes away again — a box that fits is not a dead stop in the tab order.

Retention windows per bucket
Bucket Class Objects Size Retention Replication Encryption Versioning Lifecycle Created Owner
assets-eu Standard 4,182,904 18.4 TB 90 days eu-central, eu-west KMS On Archive after 30 d Platform
assets-us Standard 3,067,431 14.1 TB 90 days us-east, us-west KMS On Archive after 30 d Platform
backups-cold Archive 128,940 92.7 TB 7 years eu-central KMS Off Never expire Operations
logs-raw Infrequent 9,884,215 41.9 TB 30 days eu-central SSE-S3 Off Delete after 30 d Observability