prometheus-node-exporter-lua: add bmx6/7 scraper 5578/head
authorPaul Spooren <spooren@informatik.uni-leipzig.de>
Wed, 7 Feb 2018 00:05:04 +0000 (01:05 +0100)
committerPaul Spooren <spooren@informatik.uni-leipzig.de>
Mon, 12 Feb 2018 20:41:37 +0000 (21:41 +0100)
commitf7093021f9d537e0c3eefc115e97eac65bc586ef
tree13ca9f48ffa3b176187a1acf9e92163ed759f054
parentfaa8ce76907390256476079c2dfa49bbd4f83cf3
prometheus-node-exporter-lua: add bmx6/7 scraper

scrapes bmx6 status and connected links.

example output:

    bmx6_status{id="qMp-LibreMesh-1706",version="BMX6-0.1-alpha",address="fd66:66:66:a:6670:2ff:fe3e:9d28"} 1
    bmx6_link_rxRate{target="UPC-CN-C6-E104-Alix",source="qMp-LibreMesh-1706",dev="wlan0-mesh_12"} 100
    bmx6_link_txRate{target="UPC-CN-C6-E104-Alix",source="qMp-LibreMesh-1706",dev="wlan0-mesh_12"} 100
    bmx6_link_rxRate{target="UPC-CN-C6-E104-Alix-Paul",source="qMp-LibreMesh-1706",dev="wlan1-adhoc_12"} 100
    bmx6_link_txRate{target="UPC-CN-C6-E104-Alix-Paul",source="qMp-LibreMesh-1706",dev="wlan1-adhoc_12"} 100
    bmx6_link_rxRate{target="UPC-CN-C6-E104-Turoffner",source="qMp-LibreMesh-1706",dev="wlan0-mesh_12"} 97
    bmx6_link_txRate{target="UPC-CN-C6-E104-Turoffner",source="qMp-LibreMesh-1706",dev="wlan0-mesh_12"} 100
    node_scrape_collector_duration_seconds{collector="bmx6"} 0.0025260448455811
    node_scrape_collector_success{collector="bmx6"} 1
    scrapes bmx7 status and connected links.

example output:

    bmx7_status{id="C68791D2",revision="3a52f89",name="smpl-18f4ce",address="fd70:c687:91d2:8ab3:1a88:6b14:bad0:2b18"} 1
    bmx7_cpu_usage 0.7
    bmx7_mem_usage 3204000
    bmx7_link_rxRate{target="F48239CD",dev="wlan0-mesh_13",source="C68791D2",name="smpl-07889a"} 54000
    bmx7_link_txRate{target="F48239CD",dev="wlan0-mesh_13",source="C68791D2",name="smpl-07889a"} 52729
    node_scrape_collector_duration_seconds{collector="bmx7"} 0.0020999908447266
    node_scrape_collector_success{collector="bmx7"} 1

prometheus-node-exporter-lua: bmx6/7 netjson format

adds labels called source and target to links instead of only the target
previously called "id".

Retrieving all *links* from prometheus now makes it easier to create
a valid netjson(.org) graph.

It's not feasible to use *instance* as *source* as for instance likely
the name is used for dns, instead of the ID. Using the *name* instead of
*id* for netjson linking results in a bad graph when two devices have
the same (default) hostname.

Signed-off-by: Paul Spooren <spooren@informatik.uni-leipzig.de>
utils/prometheus-node-exporter-lua/Makefile
utils/prometheus-node-exporter-lua/files/usr/lib/lua/prometheus-collectors/bmx6.lua [new file with mode: 0644]
utils/prometheus-node-exporter-lua/files/usr/lib/lua/prometheus-collectors/bmx7.lua [new file with mode: 0644]