gameserver-observability · v0.1.1
0015. Alerts per game server
- Status: accepted
- Date: 2026-10-21
Context
The alerts go to people who run one or a few game servers. Every series of the pack carries
server, a short name the operator sets per game server. instance can hold a host address or
an admin hostname (ADR 0013), and alert texts end
up in chat channels and tickets. An alert also needs a severity that routing can use and a link
to what to do.
Considered options
- Every alert aggregates
by (server)(plus the one label that says where, such asthread,jobormountpoint), carries only the fixed labelseverity(criticalorwarning), and has the annotationssummary,descriptionandrunbook_url. - Keep all labels of the source series, as many rule sets do.
- Add a team or service label for routing.
Decision
Chosen option 1, because an alert then names the game server in words the operator chose, never
an address, and two targets of one server (for example both probes) report as one alert.
critical means act now: the game server or its database is down for players, or the admin
interface is open to anyone. warning means act within the day. Each runbook_url points to the
alert’s own section of docs/runbook.md on the main branch, with the same five rows everywhere
(meaning, impact, diagnosis, mitigation, fix). Routing labels are left to the operator’s
Alertmanager, because the pack cannot know its teams.
Consequences
- Good:
tests/test_rules.pyenforces the shape: the labels and annotations, noinstanceand no per-player label in any grouping or text, a runbook section for every alert and none without one, and a firing and a quiet promtool case for every alert in a test that loads its file. - Bad: jobs the pack does not ship (node_exporter, mysqld_exporter) must carry the
serverlabel too, or their alerts fire without naming a server; the configuration page shows how. Links to the runbook onmainshow the newest text, which can differ from an older release’s rules.
Not affiliated with or endorsed by Cfx.re, Rockstar Games or Take-Two.
docs/adr/0015-alerts-per-game-server.md on GitHub
Licensed under Apache-2.0. Source: luminare-dev/gameserver-observability at v0.1.1.