Merge pull request #8657 from klukonin/Prometheus_add_more_metrics
authorchamptar <champetier.etienne@gmail.com>
Sun, 28 Apr 2019 15:42:50 +0000 (12:42 -0300)
committerGitHub <noreply@github.com>
Sun, 28 Apr 2019 15:42:50 +0000 (12:42 -0300)
prometheus-node-exporter-lua: Add more wifi_station metrics

utils/prometheus-node-exporter-lua/Makefile
utils/prometheus-node-exporter-lua/files/usr/lib/lua/prometheus-collectors/wifi_stations.lua

index d00bc4686465350899eeb5e7778a61dbded57680..83a5c06cf78745433236db4730aaa091fd2b1b47 100644 (file)
@@ -4,8 +4,8 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=prometheus-node-exporter-lua
-PKG_VERSION:=2018.12.30
-PKG_RELEASE:=6
+PKG_VERSION:=2019.04.12
+PKG_RELEASE:=1
 
 PKG_MAINTAINER:=Etienne CHAMPETIER <champetier.etienne@gmail.com>
 PKG_LICENSE:=Apache-2.0
index 25c144f023cf00ff6055945c02ea21784118036f..f241e414f0e1d79bda4126a5c4bb41e928f13912 100644 (file)
@@ -3,9 +3,22 @@ local iwinfo = require "iwinfo"
 
 local function scrape()
   local metric_wifi_stations = metric("wifi_stations", "gauge")
+
   local metric_wifi_station_signal = metric("wifi_station_signal_dbm","gauge")
-  local metric_wifi_station_tx_packets = metric("wifi_station_tx_packets_total","counter")
-  local metric_wifi_station_rx_packets = metric("wifi_station_rx_packets_total","counter")
+
+  local metric_wifi_station_inactive = metric('wifi_station_inactive_milliseconds', 'gauge')
+
+  local metric_wifi_station_exp_thr = metric('wifi_station_expected_throughput_kilobits_per_second', 'gauge')
+
+  local metric_wifi_station_tx_bitrate = metric('wifi_station_transmit_kilobits_per_second', 'gauge')
+  local metric_wifi_station_rx_bitrate = metric('wifi_station_receive_kilobits_per_second', 'gauge')
+
+  local metric_wifi_station_tx_packets = metric("wifi_station_transmit_packets_total","counter")
+  local metric_wifi_station_rx_packets = metric("wifi_station_receive_packets_total","counter")
+
+  local metric_wifi_station_tx_bytes = metric('wifi_station_transmit_bytes_total', 'counter')
+  local metric_wifi_station_rx_bytes = metric('wifi_station_receive_bytes_total', 'counter')
+
 
   local u = ubus.connect()
   local status = u:call("network.wireless", "status", {})
@@ -22,9 +35,30 @@ local function scrape()
           ifname = ifname,
           mac = mac,
         }
-        metric_wifi_station_signal(labels, station.signal)
+        if station.signal and station.signal ~= 0 then
+          metric_wifi_station_signal(labels, station.signal)
+        end
+        if station.inactive then
+          metric_wifi_station_inactive(labels, station.inactive)
+        end
+        if station.expected_throughput and station.expected_throughput ~= 0 then
+          metric_wifi_station_exp_thr(labels, station.expected_throughput)
+        end
+        if station.tx_rate and station.tx_rate ~= 0 then
+          metric_wifi_station_tx_bitrate(labels, station.tx_rate)
+        end
+        if station.rx_rate and station.rx_rate ~= 0 then
+          metric_wifi_station_rx_bitrate(labels, station.rx_rate)
+        end
         metric_wifi_station_tx_packets(labels, station.tx_packets)
         metric_wifi_station_rx_packets(labels, station.rx_packets)
+        if station.tx_bytes then
+          metric_wifi_station_tx_bytes(labels, station.tx_bytes)
+        end
+        if station.rx_bytes then
+          metric_wifi_station_rx_bytes(labels, station.rx_bytes)
+        end
+
         count = count + 1
       end
       metric_wifi_stations({ifname = ifname}, count)