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