Logging
The logger will log all actions that happen. To do this, use the state.Logger
object in a route. The Logger
object has a couple of functions that you can use. The most important are the following:
SystemLogf
: System loggingJudgeLogf
: Log something the judge doesAdminLogf
: Log something the admin does
The logger will write to the backend's memory, as well as the database. When the server restarts, Jury will load all logs from the database.
Example log output
[2025-07-09T21:16:45Z] SYSTEM | Server restarted
[2025-07-09T21:16:45Z] SYSTEM | API created and running
[2025-07-14T14:51:59Z] ADMIN | Log in
[2025-07-14T14:52:09Z] JUDGE | Log in, assigned token dFsh5ZcRttD4CHmz
[2025-07-14T14:52:13Z] JUDGE | Judge Judge Name (68715dc620fd42313b223755) | Read welcome message
[2025-07-14T14:52:45Z] ADMIN | Unpaused clock
[2025-07-14T14:52:49Z] JUDGE | Judge Judge Name (68715dc620fd42313b223755) | Picked new project TestProject-MO (6842e19239e3c24050d215ac)