#!/bin/sh
FILES=$(find /var/run | grep dpinger | grep sock)
Latency_Low=200000
Latency_High=500000
Loss_Low=10
Loss_High=20
database=LAGOON
server=10.120.10.16
for File in $FILES
do
File_Content=$(cat $File)
Gateway_Name=$(echo $File_Content | cut -d ' ' -f 1)
Part_Mon_IP="${File##*~}"
Monitoring_IP="${Part_Mon_IP%.*}"
Part_Wan_IP=`echo $File:q | sed 's/~/ /g'`
Wan_IP=$(echo $Part_Wan_IP | cut -d ' ' -f 2)
RTT=$(echo $File_Content | cut -d ' ' -f 2)
RTT_SD=$(echo $File_Content | cut -d ' ' -f 3)
Loss=$(echo $File_Content | cut -d ' ' -f 4)
Status="Online"
Gate_Health="0"
# Gate_Health 0 = Online 1 = Delay 2 = High_Delay 3 = Loss 4 = High_Loss 5 = Down
if (test $RTT -gt $Latency_Low) then
Status="Delay"
Gate_Health="1"
fi
if (test $RTT -gt $Latency_High) then
Status="High_Delay"
Gate_Health="2"
fi
if (test $Loss -gt $Loss_Low) then
Status="Loss"
Gate_Health="3"
fi
if (test $Loss -gt $Loss_High) then
Status="High_Loss"
Gate_Health="4"
fi
if (test $Loss -eq "100") then
Status="Down"
Gate_Health="5"
fi
output=$(echo "wans_health,host="$(hostname)",gw_name="$Gateway_Name",wan_ip="$Wan_IP",mon_ip="$Monitoring_IP",rtt="$RTT",rrtsd="$RTT_SD",loss="$Loss",status="$Status" value="$Gate_Health"")
url=`echo "http://"${server}":8086/write?db="${database}""`
/usr/local/bin/curl -i -XPOST $url --data-binary "$output" -s > /usr/local/tmp/outRTT.txt
done
IyEvYmluL3NoCgpGSUxFUz0kKGZpbmQgL3Zhci9ydW4gIHwgZ3JlcCBkcGluZ2VyIHwgZ3JlcCBzb2NrKQoKTGF0ZW5jeV9Mb3c9MjAwMDAwCkxhdGVuY3lfSGlnaD01MDAwMDAKTG9zc19Mb3c9MTAKTG9zc19IaWdoPTIwCgpkYXRhYmFzZT1MQUdPT04Kc2VydmVyPTEwLjEyMC4xMC4xNgoKZm9yIEZpbGUgaW4gJEZJTEVTCmRvCglGaWxlX0NvbnRlbnQ9JChjYXQgJEZpbGUpCiAgICAgICAgR2F0ZXdheV9OYW1lPSQoZWNobyAkRmlsZV9Db250ZW50IHwgY3V0IC1kICcgJyAtZiAxKQogICAgICAgIFBhcnRfTW9uX0lQPSIke0ZpbGUjIyp+fSIKCU1vbml0b3JpbmdfSVA9IiR7UGFydF9Nb25fSVAlLip9IgoJUGFydF9XYW5fSVA9YGVjaG8gJEZpbGU6cSB8IHNlZCAncy9+LyAvZydgCglXYW5fSVA9JChlY2hvICRQYXJ0X1dhbl9JUCB8IGN1dCAtZCAnICcgLWYgMikKICAgICAgICBSVFQ9JChlY2hvICRGaWxlX0NvbnRlbnQgfCBjdXQgLWQgJyAnIC1mIDIpCiAgICAgICAgUlRUX1NEPSQoZWNobyAkRmlsZV9Db250ZW50IHwgY3V0IC1kICcgJyAtZiAzKQogICAgICAgIExvc3M9JChlY2hvICRGaWxlX0NvbnRlbnQgfCBjdXQgLWQgJyAnIC1mIDQpCiAgICAgICAgICAgICAgICAKCVN0YXR1cz0iT25saW5lIgoJR2F0ZV9IZWFsdGg9IjAiCQoKICAgICAgICAjIEdhdGVfSGVhbHRoICAwID0gT25saW5lIDEgPSBEZWxheSAyID0gSGlnaF9EZWxheSAzID0gTG9zcyA0ID0gSGlnaF9Mb3NzIDUgPSBEb3duCgoJaWYgKHRlc3QgJFJUVCAtZ3QgJExhdGVuY3lfTG93KSB0aGVuCiAgICAgICAgCVN0YXR1cz0iRGVsYXkiCgkJR2F0ZV9IZWFsdGg9IjEiCiAgICAgICAgZmkKICAgICAgICBpZiAodGVzdCAkUlRUIC1ndCAkTGF0ZW5jeV9IaWdoKSB0aGVuCgkgICAgICAgIFN0YXR1cz0iSGlnaF9EZWxheSIKCQlHYXRlX0hlYWx0aD0iMiIKICAgICAgICBmaQogICAgICAgIGlmICh0ZXN0ICRMb3NzIC1ndCAkTG9zc19Mb3cpIHRoZW4KICAgICAgICAJU3RhdHVzPSJMb3NzIgoJCUdhdGVfSGVhbHRoPSIzIgogICAgICAgIGZpCiAgICAgICAgaWYgKHRlc3QgJExvc3MgLWd0ICRMb3NzX0hpZ2gpIHRoZW4KIAkJU3RhdHVzPSJIaWdoX0xvc3MiCgkJR2F0ZV9IZWFsdGg9IjQiCiAgICAgICAgZmkKICAgICAgICBpZiAodGVzdCAkTG9zcyAtZXEgIjEwMCIpIHRoZW4KICAgICAgICAJU3RhdHVzPSJEb3duIgoJCUdhdGVfSGVhbHRoPSI1IgogICAgICAgIGZpICAgICAgICAgICAgICAgICAgICAgIAoKICAgICAgICBvdXRwdXQ9JChlY2hvICJ3YW5zX2hlYWx0aCxob3N0PSIkKGhvc3RuYW1lKSIsZ3dfbmFtZT0iJEdhdGV3YXlfTmFtZSIsd2FuX2lwPSIkV2FuX0lQIixtb25faXA9IiRNb25pdG9yaW5nX0lQIixydHQ9IiRSVFQiLHJydHNkPSIkUlRUX1NEIixsb3NzPSIkTG9zcyIsc3RhdHVzPSIkU3RhdHVzIiB2YWx1ZT0iJEdhdGVfSGVhbHRoIiIpCiAgICAgICAgdXJsPWBlY2hvICJodHRwOi8vIiR7c2VydmVyfSI6ODA4Ni93cml0ZT9kYj0iJHtkYXRhYmFzZX0iImAKCiAgICAgICAgL3Vzci9sb2NhbC9iaW4vY3VybCAtaSAtWFBPU1QgJHVybCAtLWRhdGEtYmluYXJ5ICIkb3V0cHV0IiAtcyA+IC91c3IvbG9jYWwvdG1wL291dFJUVC50eHQKZG9uZQo=