Deploy the fleet collector
The collector is a single container that servesPOST /v1/ingest (agents push cost telemetry, Bearer-keyed), the dashboard, and the cost API on port 8080. It needs Postgres, a public HTTPS URL, and an ingest key you create.
Request flow: agent -> POST /v1/ingest (Bearer key) -> collector -> Postgres -> dashboard.
Pick a platform
For a single-node / SQLite setup (just yourself, no fleet), see Docker deployment instead.
Connect your agent
Once the collector has a public HTTPS URL and you have the ingest key, point your agents at it. The explicit form:VOICEGW_COLLECTOR_URL and VOICEGW_API_KEY in the agent’s environment and use VoiceGatewayObserver(project="prod"). Non-OpenRTC agents call voicegateway.attach(session, collector_url=..., api_key=...) instead.
Verify
Replace<url> and <key> with your collector’s public URL and ingest key:
Notes
The Postgres collector path works as of v0.9.2 (pin
>= 0.9.2; the image is mahimairaja/voicegateway:0.9.2). The ingest key must not start with vk_. Only /v1/ingest and /health need to be public; all other endpoints can be firewall-restricted to your internal network.