From a6a2ddb8d0ee7be432a2550ba221fd22ded5feff Mon Sep 17 00:00:00 2001 From: Jack Greyhat Date: Tue, 26 Jan 2021 15:42:38 +0100 Subject: [PATCH] change folder structure: Merge all into the plugins dir --- Speedtest.inc.php | 52 ++++++++++++++++++++++++++++++++++++++++++ Speedtest.php | 0 librenms-speedtest.sh | 20 ++++++++++------ ookla-logo.png | Bin 0 -> 42787 bytes speedtest-logo.png | Bin 0 -> 12685 bytes 5 files changed, 65 insertions(+), 7 deletions(-) create mode 100644 Speedtest.inc.php create mode 100644 Speedtest.php create mode 100644 ookla-logo.png create mode 100644 speedtest-logo.png diff --git a/Speedtest.inc.php b/Speedtest.inc.php new file mode 100644 index 0000000..462618e --- /dev/null +++ b/Speedtest.inc.php @@ -0,0 +1,52 @@ + + + +
+
+
+
+

Bandwidth

+
+
+
+ +
+
+ +
+
+ +
+
+ +
+
+
+
+
+

Latency during Speedtest

+
+
+
+ +
+
+ +
+
+ +
+
+ +
+
+
+
+
+ + + + + \ No newline at end of file diff --git a/Speedtest.php b/Speedtest.php new file mode 100644 index 0000000..e69de29 diff --git a/librenms-speedtest.sh b/librenms-speedtest.sh index aec0c02..bd7b925 100644 --- a/librenms-speedtest.sh +++ b/librenms-speedtest.sh @@ -1,9 +1,15 @@ #!/bin/bash -# LibreNMS Speedtest plugin -RRDGraphsDir=/opt/librenms-speedtest/rrd -PNGImagesDir=/opt/librenms-speedtest/png -SpeedtestResultDir=/opt/librenms-speedtest/tmp +############################# +# LibreNMS Speedtest plugin # +############################# +# Main plugin dir +SpeedtestPluginDir=/opt/librenms/html/plugins +# Other data dirs +RRDGraphsDir=$SpeedtestPluginDir/rrd +PNGImagesDir=$SpeedtestPluginDir/png +SpeedtestResultDir=$SpeedtestPluginDir/tmp +# Active script code case $1 in (create) # Create the Latency measurement RRD @@ -28,10 +34,10 @@ SpeedtestResultDir=/opt/librenms-speedtest/tmp DATE=$(/bin/date +%s) # Generate speedtest results, store them in a temp file - speedtest-cli --simple --share > $SpeedtestResultDir/speedtest-results 2>/dev/null + speedtest --accept-license --accept-gdpr -p no > $SpeedtestResultDir/speedtest-results 2>/dev/null # Get the Latency - Latency=$(cat $SpeedtestResultDir/speedtest-results | grep Ping | sed -r 's/\s+//g'| cut -d":" -f2 | cut -d"m" -f1) + Latency=$(cat $SpeedtestResultDir/speedtest-results | grep Latency | sed -r 's/\s+//g'| cut -d":" -f2 | cut -d"m" -f1) # Get the Download speed DownloadSpeed=$(cat $SpeedtestResultDir/speedtest-results | grep Download | sed -r 's/\s+//g'| cut -d":" -f2 | cut -d"M" -f1) @@ -301,7 +307,7 @@ SpeedtestResultDir=/opt/librenms-speedtest/tmp --font AXIS:7:DejaVuSansMono > /dev/null 2>&1 # Move PNGs to the LibreNMS plugin location - cp $PNGImagesDir/*.png /opt/librenms/html/plugins/Speedtest/image + cp $PNGImagesDir/*.png /opt/librenms/html/plugins/Speedtest/png ;; (*) diff --git a/ookla-logo.png b/ookla-logo.png new file mode 100644 index 0000000000000000000000000000000000000000..e0d1da5c25fd240bdbc2e17259448cf6bdc29815 GIT binary patch literal 42787 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