src/utils/qa/checkBOT.csh 1.13

1.13 2009/05/14 23:17:15 kuhn
removed sessionIDs to expose IP itself for getting location of user
Index: src/utils/qa/checkBOT.csh
===================================================================
RCS file: /projects/compbio/cvsroot/kent/src/utils/qa/checkBOT.csh,v
retrieving revision 1.12
retrieving revision 1.13
diff -b -B -U 1000000 -r1.12 -r1.13
--- src/utils/qa/checkBOT.csh	11 Apr 2009 00:37:01 -0000	1.12
+++ src/utils/qa/checkBOT.csh	14 May 2009 23:17:15 -0000	1.13
@@ -1,92 +1,96 @@
 #!/bin/tcsh
 source `which qaConfig.csh`
 
 ####################
 #  06-15-05 Bob Kuhn
 #
 #  Wrapper around bottleneck check
 #
 ####################
 
 set ip=""
+set chopIDs=""
 set worst=""
 set mode=""
 
 if ($#argv < 1 || $#argv > 2 ) then
   echo
   echo "  wrapper around bottleneck check."
   echo "  gives delay stats for IP address(es)."
   echo
   echo '      usage:  ipAddress [terse]'
   echo '              (terse gives only data)'
   echo
   echo '      (use ipAddress = "all" to get all IPs having delays)'
   echo
   exit
 else
   set ip=$argv[1]
 endif
 
 if ($#argv == 2 ) then
   set mode=$argv[2]
   if ($mode !=  "terse" ) then
     echo
     echo '  sorry, the second argument can only be "terse"'
     echo
     exit 1
   endif
 endif
 
 if ( "$HOST" != "hgwdev" ) then
  echo "\n error: you must run this script on dev!\n"
  exit 1
 endif
 
 echo
 if ($ip == "all") then
   rm -f ipFile
   /usr/local/bin/bottleneck -host=genome-bottle list | egrep "current"
   /usr/local/bin/bottleneck -host=genome-bottle list | grep -w -v "0" \
      | grep -v "current" | sort -nr -k5 > ipFile
   set allIPs=`cat ipFile | awk '{print $1}'`
   set worst=`echo $allIPs | awk '{print $1}'`
   cat ipFile
   echo
 
-  foreach ip (`echo $allIPs`)
+  # get locations (strip off sessionID)
+  set chopIPs=`echo $allIPs | sed "s/ /\n/"g \
+    | awk -F"." '{print $NF-3"."$NF-2"."$NF-1"."$NF}'`
+  foreach ip (`echo $chopIPs`)
     set orgName=`ipw $ip | grep OrgName | sed -e "s/OrgName: //"` > /dev/null
     set current=`grep -w $ip ipFile | awk '{print $5}'`
     echo "$ip\t\t$current\t  $orgName"
   end
 else
   /usr/local/bin/bottleneck -host=genome-bottle list | egrep -w "$ip|current"
 endif
 echo 
 
 if ($mode == "terse") then
   exit 0
 endif
 
 echo "  hits    = total number of accesses since started tracking"
 echo "  time    = seconds since last hit"
 echo "  max     = the most delay time slapped on this source IP, in ms"
 echo "  current = the current delay in milliseconds."
 echo
 echo "  delay decays at the rate of 10 milliseconds per second"
 echo '  each new hit adds 150 milliseconds to "current"'
 echo
 echo "  current shows the number of milliseconds they would "
 echo "  be delayed if they hit us with a query now.  "
 echo "  If current is over 10,000 they get a message.  If it's"
 echo "  over 15,000 they get cut off with a ruder message."
 echo
 
 echo
 echo "the longest delay is from:"
 
 if ($worst != "") then
   ipw $worst | head -10
 endif
 
 rm -f ipFile
 exit