Log fx through slog, snake_case health check keys (closes #27)
check / check (push) Successful in 2m0s

fx wrote its own steps of starting and stopping as plain text to
stderr. It now logs them with its own slog event logger through the
backend's logger, so off a terminal every line from start to stop is
JSON. The backend logs its name, version and architecture once at
start, through the logger's Identify, which nothing called before.

The health check's uptime keys are now uptime_seconds and
uptime_human, and its type and method take the names
GO_HTTP_SERVER_CONVENTIONS.md gives, HealthcheckResponse and
Healthcheck(). Its path, content type, status and code are unchanged.

Model: opus-5-5
This commit is contained in:
2026-10-03 16:29:46 +00:00
committed by sneak
parent 39ee6ca839
commit d209d87b3f
5 changed files with 41 additions and 18 deletions
+8
View File
@@ -23,6 +23,14 @@ latest run passes.
# Completed Steps
- 2026-10-03: the backend's logs are one stream (issue #27): fx logs its own
steps of starting and stopping through the backend's logger, so off a terminal
every line from start to stop is JSON, where fx used to write plain text to
stderr. The backend logs its name, version and architecture once at start. The
health check's uptime keys are now `uptime_seconds` and `uptime_human`; its
path, content type, `"status":"ok"` and 200 are unchanged. `SENTRY_DSN`,
`METRICS_USERNAME` and `METRICS_PASSWORD` are still read and still unused, and
left out of `backend/README.md`, until issues #94 and #95 wire them up
- 2026-10-03: root no longer acts outside `/data` when it prepares `DATA_DIR`
(issue #80): `bin/entrypoint.sh` runs `netwatch-server prepare-data-dir`,
which refuses a `DATA_DIR` that is not `/data` or a path below it written in