mirror of
https://github.com/openwrt/packages.git
synced 2026-05-31 06:51:51 +08:00
prometheus-node-exporter-lua: fixup uci_dhcp_host
Handle cases where 'mac' is missing (nil), a single string, or an array (table). Additionally, add support for the 'duid' field. Signed-off-by: Etienne Champetier <champetier.etienne@gmail.com>
This commit is contained in:
@@ -4,7 +4,7 @@
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=prometheus-node-exporter-lua
|
||||
PKG_VERSION:=2026.05.07
|
||||
PKG_VERSION:=2026.05.08
|
||||
PKG_RELEASE:=1
|
||||
|
||||
PKG_MAINTAINER:=Etienne CHAMPETIER <champetier.etienne@gmail.com>
|
||||
|
||||
+10
-2
@@ -5,8 +5,16 @@ local function scrape()
|
||||
local metric_uci_host = metric("uci_dhcp_host", "gauge")
|
||||
|
||||
curs:foreach("dhcp", "host", function(s)
|
||||
if s[".type"] == "host" then
|
||||
labels = {name=s["name"], mac=string.upper(s["mac"]), dns=s["dns"], ip=s["ip"]}
|
||||
local labels = {name=s["name"], dns=s["dns"], ip=s["ip"], duid=s["duid"]}
|
||||
|
||||
if s["mac"] == nil then
|
||||
metric_uci_host(labels, 1)
|
||||
return
|
||||
end
|
||||
|
||||
local macs = type(s["mac"]) == "table" and s["mac"] or {s["mac"]}
|
||||
for _, mac in ipairs(macs) do
|
||||
labels["mac"] = string.upper(mac)
|
||||
metric_uci_host(labels, 1)
|
||||
end
|
||||
end)
|
||||
|
||||
Reference in New Issue
Block a user