Last active
January 20, 2022 02:06
-
-
Save ladar/66d7657e9b88afc00d7f17c06f62bdbb to your computer and use it in GitHub Desktop.
Generate bandwidth graphs for an AT&T internet connection.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
# Name: router-graph-setup.sh | |
# Author: Ladar Levison | |
# Gist: https://gist.github.com/ladar/66d7657e9b88afc00d7f17c06f62bdbb | |
# Description: A simple script to setup the pieces need to poll a router | |
# status page, and record the bandwidth/packet statistics. Then generate | |
# graphs for those values. In other words, this will allow you to generate | |
# usage graphs for your AT&T internet connection by polling the router. | |
# Tested against a Nokia BGW320-505 but it should work for AT&T router, as | |
# they all share the same web management interface. | |
# Setup Apache so the graphs can be view remotely. | |
dnf --assumeyes install curl httpd rrdtool | |
firewall-cmd --zone=public --add-service=http | |
truncate --size=0 /etc/httpd/conf.d/welcome.conf | |
systemctl enable --now httpd | |
# Uncomment to purge the existing files and re-install. | |
# rm -f /var/www/html/index.html | |
# rm -f /var/www/html/router-data.rrd | |
# rm -f /var/www/html/favicon-32x32.png | |
# rm -f /usr/local/bin/router-poll.sh | |
# rm -f /usr/local/bin/router-grapher.sh | |
# rm -f /etc/cron.d/router-poll | |
# rm -f /etc/cron.d/router-graph | |
# rm -f /var/www/html/router-{packets,bandwidth}-{hour,day,week}.png | |
if [ ! -f /var/www/html/router-data.rrd ]; then | |
rrdtool create /var/www/html/router-data.rrd --step 60 DS:receivepackets:COUNTER:10m:0:120000000 DS:transmitpackets:COUNTER:10m:0:120000000 DS:receivebytes:COUNTER:10m:0:75000000000 DS:transmitbytes:COUNTER:10m:0:75000000000 RRA:AVERAGE:0.5:1m:7d RRA:AVERAGE:0.5:5m:30d RRA:AVERAGE:0.5:30m:1y RRA:AVERAGE:0.5:60m:10y RRA:MAX:0.5:1m:7d RRA:MAX:0.5:5m:30d RRA:MAX:0.5:30m:1y RRA:MAX:0.5:60m:10y | |
fi | |
if [ ! -f /var/www/html/favicon-32x32.png ]; then | |
base64 -d <<-EOF > /var/www/html/favicon-32x32.png | |
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAACBklEQVRYhe3XT4iNURjH8c/cd665 | |
NTU0ozQ7YoUIKworWdmyk438CXNt1ChEk0aSko2ZhSymLBQ7KRsSNaFQFsxYjWRBZCg7i3Mud97e | |
98697h8L86tT9/7e557ne87znNN9WdB/qi1x/BMdxQy+oNDJxAku4yVW4Tu6O5W8F3dwD4tR7CTA | |
ICYxHhNrBUA/FtURtxbvMJzymwI4gc/4JGzrQSzPiNuBD9iT8eyvAUaEJhoUdmE3ruM9XuNSTHxY | |
6PS8o9YwQJfQwZMYyHm+ASfxAPexssZ8DQEkGMNDoYNboboBipgQjk9vi5JnApwXVrmxKqgHt+Po | |
mWfCpBmAJH4ZxjQeYZ+w6gl/zm6Wlgl98RVXsaKO5KtxDT8rAN2YjYkS7MJNnFZ7ZUvxAqciyAg+ | |
4gbWpGK7sBN3hdNxBj+yAOpVP57jXMrvE+6JGaF027Afr/AUe4VyzilBowBLhG0frRFTwiE8wy1s | |
Tz3PBViHA/Jr2YfHwoXTjHIB1gun4Qg2C9s2Lly3W4W74IpQ07YAVCvBJmFHxvAEZ1uQvG6AdmoB | |
IBcgq77t8DIBSpiKAUM4Hj+/FRryWPQKeBO9IZSrvELKy5uvlAcwHYPKVT+YqkpWAahAlVNeIXoV | |
gLz55gAU8E34o1GMZvVohzcQF/37veBChJjt4LgopSTSdWJ07IVkXv0CbLuVOkjOD9sAAAAASUVO | |
RK5CYII= | |
EOF | |
fi | |
if [ ! -f /var/www/html/index.html ]; then | |
cat <<-EOF > /var/www/html/index.html | |
<?xml version="1.0" encoding="utf-8"?> | |
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> | |
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"> | |
<head> | |
<title>Router Usage Graphs</title> | |
<meta name="author" content="Ladar Levison"/> | |
<meta name="keywords" lang="en" content="graphs" /> | |
<meta name="description" lang="en" content="There is nothing here so move right along." /> | |
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> | |
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png" /> | |
<meta name="theme-color" content="#ffffff" /> | |
<meta http-equiv="refresh" content="20" /> | |
</head> | |
<body> | |
<div> | |
<a href="/hour.html"><img src="router-bandwidth-hour.png" alt="Hour Graph" /></a> | |
</div> | |
<div> | |
<a href="/day.html"><img src="router-bandwidth-day.png" alt="Day Graph" /></a> | |
</div> | |
<div> | |
<a href="/week.html"><img src="router-bandwidth-week.png" alt="Week Graph" /></a> | |
</div> | |
<div> | |
<a href="/hour.html"><img src="router-packets-hour.png" alt="Hour Graph" /></a> | |
</div> | |
<div> | |
<a href="/day.html"><img src="router-packets-day.png" alt="Day Graph" /></a> | |
</div> | |
<div> | |
<a href="/week.html"><img src="router-packets-week.png" alt="Week Graph" /></a> | |
</div> | |
</body> | |
</html> | |
EOF | |
fi | |
if [ ! -f /var/www/html/hour.html ]; then | |
cat <<-EOF > /var/www/html/hour.html | |
<?xml version="1.0" encoding="utf-8"?> | |
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> | |
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"> | |
<head> | |
<title>Router Usage Graphs</title> | |
<meta name="author" content="Ladar Levison"/> | |
<meta name="keywords" lang="en" content="graphs" /> | |
<meta name="description" lang="en" content="There is nothing here so move right along." /> | |
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> | |
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png" /> | |
<meta name="theme-color" content="#ffffff" /> | |
<meta http-equiv="refresh" content="20" /> | |
</head> | |
<body> | |
<div> | |
<a href="/index.html"><img src="router-bandwidth-hour.png" alt="Hour Graph" /></a> | |
</div> | |
<div> | |
<a href="/index.html"><img src="router-packets-hour.png" alt="Hour Graph" /></a> | |
</div> | |
</body> | |
</html> | |
EOF | |
fi | |
if [ ! -f /var/www/html/day.html ]; then | |
cat <<-EOF > /var/www/html/day.html | |
<?xml version="1.0" encoding="utf-8"?> | |
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> | |
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"> | |
<head> | |
<title>Router Usage Graphs</title> | |
<meta name="author" content="Ladar Levison"/> | |
<meta name="keywords" lang="en" content="graphs" /> | |
<meta name="description" lang="en" content="There is nothing here so move right along." /> | |
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> | |
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png" /> | |
<meta name="theme-color" content="#ffffff" /> | |
<meta http-equiv="refresh" content="20" /> | |
</head> | |
<body> | |
<div> | |
<a href="/index.html"><img src="router-bandwidth-day.png" alt="Day Graph" /></a> | |
</div> | |
<div> | |
<a href="/index.html"><img src="router-packets-day.png" alt="Day Graph" /></a> | |
</div> | |
</body> | |
</html> | |
EOF | |
fi | |
if [ ! -f /var/www/html/week.html ]; then | |
cat <<-EOF > /var/www/html/week.html | |
<?xml version="1.0" encoding="utf-8"?> | |
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> | |
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"> | |
<head> | |
<title>Router Usage Graphs</title> | |
<meta name="author" content="Ladar Levison"/> | |
<meta name="keywords" lang="en" content="graphs" /> | |
<meta name="description" lang="en" content="There is nothing here so move right along." /> | |
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> | |
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png" /> | |
<meta name="theme-color" content="#ffffff" /> | |
<meta http-equiv="refresh" content="20" /> | |
</head> | |
<body> | |
<div> | |
<a href="/index.html"><img src="router-bandwidth-week.png" alt="Week Graph" /></a> | |
</div> | |
<div> | |
<a href="/index.html"><img src="router-packets-week.png" alt="Week Graph" /></a> | |
</div> | |
</body> | |
</html> | |
EOF | |
fi | |
if [ ! -f /usr/local/bin/router-poll.sh ]; then | |
cat <<-EOF > /usr/local/bin/router-poll.sh | |
#!/bin/bash | |
S="\`date +%s\`" | |
D=\`echo \$(curl --silent --max-time 2 http://192.168.1.254/cgi-bin/broadbandstatistics.ha | grep -A 1 -E "Receive Packets|Transmit Packets|Receive Bytes|Transmit Bytes" | grep -Ev "\\-\\-|row|class" | sed "s/.*<td>\\(.*\\)<\\/td>/\\1/g") | sed "s/ /:/g"\` | |
if [ ! -z "\$D" ]; then | |
rrdtool update /var/www/html/router-data.rrd \$S:\$D | |
fi | |
# rrdtool graph /var/www/html/router-daily.png --start -86520 --end -120 DEF:inoctets=/var/www/html/router-data.rrd:receivebytes:AVERAGE DEF:outoctets=/var/www/html/router-data.rrd:transmitbytes:AVERAGE AREA:inoctets#00FF00:"In traffic" LINE1:outoctets#0000FF:"Out traffic" &>/dev/null | |
# rrdtool graph /var/www/html/router-hourly.png --start -3720 --end -120 DEF:inoctets=/var/www/html/router-data.rrd:receivebytes:AVERAGE DEF:outoctets=/var/www/html/router-data.rrd:transmitbytes:AVERAGE AREA:inoctets#00FF00:"In traffic" LINE1:outoctets#0000FF:"Out traffic" &>/dev/null | |
EOF | |
chmod +x /usr/local/bin/router-poll.sh | |
fi | |
if [ ! -f /usr/local/bin/router-graph.sh ]; then | |
cat <<-EOF > /usr/local/bin/router-graph.sh | |
#!/bin/bash | |
rrdtool graph /var/www/html/router-bandwidth-hour.png \\ | |
-w 850 -h 175 -a PNG \\ | |
--slope-mode \\ | |
--start end-3600 --end now-70 \\ | |
--font DEFAULT:10: \\ | |
--title "Bandwidth Usage (1 hour)" \\ | |
--watermark "\`date +'%b %_d at %_I:%M %P' | sed 's/ / /g'\`" \\ | |
--vertical-label "bits/sec" \\ | |
--x-grid MINUTE:1:MINUTE:10:MINUTE:10:0:%R \\ | |
--lower-limit=0 \\ | |
--units-exponent=6 \\ | |
DEF:BytesIn=/var/www/html/router-data.rrd:receivebytes:AVERAGE \\ | |
DEF:BytesOut=/var/www/html/router-data.rrd:transmitbytes:AVERAGE \\ | |
CDEF:BitsIn=BytesIn,8,* \\ | |
CDEF:BitsOut=BytesOut,8,* \\ | |
VDEF:BitsInMax=BitsIn,MAXIMUM \\ | |
VDEF:BitsInAvg=BitsIn,AVERAGE \\ | |
VDEF:BitsInMin=BitsIn,MINIMUM \\ | |
VDEF:BitsInLast=BitsIn,LAST \\ | |
VDEF:BitsOutMax=BitsOut,MAXIMUM \\ | |
VDEF:BitsOutAvg=BitsOut,AVERAGE \\ | |
VDEF:BitsOutMin=BitsOut,MINIMUM \\ | |
VDEF:BitsOutLast=BitsOut,LAST \\ | |
COMMENT:"\\s" \\ | |
AREA:BitsOut#33CC33:"Transmit" \\ | |
GPRINT:BitsOutLast:"Cur\\: %7.2lf %Sbits/sec" \\ | |
GPRINT:BitsOutAvg:"Avg\\: %7.2lf %Sbits/sec" \\ | |
GPRINT:BitsOutMax:"Max\\: %7.2lf %Sbits/sec" \\ | |
GPRINT:BitsOutMin:"Min\\: %7.2lf %Sbits/sec\\n" \\ | |
LINE3:BitsIn#0000CC:"Receive " \\ | |
GPRINT:BitsInLast:"Cur\\: %7.2lf %Sbits/sec" \\ | |
GPRINT:BitsInAvg:"Avg\\: %7.2lf %Sbits/sec" \\ | |
GPRINT:BitsInMax:"Max\\: %7.2lf %Sbits/sec" \\ | |
GPRINT:BitsInMin:"Min\\: %7.2lf %Sbits/sec\\n" &> /dev/null | |
rrdtool graph /var/www/html/router-bandwidth-day.png \\ | |
-w 850 -h 175 -a PNG \\ | |
--slope-mode \\ | |
--start end-86400 --end now-70 \\ | |
--font DEFAULT:10: \\ | |
--title "Bandwidth Usage (1 day)" \\ | |
--watermark "\`date +'%b %_d at %_I:%M %P' | sed 's/ / /g'\`" \\ | |
--vertical-label "bits/sec" \\ | |
--x-grid MINUTE:10:HOUR:1:MINUTE:120:0:%R \\ | |
--lower-limit=0 \\ | |
--units-exponent=6 \\ | |
DEF:BytesIn=/var/www/html/router-data.rrd:receivebytes:AVERAGE \\ | |
DEF:BytesOut=/var/www/html/router-data.rrd:transmitbytes:AVERAGE \\ | |
CDEF:BitsIn=BytesIn,8,* \\ | |
CDEF:BitsOut=BytesOut,8,* \\ | |
VDEF:BitsInMax=BitsIn,MAXIMUM \\ | |
VDEF:BitsInAvg=BitsIn,AVERAGE \\ | |
VDEF:BitsInMin=BitsIn,MINIMUM \\ | |
VDEF:BitsInLast=BitsIn,LAST \\ | |
VDEF:BitsOutMax=BitsOut,MAXIMUM \\ | |
VDEF:BitsOutAvg=BitsOut,AVERAGE \\ | |
VDEF:BitsOutMin=BitsOut,MINIMUM \\ | |
VDEF:BitsOutLast=BitsOut,LAST \\ | |
COMMENT:"\\s" \\ | |
AREA:BitsOut#33CC33:"Transmit" \\ | |
GPRINT:BitsOutLast:"Cur\\: %7.2lf %Sbits/sec" \\ | |
GPRINT:BitsOutAvg:"Avg\\: %7.2lf %Sbits/sec" \\ | |
GPRINT:BitsOutMax:"Max\\: %7.2lf %Sbits/sec" \\ | |
GPRINT:BitsOutMin:"Min\\: %7.2lf %Sbits/sec\\n" \\ | |
LINE3:BitsIn#0000CC:"Receive " \\ | |
GPRINT:BitsInLast:"Cur\\: %7.2lf %Sbits/sec" \\ | |
GPRINT:BitsInAvg:"Avg\\: %7.2lf %Sbits/sec" \\ | |
GPRINT:BitsInMax:"Max\\: %7.2lf %Sbits/sec" \\ | |
GPRINT:BitsInMin:"Min\\: %7.2lf %Sbits/sec\\n" &> /dev/null | |
rrdtool graph /var/www/html/router-bandwidth-week.png \\ | |
-w 850 -h 175 -a PNG \\ | |
--slope-mode \\ | |
--start end-604800 --end now-70 \\ | |
--font DEFAULT:10: \\ | |
--title "Bandwidth Usage (1 week)" \\ | |
--watermark "\`date +'%b %_d at %_I:%M %P' | sed 's/ / /g'\`" \\ | |
--vertical-label "bits/sec" \\ | |
--x-grid HOUR:8:DAY:1:DAY:1:86400:%A \\ | |
--lower-limit=0 \\ | |
--units-exponent=6 \\ | |
DEF:BytesIn=/var/www/html/router-data.rrd:receivebytes:AVERAGE \\ | |
DEF:BytesOut=/var/www/html/router-data.rrd:transmitbytes:AVERAGE \\ | |
CDEF:BitsIn=BytesIn,8,* \\ | |
CDEF:BitsOut=BytesOut,8,* \\ | |
VDEF:BitsInMax=BitsIn,MAXIMUM \\ | |
VDEF:BitsInAvg=BitsIn,AVERAGE \\ | |
VDEF:BitsInMin=BitsIn,MINIMUM \\ | |
VDEF:BitsInLast=BitsIn,LAST \\ | |
VDEF:BitsOutMax=BitsOut,MAXIMUM \\ | |
VDEF:BitsOutAvg=BitsOut,AVERAGE \\ | |
VDEF:BitsOutMin=BitsOut,MINIMUM \\ | |
VDEF:BitsOutLast=BitsOut,LAST \\ | |
COMMENT:"\\s" \\ | |
AREA:BitsOut#33CC33:"Transmit" \\ | |
GPRINT:BitsOutLast:"Cur\\: %7.2lf %Sbits/sec" \\ | |
GPRINT:BitsOutAvg:"Avg\\: %7.2lf %Sbits/sec" \\ | |
GPRINT:BitsOutMax:"Max\\: %7.2lf %Sbits/sec" \\ | |
GPRINT:BitsOutMin:"Min\\: %7.2lf %Sbits/sec\\n" \\ | |
LINE3:BitsIn#0000CC:"Receive " \\ | |
GPRINT:BitsInLast:"Cur\\: %7.2lf %Sbits/sec" \\ | |
GPRINT:BitsInAvg:"Avg\\: %7.2lf %Sbits/sec" \\ | |
GPRINT:BitsInMax:"Max\\: %7.2lf %Sbits/sec" \\ | |
GPRINT:BitsInMin:"Min\\: %7.2lf %Sbits/sec\\n" &> /dev/null | |
rrdtool graph /var/www/html/router-packets-hour.png \\ | |
-w 850 -h 175 -a PNG \\ | |
--slope-mode \\ | |
--units-exponent 0 \\ | |
--start end-3600 --end now-70 \\ | |
--font DEFAULT:10: \\ | |
--title "Packet Fowarding Rate (1 hour)" \\ | |
--watermark "\`date +'%b %_d at %_I:%M %P' | sed 's/ / /g'\`" \\ | |
--vertical-label "packets/sec" \\ | |
--x-grid MINUTE:1:MINUTE:10:MINUTE:10:0:%R \\ | |
--lower-limit=0 \\ | |
DEF:PktsIn=/var/www/html/router-data.rrd:receivepackets:AVERAGE \\ | |
DEF:PktsOut=/var/www/html/router-data.rrd:transmitpackets:AVERAGE \\ | |
COMMENT:"\\s" \\ | |
AREA:PktsOut#33CC33:"Transmit" \\ | |
GPRINT:PktsOut:LAST:"Cur\\: %8.0lf pkts/sec" \\ | |
GPRINT:PktsOut:AVERAGE:"Avg\\: %8.0lf pkts/sec" \\ | |
GPRINT:PktsOut:MAX:"Max\\: %8.0lf pkts/sec" \\ | |
GPRINT:PktsOut:MIN:"Min\\: %8.0lf pkts/sec\\n" \\ | |
LINE3:PktsIn#0000CC:"Receive " \\ | |
GPRINT:PktsIn:LAST:"Cur\\: %8.0lf pkts/sec" \\ | |
GPRINT:PktsIn:AVERAGE:"Avg\\: %8.0lf pkts/sec" \\ | |
GPRINT:PktsIn:MAX:"Max\\: %8.0lf pkts/sec" \\ | |
GPRINT:PktsIn:MIN:"Min\\: %8.0lf pkts/sec\\n" &> /dev/null | |
rrdtool graph /var/www/html/router-packets-day.png \\ | |
-w 850 -h 175 -a PNG \\ | |
--slope-mode \\ | |
--units-exponent 0 \\ | |
--start end-86400 --end now-70 \\ | |
--font DEFAULT:10: \\ | |
--title "Packet Fowarding Rate (1 day)" \\ | |
--watermark "\`date +'%b %_d at %_I:%M %P' | sed 's/ / /g'\`" \\ | |
--vertical-label "packets/sec" \\ | |
--x-grid MINUTE:10:HOUR:1:MINUTE:120:0:%R \\ | |
--lower-limit=0 \\ | |
DEF:PktsIn=/var/www/html/router-data.rrd:receivepackets:AVERAGE \\ | |
DEF:PktsOut=/var/www/html/router-data.rrd:transmitpackets:AVERAGE \\ | |
COMMENT:"\\s" \\ | |
AREA:PktsOut#33CC33:"Transmit" \\ | |
GPRINT:PktsOut:LAST:"Cur\\: %8.0lf pkts/sec" \\ | |
GPRINT:PktsOut:AVERAGE:"Avg\\: %8.0lf pkts/sec" \\ | |
GPRINT:PktsOut:MAX:"Max\\: %8.0lf pkts/sec" \\ | |
GPRINT:PktsOut:MIN:"Min\\: %8.0lf pkts/sec\\n" \\ | |
LINE3:PktsIn#0000CC:"Receive " \\ | |
GPRINT:PktsIn:LAST:"Cur\\: %8.0lf pkts/sec" \\ | |
GPRINT:PktsIn:AVERAGE:"Avg\\: %8.0lf pkts/sec" \\ | |
GPRINT:PktsIn:MAX:"Max\\: %8.0lf pkts/sec" \\ | |
GPRINT:PktsIn:MIN:"Min\\: %8.0lf pkts/sec\\n" &> /dev/null | |
rrdtool graph /var/www/html/router-packets-week.png \\ | |
-w 850 -h 175 -a PNG \\ | |
--slope-mode \\ | |
--units-exponent 0 \\ | |
--start end-604800 --end now-70 \\ | |
--font DEFAULT:10: \\ | |
--title "Packet Fowarding Rate (1 week)" \\ | |
--watermark "\`date +'%b %_d at %_I:%M %P' | sed 's/ / /g'\`" \\ | |
--vertical-label "packets/sec" \\ | |
--x-grid HOUR:8:DAY:1:DAY:1:86400:%A \\ | |
--lower-limit=0 \\ | |
DEF:PktsIn=/var/www/html/router-data.rrd:receivepackets:AVERAGE \\ | |
DEF:PktsOut=/var/www/html/router-data.rrd:transmitpackets:AVERAGE \\ | |
COMMENT:"\\s" \\ | |
AREA:PktsOut#33CC33:"Transmit" \\ | |
GPRINT:PktsOut:LAST:"Cur\\: %8.0lf pkts/sec" \\ | |
GPRINT:PktsOut:AVERAGE:"Avg\\: %8.0lf pkts/sec" \\ | |
GPRINT:PktsOut:MAX:"Max\\: %8.0lf pkts/sec" \\ | |
GPRINT:PktsOut:MIN:"Min\\: %8.0lf pkts/sec\\n" \\ | |
LINE3:PktsIn#0000CC:"Receive " \\ | |
GPRINT:PktsIn:LAST:"Cur\\: %8.0lf pkts/sec" \\ | |
GPRINT:PktsIn:AVERAGE:"Avg\\: %8.0lf pkts/sec" \\ | |
GPRINT:PktsIn:MAX:"Max\\: %8.0lf pkts/sec" \\ | |
GPRINT:PktsIn:MIN:"Min\\: %8.0lf pkts/sec\\n" &> /dev/null | |
EOF | |
chmod +x /usr/local/bin/router-graph.sh | |
fi | |
if [ ! -f /etc/cron.d/router-poll ]; then | |
cat <<-EOF > /etc/cron.d/router-poll | |
* * * * * root /usr/local/bin/router-poll.sh | |
EOF | |
fi | |
if [ ! -f /etc/cron.d/router-graph ]; then | |
cat <<-EOF > /etc/cron.d/router-graph | |
* * * * * root /usr/local/bin/router-graph.sh | |
EOF | |
fi |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment