1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73
|
#!@@GOODSH@@
# -*- sh -*-
: << =cut
=head1 NAME
ipac-ng - Skeleton-plugin to monitor ipac-ng rules.
=head1 CONFIGURATION
No configuration
=head1 USAGE
To monitor a rule, copy ipac-ng and edit variables.
=head1 AUTHOR
Unknown author
=head1 LICENSE
GPLv2
=head1 MAGIC MARKERS
#%# family=contrib
#%# capabilities=autoconf
=cut
# Visible name of graph
TITLE="traffic"
# perlre(1) expressions passed to ipacsum -f. For more info
# `man ipacsum`, `man perlre`.
UP="upload rule"
DOWN="download rule"
if [ "$1" = "autoconf" ]; then
if [ -x /usr/sbin/fetchipac ] && [ -x /usr/sbin/ipacsum ]; then
echo yes
exit 0
else
echo "no (can not exectute /usr/sbin/fetchipac or /usr/sbin/ipacsum)"
exit 0
fi
fi
if [ "$1" = "config" ]; then
echo "graph_order down up"
echo "graph_title $TITLE"
echo 'graph_args --base 1000'
echo 'graph_vlabel b/s in (-) / out (+)'
echo 'down.label received'
echo 'down.graph no'
# Divide it by 1500 seconds (5m), to get b/s
echo 'down.cdef down,1500,/'
echo 'up.label b/s'
echo 'up.negative down'
echo 'up.cdef up,1500,/'
exit 0
fi;
if fetchipac; then
ipacsum -s 5m -x -f "$UP" | tail -n 1 | cut -d : -f 2 | awk \
'{print "up.value " $1}'
ipacsum -s 5m -x -f "$DOWN" | tail -n 1 | cut -d : -f 2 | awk \
'{print "down.value " $1}'
else
echo 'up.value U'
echo 'down.value U'
fi
|