Sign inSign up

yottabyte/meterlogger

By yottabyte

•Updated about 2 months ago

Read heat, grid, solar, and ventilation meter data and write it to a time-series or SQL database.

Image
Internet of things
Monitoring & observability
0

50K+

yottabyte/meterlogger repository overview

⁠MeterLogger

MeterLogger reads data from utility meters and writes it to one or more time-series or relational databases. It runs one process per meter type (one container per source), reading on a configured interval and fanning each reading out to every enabled sink, concurrently.

Source: github.com/yottabytesolutions/meterlogger⁠ License: MIT

⁠Supported sources

SourceProtocolConnection
heatM-Bus (EN 13757)USB-to-M-Bus serial adapter
gridDSMR P1 Dutch smart meterUSB-to-P1 serial cable
solarEnphase Envoy HTTP APILocal network
ventilationDucoBox HTTP APILocal network

⁠Supported sinks

QuestDB, PostgreSQL, MySQL, ClickHouse, TDEngine, TimescaleDB, and stdout. All enabled sinks receive every reading concurrently.

⁠Quick start

docker run -d \
  --name meterlogger \
  -v ./config.yaml:/root/.meterlogger.yaml:ro \
  -p 8080:8080 \
  --device /dev/ttyUSB0:/dev/ttyUSB0 \
  yottabyte/meterlogger --source grid

config.yaml selects which sinks are enabled and holds their connection details. A full annotated example is in config.example.yaml⁠; the field reference is in documentation/configuration.md⁠.

--source selects which of the four sources this container runs (heat, grid, solar, ventilation). Run a separate container per source you want to collect.

The image exposes:

  • /healthz and /readyz on port 8080 for liveness/readiness probes
  • /metrics on port 8080 for Prometheus scraping
  • a built-in HEALTHCHECK (meterlogger healthcheck, probes /readyz)

⁠Tags

  • latest - most recent build of the default branch
  • sha-<commit> - immutable build for a specific commit
  • X.Y.Z, X.Y, X - published releases (semantic versioning), once a version has been tagged

All tags are multi-arch (linux/amd64, linux/arm64) and include SBOM and provenance attestations.

⁠More

Full documentation, including deployment examples (Docker Compose, Kubernetes), architecture, and troubleshooting, lives in the documentation/⁠ folder of the GitHub repository.

Tag summary

Content type

Image

Digest

sha256:939ec9206…

Size

10.8 MB

Last updated

about 2 months ago

docker pull yottabyte/meterlogger