# hive-metric A tiny CLI that pushes **a single labeled metric** to the OTEL collector, then exits. Built on the OpenTelemetry Rust SDK with the OTLP HTTP/JSON exporter. ## When to use it For emitting a one-off counter or gauge from a shell script or systemd unit without embedding an OTEL SDK in the caller — the harness and various hive scripts use it to record per-agent metrics. ## Usage ```text hive-metric [--type counter|gauge] [--labels key=value ...] ``` Standard OTEL environment variables are read automatically by the SDK: - `OTEL_EXPORTER_OTLP_ENDPOINT` — collector URL (**required**) - `OTEL_EXPORTER_OTLP_HEADERS` — auth headers (`Key=Value,...`) - `OTEL_RESOURCE_ATTRIBUTES` — resource labels (`k=v,...`) The harness populates all of these per-agent when `services.hyperhive.otel.enable = true`. See `docs/observability.md` for the collector setup and the metrics hyperhive exports.