myheat-prometheus-exporter

command module
v1.4.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 28, 2024 License: GPL-3.0 Imports: 13 Imported by: 0

README

MyHeat Prometheus exporter

Экспортер метрик в Prometheus для оборудования, управляемого системами https://myheat.net. Это различное нагревательное оборудование, котлы, насосы, датчики, часто использующиеся в частных домах.

Сейчас умеет экспортировать следующие метрики:

  • Температура помещения myheat_env_temp_current
  • Целевая температура помещения myheat_env_temp_target
  • Происходит нагрев для достижения целевой температуры myheat_env_heat_demand
  • Температура на улице myheat_dev_weather_temp
  • Общее время котла во включенном состоянии myheat_env_heat_demand_seconds_total. Используется для подсчета энергопотребления
  • Состояние устройства myheat_dev_severity. Например: нормальное состояние, низкий баланс SIM-карты
  • Число секунд нагрева в рамках тарифа myheat_env_heat_tariff_seconds_total. Используется при подсчете потребления электроэнергии

Запуск

Для запуска экспортера достаточно собрать образ и запустить контейнер.

Переменные окружения:

  • MYHEAT_KEY - Токен из личного кабинета
  • MYHEAT_LOGIN - Логин для входа в личный кабинет
  • MYHEAT_EXPORTER_PULL_INTERVAL - интервал сбора данных через MyHeat API. Указывается в виде строоки в формате: 1h30m15s. Чтобы собирать данные раз в минуту, можно указать значение 1m. Минимальное значение для данного параметра 1s

Сборка образа:

docker build -t myheat-prometheus-exporter .

Запуск контейнера:

docker run -d \
  -e MYHEAT_KEY="Токен из личного кабинета" \
  -e MYHEAT_LOGIN="Логин для входа в личный кабинет" \
  -e MYHEAT_EXPORTER_PULL_INTERVAL="30s" \
  -p 3000:3000 \
  myheat-prometheus-exporter

Пример запуска в docker-compose:

services:
  myheat-prometheus-exporter:
    image:  myheat-prometheus-exporter
    build:
      context: .
      dockerfile: ./Dockerfile
    ports:
      - 3000:3000
    environment:
      MYHEAT_KEY: "Токен из личного кабинета"
      MYHEAT_LOGIN: "Логин для входа в личный кабинет"
      MYHEAT_EXPORTER_PULL_INTERVAL: "30s"

Получение метрик

Экспортер запускает веб-сервер на порту 3000/tcp и предоставляет метрики по роуту /metrics.

Grafana

Можно импортировать подготовленный дэшбоард Grafana Dashboard JSON Model.

alt Grafana Dashboard

Переменные:

  • electricity_tariff_1 Дневной тариф электроэнергии
  • electricity_tariff_2 Ночной тариф электроэнергии
  • heater_kwt Потребляемая мощность котла

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
internal

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL