Skip to main content
GET /app/metrics returns a JSON snapshot for monitoring the GOWA server. The route uses the server’s configured authentication and does not require X-Device-Id or a registered device.
The response uses the normal code, message, and results envelope. Set the server URL and credentials before running the curl examples. Use the public HTTPS URL for a remote server and include APP_BASE_PATH when configured.

Top-level results

Logged-in and connected counts measure different states. A stored session can remain logged in while its device is disconnected.

System fields

Treat nullable metrics as unknown rather than zero. CPU time and process resident memory depend on Linux /proc. Container memory uses the standard /sys/fs/cgroup mount, trying cgroup v2 before v1. These fields can be null on other platforms or when the relevant files are unavailable.
Folder measurements are cached for one minute. They are best effort and omit unreadable entries. Directory symlink targets are not traversed. Folder bytes do not include a remote PostgreSQL database, and they are not a replacement for the filesystem free-space measurement.

Poll the snapshot

Poll at an interval appropriate for your monitoring system. Compare cumulative cpu_seconds values across snapshots to calculate CPU use over an interval. Account for process restarts by checking started_at before calculating deltas. Use /app/info for enabled features, base path, and media limits. Use /app/metrics for resource usage. Both endpoints work before a device exists.