One battle's machine log
GET/admin/battles/:id/events
Every lifecycle event the recorder published for this battle, oldest first:
user.started, browser.ready, capture.started, capture.armed, the
clicks, spin.started, and how each seat ended.
The per-segment stream (segment.new, playlist.update) is deliberately
not stored — it fires several times a second per seat and would bury the
lifecycle it sits between. segment.failed is stored, because a failure is
rare and is the diagnosis.
Each event carries two clocks. at is the PRODUCER's — for a seat event,
the recorder Lambda's — and stored_at is when the row landed here. The gap
between them is queue depth plus clock skew, and a seat that looks late in
one and on time in the other is a different problem from one late in both.
A battle belonging to another casino is a 404, on the same terms as
GET /admin/battles/{id}: an empty log would confirm the id exists.
Permission: battles.read
Request
Responses
- 200
- 400
- 401
- 403
- 404
- 503
The battle's events, oldest first
X-Tenant-Id is missing, or limit is not a positive number
No session cookie, or it expired
The role lacks battles.read, or the caller is not a member of this casino
No such battle for this casino
The event log is not available on this instance