aboutsummaryrefslogtreecommitdiff
path: root/utils
diff options
context:
space:
mode:
authorchamptar <champetier.etienne@gmail.com>2018-04-25 10:19:02 -0700
committerGitHub <noreply@github.com>2018-04-25 10:19:02 -0700
commit68a3d3d6eea90232f5a5c0413eac178da3668ac3 (patch)
treee2cd0bff2ee86637bac39fc08e4bfa7ad26959a9 /utils
parent1955fdfb87c2737b2999bffe7abca6777a5a1f4b (diff)
parent79073ee2016337205e405ac7aa74cc4aac7c9af2 (diff)
Merge pull request #5916 from aparcar/prom-bmx7v2
prometheus-node-exporter-lua: extend bmx7 plugin
Diffstat (limited to 'utils')
-rw-r--r--utils/prometheus-node-exporter-lua/Makefile2
-rw-r--r--utils/prometheus-node-exporter-lua/files/usr/lib/lua/prometheus-collectors/bmx7.lua21
2 files changed, 22 insertions, 1 deletions
diff --git a/utils/prometheus-node-exporter-lua/Makefile b/utils/prometheus-node-exporter-lua/Makefile
index 2d8c6814b..83b5e47fe 100644
--- a/utils/prometheus-node-exporter-lua/Makefile
+++ b/utils/prometheus-node-exporter-lua/Makefile
@@ -5,7 +5,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=prometheus-node-exporter-lua
PKG_VERSION:=2017.12.08
-PKG_RELEASE:=1
+PKG_RELEASE:=2
PKG_MAINTAINER:=Christian Simon <simon@swine.de>
PKG_LICENSE:=Apache-2.0
diff --git a/utils/prometheus-node-exporter-lua/files/usr/lib/lua/prometheus-collectors/bmx7.lua b/utils/prometheus-node-exporter-lua/files/usr/lib/lua/prometheus-collectors/bmx7.lua
index a6d6e9f3f..d384d71a7 100644
--- a/utils/prometheus-node-exporter-lua/files/usr/lib/lua/prometheus-collectors/bmx7.lua
+++ b/utils/prometheus-node-exporter-lua/files/usr/lib/lua/prometheus-collectors/bmx7.lua
@@ -39,7 +39,28 @@ local function scrape()
}
metric_bmx7_rxRate(labels, interpret_suffix(link.rxRate))
metric_bmx7_txRate(labels, interpret_suffix(link.txRate))
+ end
+
+ local metric_bmx7_tunIn = metric("bmx7_tunIn", "gauge")
+ local parameters = json.decode(get_contents("/var/run/bmx7/json/parameters")).OPTIONS
+ for _, option in pairs(parameters) do
+ if option.name == "tunIn" then
+ for _, instance in pairs(option.INSTANCES) do
+ for _, child_instance in pairs(instance.CHILD_INSTANCES) do
+ local labels = {
+ name = instance.value,
+ network = child_instance.value
+ }
+ metric_bmx7_tunIn(labels, 1)
+ end
+ end
+ elseif option.name == "plugin" then
+ local metric_bmx7_plugin = metric("bmx7_plugin", "gauge")
+ for _, instance in pairs(option.INSTANCES) do
+ metric_bmx7_plugin({ name = instance.value }, 1)
+ end
end
+ end
end
return { scrape = scrape }