Project

Ferrite: embedded systems log shipper

A 900KB static binary that tails syslog on ARM edge devices and ships to any HTTP endpoint with retry and backpressure.

  • Go
  • ARM
  • Observability

The problem

Fleet of ARM devices on lossy LTE. Existing agents were 60MB Python bundles
that OOM'd under backpressure. We needed something that fits in 1MB and
never drops logs it promised to keep.

Design

  • Backpressure by construction: bounded ring buffer with explicit
    drop accounting — the dashboards show drops, not silence.
  • Static binary: CGO_ENABLED=0, distroless-adjacent, cross-compiled
    for arm64/armv7 in a 6-stage Dockerfile.
  • Config as code: a single TOML that is validated at startup; the
    binary refuses to run half-configured.

Results

900KB binary, 12MB RSS ceiling, zero silent data loss across an 8-month
run. The drop-accounting design — refuse to lie — became a team principle.