From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from svn.comics.unina.it (unknown [143.225.229.147]) by huchra.bufferbloat.net (Postfix) with ESMTP id 4F76E2016F7 for ; Thu, 26 May 2011 06:54:10 -0700 (PDT) Received: from www-data by svn.comics.unina.it with local (Exim 4.69) (envelope-from ) id 1QPbEk-0002tt-K7 for bismark-commits@lists.bufferbloat.net; Thu, 26 May 2011 16:08:30 +0200 To: bismark-commits@lists.bufferbloat.net From: walter@svn.comics.unina.it Message-Id: Date: Thu, 26 May 2011 16:08:30 +0200 X-Mailman-Approved-At: Fri, 27 May 2011 09:25:59 -0700 Subject: [Bismark-commits] rev 350 - trunk/server/scripts X-BeenThere: bismark-commits@lists.bufferbloat.net X-Mailman-Version: 2.1.13 Precedence: list List-Id: Commit log for the bismark source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 26 May 2011 13:54:10 -0000 Author: walter Date: 2011-05-26 16:08:30 +0200 (Thu, 26 May 2011) New Revision: 350 Modified: trunk/server/scripts/bdm Log: bdm: added mslist command fixed cleardev query Modified: trunk/server/scripts/bdm =================================================================== --- trunk/server/scripts/bdm 2011-05-26 11:36:22 UTC (rev 349) +++ trunk/server/scripts/bdm 2011-05-26 14:08:30 UTC (rev 350) @@ -31,6 +31,8 @@ exec Execute a shell command on list List available devices and tunnels + + mslist List configured measurement servers readmsg Read incoming messages @@ -135,6 +137,9 @@ list) list $2 ;; + mslist) + mslist + ;; readmsg) read_msg ;; @@ -541,27 +546,30 @@ # Dump devices table echo -e "${BLUE}Latest version: ${WHITE}$VERSION" echo -e "${BLUE}\nDevices:" - echo -e "${WHITE}ID\tIP\t\tUSER\tVERSION\tLAST PROBE" + echo -ne "${WHITE}" + printf "%-16s %-15s %-7s %-20s %-10s\n" ID IP VERSION LAST_PROBE USER IFS=$'\n' - for dev in $(query $BDM_DB 'SELECT id,ip,user,version,ts FROM devices ORDER BY id;'); do - IFS=$'|' read id ip user ver ts <<< "$dev" + for dev in $(query $BDM_DB 'SELECT id,ip,version,ts,user FROM devices ORDER BY id;'); do + IFS=$'|' read id ip ver ts user <<< "$dev" off_time=$(( $(date +%s) - $ts )) + [ "$user" ] || user=root if [ $off_time -lt 300 ]; then echo -ne $GREEN elif [ $off_time -lt 600 ]; then echo -ne $YELLOW - [ $2 ] && sendmail $id "Device $id went offline" + [ $1 ] && sendmail $id "Device $id went offline" else echo -ne $RED fi # [ $(mysql -NB -u root -e "SELECT deviceid FROM DEVICES WHERE deviceid='$id'" $MYSQL_DB) ] || printf "#" - printf "%s\t%s\t%s\t%s\t%s\n" $id $ip $user $ver $(date -d @$ts +"%Y-%m-%d %H:%M:%S") + printf "%-16s %-15s %-7s %-20s %-10s\n" $id $ip $ver $(date -d @$ts +"%Y-%m-%d %H:%M:%S") $user done # Dump tunnels table echo -e "${BLUE}\nTunnels:" - echo -e "${WHITE}ID\tPORT\tSTART TIME" - echo -ne $GREEN + echo -ne "${WHITE}" + printf "%-16s %-5s %-20s\n" ID PORT START_TIME + IFS=$'\n' for dev in $(query $BDM_DB 'SELECT * FROM tunnels ORDER BY id;'); do IFS=$'|' read id port ts <<< "$dev" @@ -573,7 +581,7 @@ else echo -ne $RED fi - printf "%s\t%s\t%s\n" $id $port $(date -d @$ts +"%Y-%m-%d %H:%M:%S") + printf "%-16s %-5s %-20s\n" $id $port $(date -d @$ts +"%Y-%m-%d %H:%M:%S") done echo -ne $NO_COLOR @@ -589,6 +597,55 @@ echo -ne $NO_COLOR } +# List measurement servers info +function mslist() +{ + # Dump measure servers table with capabilities + echo -e "${BLUE}\nMeasurement Servers:" + echo -ne "${WHITE}" + printf "%-15s %-8s %-11s %s\n" IP ZONE FREE_TS SERVICES + IFS=$'\n' + for ms in $(query $MSR_DB 'SELECT ip,zone,free_ts FROM targets ORDER BY ip;'); do + IFS=$'|' read ip zone ts <<< "$ms" + + #off_time=$(( $(date +%s) - $ts )) + #[ "$user" ] || user=root + #if [ $off_time -lt 300 ]; then + echo -ne $GREEN + #elif [ $off_time -lt 600 ]; then + # echo -ne $YELLOW + # [ $2 ] && sendmail $id "MServer $id went offline" + #else + # echo -ne $RED + #fi + + printf "%-15s %-8s %-11s " $ip $zone $ts + + for cap in $(query $MSR_DB 'SELECT service,info FROM capabilities WHERE ip="'$ip'" ORDER BY service;'); do + IFS=$'|' read serv info <<< "$cap" + + printf "${BLUE}(${MAGENTA}%s${BLUE},${MAGENTA}%s${BLUE})" $serv $info + done + printf "\n" + done + + # Dump measure servers table with capabilities + echo -e "${BLUE}\nMeasure Service Types:" + echo -ne "${WHITE}" + printf "%-10s %s\n" TYPE MUTEX + echo -ne $MAGENTA + + IFS=$'\n' + for ms in $(query $MSR_DB 'SELECT type,exclusive FROM mtypes ORDER BY type;'); do + IFS=$'|' read tp mutex <<< "$ms" + + [ $mutex -eq 0 ] && mutex=no || mutex=yes + printf "%-10s %s\n" $tp $mutex + done + + echo -ne $NO_COLOR +} + # Copy file to device /tmp directory # $1 = file # $2 = dev id @@ -695,7 +752,7 @@ function cleardev() { if [ $1 ]; then - query $BDM_DB "DELETE FROM devices WHERE id=$1;" + query $BDM_DB "DELETE FROM devices WHERE id=\"$1\";" else echo "Delete all devices (yes/no)?" read a