[munin/sockets] on factorise le code
darcs-hash:20090421211242-bd074-3e936372c575ab42848a053f78281a9044dc0dcd.gz
This commit is contained in:
parent
17c310a250
commit
6e61a4a029
1 changed files with 19 additions and 22 deletions
|
@ -1,4 +1,4 @@
|
|||
#!/bin/sh
|
||||
#!/bin/bash
|
||||
#
|
||||
# # Parameters:
|
||||
#
|
||||
|
@ -13,6 +13,8 @@ myname="connexions"
|
|||
|
||||
name="${name-\<$myname\>}"
|
||||
REGEX="${regex-\<$name\>}"
|
||||
services=(http ssh smtp imap nfs ldap)
|
||||
|
||||
|
||||
if [ "$1" = "autoconf" ]; then
|
||||
echo yes
|
||||
|
@ -24,37 +26,32 @@ if [ "$1" = "suggest" ]; then
|
|||
fi
|
||||
|
||||
if [ "$1" = "config" ]; then
|
||||
|
||||
echo graph_title Number of $myname
|
||||
echo 'graph_args --base 1000 --vertical-label connexions -l 0'
|
||||
echo 'graph_category network'
|
||||
echo "imap.label Connexions imap"
|
||||
echo "ssh.label Connexions ssh"
|
||||
echo "http.label Connexions web"
|
||||
echo "other.label Connexions diverses"
|
||||
echo "in.label Connexions entrantes"
|
||||
echo "out.label Connexions sortantes"
|
||||
cat <<EOF
|
||||
graph_title Number of $myname
|
||||
graph_args --base 1000 --vertical-label connexions -l 0
|
||||
graph_category network
|
||||
`for dmn in ${services[@]}; do echo $dmn.label Connexions $dmn; done`
|
||||
other.label Connexions diverses
|
||||
in.label Connexions entrantes
|
||||
out.label Connexions sortantes
|
||||
EOF
|
||||
exit 0
|
||||
fi
|
||||
|
||||
ip=`ifconfig | perl -ne 'print ${^MATCH} if /10\.231\.136\.\d+/p'`
|
||||
ip=$(ifconfig | perl -ne 'print ${^MATCH} if /10\.231\.136\.\d+/p')
|
||||
ips=${IP/10/}
|
||||
TMP=`mktemp -t sockets.XXXXXX`
|
||||
trap "rm $TMP* 2>/dev/null" 0
|
||||
|
||||
/sbin/ss > $TMP
|
||||
|
||||
printf "imap.value "
|
||||
grep "$ips:imap" $TMP | wc -l
|
||||
|
||||
printf "ssh.value "
|
||||
grep "$ips:ssh" $TMP | wc -l
|
||||
|
||||
printf "http.value "
|
||||
grep "$ips:http" $TMP | wc -l
|
||||
for dmn in ${services[@]}; do
|
||||
printf "$dmn.value "
|
||||
grep "$ips:$dmn" $TMP | wc -l
|
||||
done
|
||||
|
||||
printf "other.value "
|
||||
perl -ne "print if ! /$ips:(imap|ssh|http)/" $TMP | wc -l
|
||||
perl -ne "print if ! /$ips:`echo ${services[@]} | sed 's/ /|/g'`/" $TMP | wc -l
|
||||
|
||||
printf "in.value "
|
||||
perl -ne "print if ! /$ips:\d{5}/" $TMP | wc -l
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue