telegraf:

This commit is contained in:
Homelab Cursor 2026-06-25 17:43:54 +02:00
parent 015cb247f4
commit 381fb14139
2 changed files with 148 additions and 114 deletions

View file

@ -1,60 +1,60 @@
[[outputs.influxdb]] [[outputs.influxdb]]
urls = ["http://127.0.0.1:8086"] urls = ["http://127.0.0.1:8086"]
database = "iobroker" database = "iobroker"
namedrop = ["temperature", "io_state", "power"] namedrop = ["temperature", "io_state", "power", "node_status"]
[[inputs.mqtt_consumer]] [[inputs.mqtt_consumer]]
servers = ["tcp://192.168.178.104:1883"] servers = ["tcp://192.168.178.104:1883"]
topics = [ topics = [
"openWB/global/WHouseConsumption", "openWB/global/WHouseConsumption",
"openWB/global/DailyYieldHausverbrauchKwh", "openWB/global/DailyYieldHausverbrauchKwh",
"openWB/evu/W", "openWB/evu/W",
"openWB/evu/WhImported", "openWB/evu/WhImported",
"openWB/evu/WhExported", "openWB/evu/WhExported",
"openWB/evu/DailyYieldImportKwh", "openWB/evu/DailyYieldImportKwh",
"openWB/evu/DailyYieldExportKwh", "openWB/evu/DailyYieldExportKwh",
"openWB/evu/WPhase1", "openWB/evu/WPhase1",
"openWB/evu/WPhase2", "openWB/evu/WPhase2",
"openWB/evu/WPhase3", "openWB/evu/WPhase3",
"openWB/pv/W", "openWB/pv/W",
"openWB/pv/WhCounter", "openWB/pv/WhCounter",
"openWB/pv/DailyYieldKwh", "openWB/pv/DailyYieldKwh",
"openWB/housebattery/W", "openWB/housebattery/W",
"openWB/housebattery/%Soc", "openWB/housebattery/%Soc",
"openWB/housebattery/WhImported", "openWB/housebattery/WhImported",
"openWB/housebattery/WhExported", "openWB/housebattery/WhExported",
"openWB/housebattery/DailyYieldImportKwh", "openWB/housebattery/DailyYieldImportKwh",
"openWB/housebattery/DailyYieldExportKwh" "openWB/housebattery/DailyYieldExportKwh"
] ]
data_format = "value" data_format = "value"
data_type = "float" data_type = "float"
name_override = "openwb" name_override = "openwb"
topic_tag = "topic" topic_tag = "topic"
# OpenWB Wallbox/Ladepunkt Daten # OpenWB Wallbox/Ladepunkt Daten
[[inputs.mqtt_consumer]] [[inputs.mqtt_consumer]]
servers = ["tcp://192.168.178.104:1883"] servers = ["tcp://192.168.178.104:1883"]
topics = [ topics = [
"openWB/lp/1/W", "openWB/lp/1/W",
"openWB/lp/1/%Soc", "openWB/lp/1/%Soc",
"openWB/lp/1/kWhCounter", "openWB/lp/1/kWhCounter",
"openWB/lp/1/kWhDailyCharged", "openWB/lp/1/kWhDailyCharged",
"openWB/lp/1/kWhChargedSincePlugged", "openWB/lp/1/kWhChargedSincePlugged",
"openWB/lp/1/APhase1", "openWB/lp/1/APhase1",
"openWB/lp/1/APhase2", "openWB/lp/1/APhase2",
"openWB/lp/1/APhase3", "openWB/lp/1/APhase3",
"openWB/lp/1/boolPlugStat", "openWB/lp/1/boolPlugStat",
"openWB/lp/1/boolChargeStat", "openWB/lp/1/boolChargeStat",
"openWB/lp/1/ChargeStatus", "openWB/lp/1/ChargeStatus",
"openWB/lp/1/kmCharged", "openWB/lp/1/kmCharged",
"openWB/global/kWhCounterAllChargePoints", "openWB/global/kWhCounterAllChargePoints",
"openWB/global/DailyYieldAllChargePointsKwh" "openWB/global/DailyYieldAllChargePointsKwh"
] ]
data_format = "value" data_format = "value"
data_type = "float" data_type = "float"
name_override = "openwb_wallbox" name_override = "openwb_wallbox"
topic_tag = "topic" topic_tag = "topic"
[inputs.mqtt_consumer.tags] [inputs.mqtt_consumer.tags]
source = "openwb" source = "openwb"
device = "wallbox" device = "wallbox"

View file

