Sign inSign up

yottabyte/meterlogger

By yottabyte

Updated 20 days 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

26 days ago

docker pull yottabyte/meterlogger