Changelog¶
All notable changes to this project are documented here. The format follows
Keep a Changelog, and the project
uses semantic versioning. The Collector receiver is
versioned with the root module and tagged receiver/systemdreportreceiver/vX.Y.Z.
[Unreleased]¶
Added¶
provider: publish metrics through systemd's report framework (v260+).- Gauges, counters and string metrics; labels (
With) and objects (On); callback metrics (GaugeFunc,CounterFunc,StringFunc);Deletefor series that go away. - Lock-free, allocation-free updates; reads snapshot atomics.
- Names validated against systemd's rules at registration.
- Socket activation (
FromActivation), socket mode, owner and group, and a customCollectorinterface for other sources. - Empty providers answer
io.systemd.Metrics.NoSuchMetric, as systemd's own do. provider/prombridgeandprovider/otelbridge: publish an existing Prometheus registry or OpenTelemetry SDK reader, histograms and summaries included.scrape: discover and scrape every report source concurrently with per-source timeouts and limits; resolve each source's unit from its peer credentials and cgroup, and for socket-activated sources from the socket unit (systemd v262+).otelmap: map families to OpenTelemetry with resource attributes, counter start times and resets, raw or OTel-style naming, and self-metrics.sdmetrics-exporter: OTLP push over gRPC or HTTP, Prometheus/metrics,-oncefor inspection, YAML configuration (includingmanager_socketfor per-user scraping); exits cleanly on hosts older than systemd v260.systemdreportreceiver: OpenTelemetry Collector receiver built withmdatagenandscraperhelper(alpha).- Hardened
sdmetrics-exporter.service, sysusers.d file and default configuration, shipped in deb and rpm packages. - A documentation site (MkDocs) with guides, the exporter and receiver configuration reference and the OpenTelemetry mapping.
- Integration tests against systemd booted as PID 1 (Fedora rawhide, Arch
Linux), a benchmark gate against the base branch, a 90% coverage minimum,
and examples: the
queuedsample daemon, both bridges and the scraper.
Releases and their notes are on GitHub Releases.