@ -1,54 +1,88 @@
# Telemetrie-Ingestion -> InfluxDB 'sensors' (Telegraf, additiv). # Telemetrie-Ingestion -> InfluxDB 'sensors' (Telegraf, additiv).
# Raum-Satelliten (+/temp) + Heizraum (Temp + digitale io-Signale). # Raum-Satelliten (+/temp) + Heizraum (Temp + digitale io-Signale) + Ölknoten.
# Routing: dieser Output nimmt NUR temperature/io_state; openwb.conf-Output dropt sie. # Routing: dieser Output nimmt NUR temperature/io_state/power/node_status; openwb.conf-Output dropt sie.
[[outputs.influxdb]] [[outputs.influxdb]]
urls = ["http://127.0.0.1:8086"] urls = ["http://127.0.0.1:8086"]
database = "sensors" database = "sensors"
namepass = ["temperature", "io_state", "power"] namepass = ["temperature", "io_state", "power", "node_status"]
# --- Raum-Satelliten: <raum>/temp --- # --- Raum-Satelliten: <raum>/temp ---
[[inputs.mqtt_consumer]] [[inputs.mqtt_consumer]]
servers = ["tcp://127.0.0.1:1883"] servers = ["tcp://127.0.0.1:1883"]
topics = ["+/temp"] topics = ["+/temp"]
data_format = "value" data_format = "value"
data_type = "float" data_type = "float"
name_override = "temperature" name_override = "temperature"
topic_tag = "" topic_tag = ""
[[inputs.mqtt_consumer.topic_parsing]] [[inputs.mqtt_consumer.topic_parsing]]
topic = "+/temp" topic = "+/temp"
measurement = "_/_" measurement = "_/_"
tags = "node/_" tags = "node/_"
# --- Heizraum: DS18B20-Temperatur(en) heizraum/<ROM> --- # --- Heizraum: DS18B20-Temperatur(en) heizraum/<ROM> ---
[[inputs.mqtt_consumer]] [[inputs.mqtt_consumer]]
servers = ["tcp://127.0.0.1:1883"] servers = ["tcp://127.0.0.1:1883"]
topics = ["heizraum/+"] topics = ["heizraum/+"]
data_format = "value" data_format = "value"
data_type = "float" data_type = "float"
name_override = "temperature" name_override = "temperature"
topic_tag = "" topic_tag = ""
[inputs.mqtt_consumer.tags] [inputs.mqtt_consumer.tags]
node = "heizraum" node = "heizraum"
[[inputs.mqtt_consumer.topic_parsing]] [[inputs.mqtt_consumer.topic_parsing]]
topic = "heizraum/+" topic = "heizraum/+"
measurement = "_/_" measurement = "_/_"
tags = "_/sensor" tags = "_/sensor"
# --- Heizraum: digitale Signale (Pumpen/Brenner/Kessel) 0/1 --- # --- Ölknoten: DS18B20-Temperatur(en) oelknoten/<rolle> ---
[[inputs.mqtt_consumer]] [[inputs.mqtt_consumer]]
servers = ["tcp://127.0.0.1:1883"] servers = ["tcp://127.0.0.1:1883"]
topics = ["heizraum/io/+", "heizraum/state/kessel"] topics = ["oelknoten/raum","oelknoten/hk_vorlauf","oelknoten/vl_erd_an","oelknoten/rl_erd_ab"]
data_format = "value" data_format = "value"
data_type = "integer" data_type = "float"
name_override = "io_state" name_override = "temperature"
topic_tag = "" topic_tag = ""
[inputs.mqtt_consumer.tags] [inputs.mqtt_consumer.tags]
node = "heizraum" node = "oelknoten"
[[inputs.mqtt_consumer.topic_parsing]] [[inputs.mqtt_consumer.topic_parsing]]
topic = "heizraum/io/+" topic = "oelknoten/+"
measurement = "_/_/_" measurement = "_/_"
tags = "_/_/signal" tags = "_/sensor"
[[inputs.mqtt_consumer.topic_parsing]]
topic = "heizraum/state/+" # --- Heizraum: digitale Signale (Pumpen/Brenner/Kessel) 0/1 ---
measurement = "_/_/_" [[inputs.mqtt_consumer]]
tags = "_/_/signal" servers = ["tcp://127.0.0.1:1883"]
topics = ["heizraum/io/+", "heizraum/state/kessel"]
data_format = "value"
data_type = "integer"
name_override = "io_state"
topic_tag = ""
[inputs.mqtt_consumer.tags]
node = "heizraum"
[[inputs.mqtt_consumer.topic_parsing]]
topic = "heizraum/io/+"
measurement = "_/_/_"
tags = "_/_/signal"
[[inputs.mqtt_consumer.topic_parsing]]
topic = "heizraum/state/+"
measurement = "_/_/_"
tags = "_/_/signal"
# --- Ölknoten: LWT-Status (online/offline -> 1/0) ---
[[inputs.mqtt_consumer]]
servers = ["tcp://127.0.0.1:1883"]
topics = ["oelknoten/status"]
data_format = "value"
data_type = "string"
name_override = "node_status"
topic_tag = ""
[inputs.mqtt_consumer.tags]
node = "oelknoten"
[[processors.enum]]
namepass = ["node_status"]
[[processors.enum.mapping]]
field = "value"
[processors.enum.mapping.value_mappings]
online = 1
offline = 0