Agent update

This commit is contained in:
Frank Harris 2026-06-06 11:41:17 -05:00
parent c195c0930b
commit cc5f7bb90c
16 changed files with 474 additions and 85 deletions

View file

@ -65,6 +65,12 @@ The status implementation should check:
Marker files such as `SERVER_STOPPED` should not be treated as the final source of truth.
If the configured game port is listening but the managed screen/session is missing, the agent reports `ONLINE` with a warning in `last_error`. This mirrors the Windows agent and prevents a live game process from showing false offline/unknown solely because session tracking failed.
## Optional Resource Stats Database
Resource stats database submission uses Perl `DBI`, but `DBI` is optional for normal agent startup. The agent lazy-loads `DBI` only when resource stats are actually submitted. Missing `DBI.pm` should disable database stats submission with a readable log message, not abort the agent at startup.
## Logging
Relevant function:
@ -106,4 +112,3 @@ The agent also maintains screen logs and helper scripts inside its runtime area.
- It can resolve server ownership and screen users via helper functions such as `find_user_by_screen_id`.
- It must remain portable across distro variants, so avoid assuming one exact init system or one exact binary path.
- For Windows-targeted games running under Linux, Wine-related path conversion appears in startup path handling.