PKG_NAME:=prometheus-node-exporter-lua
PKG_VERSION:=2017.12.08
-PKG_RELEASE:=3
+PKG_RELEASE:=4
PKG_MAINTAINER:=Christian Simon <simon@swine.de>
PKG_LICENSE:=Apache-2.0
DEPENDS:=prometheus-node-exporter-lua +luci-lib-nixio
endef
+define Package/prometheus-node-exporter-lua-openwrt
+ $(call Package/prometheus-node-exporter-lua/Default)
+ TITLE+= (openwrt collector)
+endef
+
Build/Compile=
define Package/prometheus-node-exporter-lua/install
$(INSTALL_BIN) ./files/usr/lib/lua/prometheus-collectors/textfile.lua $(1)/usr/lib/lua/prometheus-collectors/
endef
+define Package/prometheus-node-exporter-lua-openwrt/install
+ $(INSTALL_DIR) $(1)/usr/lib/lua/prometheus-collectors
+ $(INSTALL_BIN) ./files/usr/lib/lua/prometheus-collectors/openwrt.lua $(1)/usr/lib/lua/prometheus-collectors/
+endef
+
$(eval $(call BuildPackage,prometheus-node-exporter-lua))
$(eval $(call BuildPackage,prometheus-node-exporter-lua-nat_traffic))
$(eval $(call BuildPackage,prometheus-node-exporter-lua-netstat))
$(eval $(call BuildPackage,prometheus-node-exporter-lua-bmx6))
$(eval $(call BuildPackage,prometheus-node-exporter-lua-bmx7))
$(eval $(call BuildPackage,prometheus-node-exporter-lua-textfile))
+$(eval $(call BuildPackage,prometheus-node-exporter-lua-openwrt))
--- /dev/null
+local labels = {
+ id = "",
+ release = "",
+ revision = "",
+ model = string.sub(get_contents("/tmp/sysinfo/model"), 1, -2),
+ board_name = string.sub(get_contents("/tmp/sysinfo/board_name"), 1, -2)
+}
+
+for k, v in string.gmatch(get_contents("/etc/openwrt_release"), "(DISTRIB_%w+)='(%w+)'\n") do
+ if k == "DISTRIB_ID" then
+ labels["id"] = v
+ elseif k == "DISTRIB_RELEASE" then
+ labels["release"] = v
+ elseif k == "DISTRIB_REVISION" then
+ labels["revision"] = v
+ end
+end
+
+local function scrape()
+ metric("node_openwrt_info", "gauge", labels, 1)
+end
+
+return { scrape = scrape }
+