Skip to content

Requirements

Requirements

To run

Nothing. telemetryd is a single statically linked binary with no runtime dependencies — no libc to match, no JVM, no Python, no shared libraries.

Operating system Linux (any distribution, musl-static) or macOS 11+
Architecture x86_64 or aarch64
Disk The configured budget, default 10 GiB, plus headroom
Memory ~16 MB idle, plus roughly 1.3x storage.max_segment_bytes under load — about 400 MB at the 256 MiB default, and measured at 380 MB. Measured on musl at three cap sizes; see below
Network One TCP port, default 4319

On memory. The figure above is measured rather than estimated, driving the musl release build at full ingest rate: resident size tracks storage.max_segment_bytes and is stable across many seal cycles, not a function of how much traffic arrives. Lower that setting on a small machine — it is the one knob that moves memory — at the cost of more, smaller segments.

Prebuilt binaries are published for all four combinations: x86_64-unknown-linux-musl, aarch64-unknown-linux-musl, x86_64-apple-darwin, aarch64-apple-darwin.

Memory, measured

On x86_64/aarch64 musl, with the buffer filled to three quarters of the cap and nothing sealed:

max_segment_bytes idle under load what the rule above predicts
64 MiB 16 MB 169 MB 163 MB
128 MiB 16 MB 247 MB 246 MB
256 MiB (default) 16 MB 380 MB 412 MB

The rule is deliberately the conservative one: it over-predicts at the default, which is the safe direction for someone sizing a box from this page. Idle is lower than the figure it used to quote — that number was a single hand measurement and is now three, taken by the soak, which asserts the ceiling on every release rather than trusting this table to stay true.

Not required

Stated because these are the dependencies comparable systems do need:

  • No database. Storage is files in one directory.
  • No object storage.
  • No collector or agent. Applications send OTLP straight to telemetryd.
  • No protobuf or C extension on the client. OTLP/HTTP JSON is first-class, which is what makes this work under PHP-FPM.
  • No TLS certificate. telemetryd speaks plain HTTP; terminate TLS at a reverse proxy. See Security.

To build from source

Rust 1.89 or newer, stable
C toolchain None. There are no C dependencies in the tree at all, which is what keeps the static musl builds straightforward
cargo build --release

Client compatibility

telemetryd is built for cboxdk/laravel-telemetry (ingest) and cboxdk/laravel-telemetry-ui (query). The exact API subset, and how it was derived, is in COMPATIBILITY.md.

Anything else speaking OTLP/HTTP JSON, Prometheus remote_write, or the Loki, Tempo and Prometheus query APIs will work to the extent it stays inside that subset.