Storage Provider Telemetry
Configure and manage telemetry for Shelby storage providers
When you run a Shelby storage provider (Cavalier), your node sends telemetry data to help monitor network health and performance. Telemetry is enabled by default.
No personal information is collected. Shelby telemetry only collects software metrics like storage utilization, performance data, and the IP address of your storage provider.
What is Collected
- Storage metrics — Blob counts, storage utilization, read/write operations, request latency
- System metrics — CPU, memory, disk I/O, network connections
- Identification — Storage provider address and chain ID
Disabling Telemetry
Disabling telemetry is not recommended. It makes it harder to identify and debug issues affecting your storage provider.
[telemetry_config]
enabled = 0Prometheus Metrics Endpoint
Cavalier can optionally expose a GET /metrics endpoint in Prometheus exposition
format. This is a pull-based endpoint that you scrape with your own
monitoring stack — Prometheus, OpenTelemetry Collector, Datadog Agent, or any
compatible tool. It is separate from the push-based telemetry described above.
The endpoint is disabled by default. To enable it, add the following to your config:
[metrics_config]
endpoint_enabled = 1
endpoint_host = "0.0.0.0"
endpoint_port = 9090endpoint_host— IPv4 address to bind. Use"0.0.0.0"to listen on all interfaces.endpoint_port— Port to listen on. Default9090.
Once enabled, cavalier run spawns a lightweight HTTP server alongside the main
process. If the metrics server exits unexpectedly, cavalier continues running
normally and logs a warning.
If you move the cavalier binary, ensure metrics_server.py is in the same
directory. The metrics endpoint will not start without it.
Troubleshooting
Telemetry not sending
- Verify
enabled = 1in config - Ensure network access to the telemetry endpoint
- Check logs for errors
Metrics endpoint not responding
- Verify
endpoint_enabled = 1in[metrics_config] - Check that
metrics_server.pyis alongside thecavalierbinary - Ensure the configured port is not in use and is reachable
- Check cavalier logs for
metrics-serverwarnings