From 83efb58d685d1a47a58043726269f4762988f6d4 Mon Sep 17 00:00:00 2001 From: Jack Greyhat Date: Thu, 21 Jan 2021 16:44:27 +0100 Subject: [PATCH] add week graphs etc --- librenms-speedtest.sh | 78 +++++++++++++++++++++++++++++++++++++++---- 1 file changed, 71 insertions(+), 7 deletions(-) diff --git a/librenms-speedtest.sh b/librenms-speedtest.sh index cf673df..5dfb68c 100644 --- a/librenms-speedtest.sh +++ b/librenms-speedtest.sh @@ -44,8 +44,8 @@ SpeedtestResultDir=/opt/librenms-speedtest/tmp rrdtool update $RRDGraphsDir/speedtest-bandwidth.rrd $DATE:$DownloadSpeed:$UploadSpeed ;; (graph) - # Create the Latency PNG - rrdtool graph $PNGImagesDir/speedtest-latency.png -J -a PNG -s -1day \ + # Create the Latency PNG of the last day + rrdtool graph $PNGImagesDir/speedtest-latency-day.png -J -a PNG --start "-1day" \ --title="Latency during Speedtest" \ --vertical-label "ms" \ DEF:P=$RRDGraphsDir/speedtest-latency.rrd:LATENCY:AVERAGE \ @@ -69,10 +69,35 @@ SpeedtestResultDir=/opt/librenms-speedtest/tmp --font LEGEND:8:DejaVuSansMono \ --font AXIS:7:DejaVuSansMono > /dev/null 2>&1 - # Create the Bandwidth PNG - rrdtool graph $PNGImagesDir/speedtest-bandwidth.png -J -a PNG -s -1day \ + # Create the Latency PNG of the last week + rrdtool graph $PNGImagesDir/speedtest-latency-week.png -J -a PNG --start "-1week" \ + --title="Latency during Speedtest" \ + --vertical-label "ms" \ + DEF:P=$RRDGraphsDir/speedtest-latency.rrd:LATENCY:AVERAGE \ + DEF:PMIN=$RRDGraphsDir/speedtest-latency.rrd:LATENCY:MIN \ + DEF:PMAX=$RRDGraphsDir/speedtest-latency.rrd:LATENCY:MAX \ + VDEF:Pavg=P,AVERAGE \ + LINE1:Pavg#cc3300:"Avg \n" \ + LINE2:P#3d61ab:"Last latency (ms)\n" \ + GPRINT:Pavg:"Avg latency %2.1lf ms\n" \ + -h 300 -w 650 -y1:2 \ + -c BACK#EEEEEE00 \ + -c SHADEA#EEEEEE00 \ + -c SHADEB#EEEEEE00 \ + -c CANVAS#FFFFFF00 \ + -c GRID#a5a5a5 \ + -c MGRID#FF9999 \ + -c FRAME#5e5e5e \ + -c ARROW#5e5e5e \ + -R normal \ + -c FONT#000000 \ + --font LEGEND:8:DejaVuSansMono \ + --font AXIS:7:DejaVuSansMono > /dev/null 2>&1 + + # Create the Bandwidth PNG of the last day + rrdtool graph $PNGImagesDir/speedtest-bandwidth-day.png -J -a PNG --start "-1day" \ --title="Speedtest Bandwidth" \ - --vertical-label "Mb/s" \ + --vertical-label "Mbit/s" \ DEF:D=$RRDGraphsDir/speedtest-bandwidth.rrd:DOWN:AVERAGE \ DEF:DMIN=$RRDGraphsDir/speedtest-bandwidth.rrd:DOWN:MIN \ DEF:DMAX=$RRDGraphsDir/speedtest-bandwidth.rrd:DOWN:MAX \ @@ -94,7 +119,46 @@ SpeedtestResultDir=/opt/librenms-speedtest/tmp GPRINT:U:LAST:"Last upload bandwidth\: %2.1lf Mb/s\n" \ GPRINT:Davg:"Avg download bandwidth %2.1lf Mb/s\n" \ GPRINT:Uavg2:"Avg upload bandwidth %2.1lf Mb/s" \ - -h 300 -w 650 -y1:2 \ + -h 300 -w 650 \ + -c BACK#EEEEEE00 \ + -c SHADEA#EEEEEE00 \ + -c SHADEB#EEEEEE00 \ + -c CANVAS#FFFFFF00 \ + -c GRID#a5a5a5 \ + -c MGRID#FF9999 \ + -c FRAME#5e5e5e \ + -c ARROW#5e5e5e \ + -R normal \ + -c FONT#000000 \ + --font LEGEND:8:DejaVuSansMono \ + --font AXIS:7:DejaVuSansMono > /dev/null 2>&1 + + # Create the Bandwidth PNG of the last week + rrdtool graph $PNGImagesDir/speedtest-bandwidth-week.png -J -a PNG --start "-1week" \ + --title="Speedtest Bandwidth" \ + --vertical-label "Mbit/s" \ + DEF:D=$RRDGraphsDir/speedtest-bandwidth.rrd:DOWN:AVERAGE \ + DEF:DMIN=$RRDGraphsDir/speedtest-bandwidth.rrd:DOWN:MIN \ + DEF:DMAX=$RRDGraphsDir/speedtest-bandwidth.rrd:DOWN:MAX \ + DEF:U=$RRDGraphsDir/speedtest-bandwidth.rrd:UP:AVERAGE \ + DEF:UMIN=$RRDGraphsDir/speedtest-bandwidth.rrd:UP:MIN \ + DEF:UMAX=$RRDGraphsDir/speedtest-bandwidth.rrd:UP:MAX \ + CDEF:Y0=U,0,* \ + CDEF:NegU=U,-1,* \ + VDEF:Yavg=Y0,AVERAGE \ + VDEF:Davg=D,AVERAGE \ + VDEF:Uavg=NegU,AVERAGE \ + VDEF:Uavg2=U,AVERAGE \ + AREA:D#61ab3d:"Download" \ + AREA:NegU#3d61ab:"Upload" \ + LINE1:Uavg#cc1100: \ + LINE1:Davg#cc3300:"Avg\n" \ + LINE1:Yavg#111111: \ + GPRINT:D:LAST:"Last download bandwidth\: %2.1lf Mb/s\n" \ + GPRINT:U:LAST:"Last upload bandwidth\: %2.1lf Mb/s\n" \ + GPRINT:Davg:"Avg download bandwidth %2.1lf Mb/s\n" \ + GPRINT:Uavg2:"Avg upload bandwidth %2.1lf Mb/s" \ + -h 300 -w 650 \ -c BACK#EEEEEE00 \ -c SHADEA#EEEEEE00 \ -c SHADEB#EEEEEE00 \ @@ -113,5 +177,5 @@ SpeedtestResultDir=/opt/librenms-speedtest/tmp ;; (*) - echo "Invalid option.";; + echo "Invalid option. Nothing to do. Please try again with: create - run - graph;; esac \ No newline at end of file