m0n0lithic icon

Sentinel for Check GFS Download process

m0n0lithic | PRO | 10/22/12 06:33:53 AM UTC | 0 ⭐ | 260 👁️ | Never ⏰ | []
Bash |

1.93 KB

|

None

|

0 👍

/

0 👎

#!/bin/bash
# 20121021: Verificar si hay demasiado retardo en la descarga de archivos GFS.
# Si la hay entonces cambia de host para descargar los GFS desde otro sitio alterno
 
TRY=1
HOST=1  #ftpprd.ncep
while [ $TRY -lt 7 ]; do
    echo "CICLO $TRY"
    PIDWGET1=`ps -efH | grep "\-c \-q \-N" | grep  -v grep| head -1 | awk '{print $2}'`
    # WGETFIL1=`ps -efH | grep "\-c \-q \-N" | head -1 | awk '{print $12}'`
    sleep 30m   # Espera 20 mins para verificar que en teoria este bajando los archivos dinamicamente
    PIDWGET2=`ps -efH | grep "\-c \-q \-N" | grep  -v grep | head -1 | awk '{print $2}'`
    # WGETFIL2=`ps -efH | grep "\-c \-q \-N" | head -1 | awk '{print $12}'`
    if [ ! -z $PIDWGET2]; then
        if [ $PIDWGET1 = $PIDWGET2 ]; then
            PIDVGFS=`ps -efH | grep verifgfs.sh |grep -v grep| head -1 | awk '{print $2}'`
            PIDSPOA=`ps -efH | grep spoa.sh | grep -v grep| head -1 | awk '{print $2}'`
            PIDGFSD=`ps -efH | grep gfsdown.py |grep -v grep|head -1 | awk '{print $2}'`
            if [ ! -z $PIDVGFS ];then
                kill -9 $PIDVGFS
            fi
            if [ ! -z $PIDSPOA ];then
                kill -9 $PIDSPOA
            fi
            if [ ! -z $PIDGFSD ];then
                kill -9 $PIDGFSD
            fi
            kill -9 $PIDWGET2
            if [ $HOST -eq 1 ]; then
                HOST=2      #nomads.ncep
                /spoa/scripts/bash/verifgfs.sh -dom=2 -host=$HOST </dev/null 2>&1 >> /opt/spoa/log/caribbean.log&
            else
                HOST=1      #ftpprd.ncep
                /spoa/scripts/bash/verifgfs.sh -dom=2 </dev/null 2>&1 >> /opt/spoa/log/caribbean.log&
            fi
            sleep 10
        fi
    else
        PIDGFSD=`ps -efH |grep gfsdown.py |grep -v grep|head -1 |awk '{print $2}'`
        if [ -z $PIDGFSD ]; then
            break
        fi
    fi
    let TRY=TRY+1
done
echo "**EXIT of gfscheck**"
exit 1

Comments