https://github.com/otwieracz/fusionsolar-rs
fusionsolar-rs is a Prometheus exporter written in Rust that pulls statistics from Huawei PV (photovoltaic) inverters through the FusionSolar cloud API and exposes them as scrapeable metrics. It is designed to integrate solar power monitoring into a Prometheus and Grafana observability stack without requiring direct hardware access to the inverter.
The exporter collects three key metrics: day_power (total energy generated in the current day, in kWh), device_active_power (current power output), and device_temperature (inverter operating temperature). Currently, it supports String Inverter devices (FusionSolar device type 1), with the architecture allowing additional device types to be added.
The FusionSolar API enforces strict rate limiting and updates data infrequently, so the exporter uses a configurable polling interval that should be set to at least 120 seconds to avoid throttling. It runs as a Docker container, authenticates with FusionSolar credentials provided via environment variables, and serves metrics over HTTP for Prometheus to scrape.