Aether

Monitoring

Health checks, Prometheus metrics, logs and data integrity.

Health

On the S3 port, for load balancers and orchestrators:

  • GET /_aether/health/live: the process is up.
  • GET /_aether/health/ready: the metadata store answers.

aether health does the same check for container health checks.

Metrics

Prometheus format at GET /metrics on the admin port, without credentials: requests by operation and status, latency, bytes in and out, per-bucket objects and bytes, disk space, garbage collection and scrubbing.

/metrics shows bucket names and sizes without sign-in. The admin port listens on loopback by default; keep it that way, or restrict who can reach it, if bucket names are sensitive.

Logs

One access log line per request: method, path, status, S3 operation, access key, peer and duration. Query strings, which carry presigned signatures, are never logged. Use text or JSON:

aether.toml
[log]
format = "json"

Every response carries a request id (x-amz-request-id, which SDKs include in error messages) that also appears on every log line of that request.

Data integrity

Every block is re-read and checked against its checksum once a week by default, rate-limited ([scrub] settings). aether status shows the last result and aether scrub runs one now. Damaged blocks are logged as errors and counted in aether_scrub_corrupt_blocks_total.

On this page