From 72ce00fc5b382eef8ce7b5596230bdef369e4cfd Mon Sep 17 00:00:00 2001 From: Christian Pointner Date: Sun, 19 Sep 2021 20:20:41 +0200 Subject: add sensors to lua prometheus exporter --- .../openwrt/sensors_promethues-node-exporter.lua | 26 ++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 files/common/openwrt/sensors_promethues-node-exporter.lua (limited to 'files/common/openwrt/sensors_promethues-node-exporter.lua') diff --git a/files/common/openwrt/sensors_promethues-node-exporter.lua b/files/common/openwrt/sensors_promethues-node-exporter.lua new file mode 100644 index 00000000..9c814659 --- /dev/null +++ b/files/common/openwrt/sensors_promethues-node-exporter.lua @@ -0,0 +1,26 @@ +local sensors = require "sensors" + +local config, _ = sensors.read_config('/etc/sensors.json') +sensors.setup(config) +local units = { + temperature = "celsius", + humidity = "percent", + pressure = "bar", +} + +local function scrape() + local readings, err = sensors.read(config) + if not readings then return end + + for name, values in pairs(readings) do + labels = { name = name, kind = values._kind_ } + for t, v in pairs(values) do + local unit = units[t] + if unit ~= nil then + metric("sensors_" .. t .. "_" .. unit, "gauge", labels, v) + end + end + end +end + +return { scrape = scrape } -- cgit v1.2.3