root / plugins / router / bbox @ 59fcde25
Historique | Voir | Annoter | Télécharger (3,88 ko)
| 1 | 0a7b1c81 | Steve Schnepp | #! /bin/sh |
|---|---|---|---|
| 2 | 93f4ff09 | Steve Schnepp | # Parse bbox information - https://fr.wikipedia.org/wiki/Bbox |
| 3 | 0a7b1c81 | Steve Schnepp | # (c) 2018 - GPLv2 - Steve Schnepp <steve.schnepp@pwkf.org> |
| 4 | # |
||
| 5 | # Configuration is done via ENV vars, here is the default : |
||
| 6 | # |
||
| 7 | # [bbox] |
||
| 8 | # env.IP 192.168.1.254 |
||
| 9 | |||
| 10 | |||
| 11 | # fail on error |
||
| 12 | set -e |
||
| 13 | |||
| 14 | IP=${IP:-"192.168.1.254"}
|
||
| 15 | |||
| 16 | if [ "$1" = "config" ] |
||
| 17 | then |
||
| 18 | echo multigraph bbox_adsl_bw |
||
| 19 | echo graph_title BBox Adsl Bandwidth |
||
| 20 | echo graph_category network |
||
| 21 | echo up.label UpStream |
||
| 22 | echo down.label DownStream |
||
| 23 | |||
| 24 | echo multigraph bbox_adsl_att |
||
| 25 | echo graph_title BBox Adsl Attenuation |
||
| 26 | echo graph_category network |
||
| 27 | echo up.label UpStream |
||
| 28 | echo down.label DownStream |
||
| 29 | |||
| 30 | echo multigraph bbox_adsl_snr |
||
| 31 | echo graph_title BBox Adsl SignalNoise Ratio |
||
| 32 | echo graph_category network |
||
| 33 | echo up.label UpStream |
||
| 34 | echo down.label DownStream |
||
| 35 | |||
| 36 | echo multigraph bbox_adsl_pkt |
||
| 37 | echo graph_title BBox Adsl Packets |
||
| 38 | echo graph_category network |
||
| 39 | echo graph_order up down up_f down_f up_c down_c up_u down_u |
||
| 40 | echo graph_vlabel packets/\${graph_period}
|
||
| 41 | echo graph_args --base 1000 --logarithmic --lower-limit 0.001 |
||
| 42 | echo up.label UpStream |
||
| 43 | echo down.label DownStream |
||
| 44 | echo up_f.label UpStream "(FEC)" |
||
| 45 | echo down_f.label DownStream "(FEC)" |
||
| 46 | echo up_c.label UpStream "(CRC)" |
||
| 47 | echo down_c.label DownStream "(CEC)" |
||
| 48 | echo up_u.label UpStream "(HEC)" |
||
| 49 | echo down_u.label DownStream "(HEC)" |
||
| 50 | echo up.type DERIVE |
||
| 51 | echo down.type DERIVE |
||
| 52 | echo up_f.type DERIVE |
||
| 53 | echo down_f.type DERIVE |
||
| 54 | echo up_c.type DERIVE |
||
| 55 | echo down_c.type DERIVE |
||
| 56 | echo up_u.type DERIVE |
||
| 57 | echo down_u.type DERIVE |
||
| 58 | echo up.min 0 |
||
| 59 | echo down.min 0 |
||
| 60 | echo up_f.min 0 |
||
| 61 | echo down_f.min 0 |
||
| 62 | echo up_c.min 0 |
||
| 63 | echo down_c.min 0 |
||
| 64 | echo up_u.min 0 |
||
| 65 | echo down_u.min 0 |
||
| 66 | |||
| 67 | echo multigraph bbox_adsl_bytes |
||
| 68 | echo graph_title BBox Adsl Usage |
||
| 69 | echo graph_category network |
||
| 70 | echo graph_order up down |
||
| 71 | echo graph_vlabel bytes/\${graph_period}
|
||
| 72 | echo graph_args --base 1024 --lower-limit 0 |
||
| 73 | echo up.label UpStream |
||
| 74 | echo up.type DERIVE |
||
| 75 | echo down.label DownStream |
||
| 76 | echo down.type DERIVE |
||
| 77 | echo up.min 0 |
||
| 78 | echo down.min 0 |
||
| 79 | |||
| 80 | echo multigraph bbox_adsl_uptime |
||
| 81 | echo graph_title BBox Adsl Uptime |
||
| 82 | echo graph_category network |
||
| 83 | echo graph_vlabel days |
||
| 84 | echo uptime.label Uptime |
||
| 85 | echo uptime.cdef uptime,3600,/,24/ |
||
| 86 | |||
| 87 | exit 0 |
||
| 88 | fi |
||
| 89 | |||
| 90 | af280421 | Steve Schnepp | TMPFILE="$(mktemp -d)" |
| 91 | trap 'rm -Rf "$TMPFILE"' EXIT |
||
| 92 | 0a7b1c81 | Steve Schnepp | |
| 93 | af280421 | Steve Schnepp | cd "$TMPFILE" |
| 94 | 0a7b1c81 | Steve Schnepp | |
| 95 | af280421 | Steve Schnepp | curl -s "http://$IP/api/v1/wan/ip" > "ip.json" & |
| 96 | curl -s "http://$IP/api/v1/wan/ip/stats" > "ip-stats.json" & |
||
| 97 | curl -s "http://$IP/api/v1/wan/xdsl" > "xdsl.json" & |
||
| 98 | curl -s "http://$IP/api/v1/wan/xdsl/stats" > "xdsl-stats.json" & |
||
| 99 | 0a7b1c81 | Steve Schnepp | |
| 100 | wait |
||
| 101 | |||
| 102 | if [ "$MUNIN_DEBUG" = 1 ] |
||
| 103 | then |
||
| 104 | for i in * |
||
| 105 | do |
||
| 106 | echo "========= $i ========" |
||
| 107 | cat "$i" |
||
| 108 | done |
||
| 109 | fi |
||
| 110 | |||
| 111 | echo multigraph bbox_adsl_bw |
||
| 112 | 59fcde25 | Steve Schnepp | echo up.value $(jq -r ".[].wan.xdsl.up.bitrates" < xdsl.json) |
| 113 | echo down.value $(jq -r ".[].wan.xdsl.down.bitrates" < xdsl.json) |
||
| 114 | 0a7b1c81 | Steve Schnepp | |
| 115 | echo multigraph bbox_adsl_att |
||
| 116 | 59fcde25 | Steve Schnepp | echo up.value $(jq -r ".[].wan.xdsl.up.attenuation" < xdsl.json) |
| 117 | echo down.value $(jq -r ".[].wan.xdsl.down.attenuation" < xdsl.json) |
||
| 118 | 0a7b1c81 | Steve Schnepp | |
| 119 | echo multigraph bbox_adsl_snr |
||
| 120 | 59fcde25 | Steve Schnepp | echo up.value $(jq -r ".[].wan.xdsl.up.noise" < xdsl.json) |
| 121 | echo down.value $(jq -r ".[].wan.xdsl.down.noise" < xdsl.json) |
||
| 122 | 0a7b1c81 | Steve Schnepp | |
| 123 | echo multigraph bbox_adsl_pkt |
||
| 124 | 59fcde25 | Steve Schnepp | echo up.value $(jq -r ".[].wan.ip.stats.tx.packets" < ip-stats.json) |
| 125 | echo down.value $(jq -r ".[].wan.ip.stats.rx.packets" < ip-stats.json) |
||
| 126 | echo up_f.value $(jq -r ".[].wan.xdsl.stats.remote_fec" < xdsl-stats.json) |
||
| 127 | echo down_f.value $(jq -r ".[].wan.xdsl.stats.local_fec" < xdsl-stats.json) |
||
| 128 | echo up_c.value $(jq -r ".[].wan.xdsl.stats.remote_hec" < xdsl-stats.json) |
||
| 129 | echo down_c.value $(jq -r ".[].wan.xdsl.stats.local_hec" < xdsl-stats.json) |
||
| 130 | echo up_u.value $(jq -r ".[].wan.xdsl.stats.remote_crc" < xdsl-stats.json) |
||
| 131 | echo down_u.value $(jq -r ".[].wan.xdsl.stats.local_crc" < xdsl-stats.json) |
||
| 132 | 0a7b1c81 | Steve Schnepp | |
| 133 | echo multigraph bbox_adsl_bytes |
||
| 134 | 59fcde25 | Steve Schnepp | echo up.value $(jq -r ".[].wan.ip.stats.tx.bytes" < ip-stats.json | tr -d '"') |
| 135 | echo down.value $(jq -r ".[].wan.ip.stats.rx.bytes" < ip-stats.json | tr -d '"') |
||
| 136 | 0a7b1c81 | Steve Schnepp | |
| 137 | echo multigraph bbox_adsl_uptime |
||
| 138 | 59fcde25 | Steve Schnepp | echo uptime.value $(jq -r ".[].wan.xdsl.showtime" < xdsl.json) |
| 139 | 0a7b1c81 | Steve Schnepp | |
| 140 | exit 0 |
