Skip to content

memrust v0.6.1 — metrics, logs, official Docker image

Latest

Choose a tag to compare

@AIAnytime AIAnytime released this 28 Jul 08:09

Operational plumbing: the things a team checks before adopting infrastructure.

Metrics

GET /metrics serves Prometheus exposition — request counters and latency histograms by matched route (so cardinality can't blow up on user-supplied paths), plus per-namespace gauges for memories, index sizes, graph entities and WAL depth. Engine gauges are read live from the registry at scrape time, so they can't drift from reality.

memrust_memories{namespace="acme"} 1204
memrust_request_duration_seconds_bucket{route="/v1/recall",le="0.001"} 812
memrust_requests_rejected_total 3

Metrics name every namespace, so the endpoint needs an unscoped key when --api-key is set.

Structured logs

--log-format json emits one object per request — method, route, namespace, status, duration. text stays the default, off disables it.

GET /healthz

An unauthenticated liveness probe. This fixes a real bug: the Docker healthcheck hit /health, which answers 401 once --api-key is set, so every authenticated container would have been marked unhealthy. A probe shouldn't need to hold credentials.

Official Docker image

docker run -p 7700:7700 -v memrust-data:/data aianytime/memrust

Multi-arch (amd64 + arm64), non-root, with dependency layers cached so rebuilds are fast.

cargo install memrust
pip install --upgrade memrust
npm install memrust-client