#!/bin/sh function WriteLn(){ echo "$1" } function ReportToTeam(){ echo "$1: $2" } TIER="T2_IN_TIFR" #TIER="T2_BR_SPRACE" PHEDEX_PROD_URL="http://cmsweb.cern.ch/phedex/prod/Components::Status" PHEDEX_DEBG_URL="http://cmsweb.cern.ch/phedex/debug/Components::Status" PRODUCTION_STATUS=`links -source $PHEDEX_PROD_URL` DEBUG_STATUS=`links -source $PHEDEX_DEBG_URL` PROD_POSITION=`echo "$PRODUCTION_STATUS" | grep -n "$TIER" | awk -F: '{print $1}'` DEBG_POSITION=`echo "$DEBUG_STATUS" | grep -n "$TIER" | awk -F: '{print $1}'` echo debg-position $DEBG_POSITION if [ "$PROD_POSITION" != "" ];then SED_DATA="$PROD_POSITION,$((PROD_POSITION+3))p" PROD_CODE=`echo "$PRODUCTION_STATUS" | sed -n $SED_DATA | sed 's/<[^>]*>/ /g'` # PROD_CODE=`echo "$PRODUCTION_STATUS" | sed -n $SED_DATA` IS_AGENT_DOWN=`echo "$PROD_CODE" | grep DOWN` if [ "$IS_AGENT_DOWN" != "" ];then ReportToTeam "PHEDEX-DOWN" "Phedex(production) agent down" WriteLn "Phedex(production) agents down." exit 0 else WriteLn "Phedex(production) agents are OK." fi fi if [ "$DEBG_POSITION" != "" ];then SED_DATA="$DEBG_POSITION,$((DEBG_POSITION+3))p" DEBG_CODE=`echo "$DEBUG_STATUS" | sed -n $SED_DATA | sed 's/<[^>]*>/ /g'` # PROD_CODE=`echo "$PRODUCTION_STATUS" | sed -n $SED_DATA` IS_AGENT_DOWN=`echo "$DEBG_CODE" | grep DOWN` if [ "$IS_AGENT_DOWN" != "" ];then ReportToTeam "PHEDEX-DOWN" "Phedex(debug) agent down" WriteLn "Phedex(debug) agents down." exit 0 else WriteLn "Phedex(debug) agents are OK." fi fi
Caso algum agente esteja down um email é enviado para a lista de discussão dos sysadmins do sprace.
-- JadirSilva - 14 Jan 2009
antalya escort bursa escort eskisehir escort istanbul escort izmir escort