Files
gateway-mnp-dbc/dbcmnpsrc/FE/mnpapp/script/governance/monitoring.sh
2024-05-13 12:54:14 +02:00

114 lines
3.7 KiB
Bash

#!/usr/bin/ksh
#set -x
###########################################################
# Progetto: Gateway MNP
###########################################################
THIS_PATH=`dirname $0`
. $THIS_PATH/../setEnv.sh
$THIS_PATH/../TestNodo.sh
if [ $? -eq 0 ]
then
# ESECUZIONE SCRIPT
if [[ "$#" -eq 2 ]]
then
#passaggio parametro del grado di parallelismo
PARA=$2
FREQ=$1
elif [[ "$#" -eq 1 ]]
then
#per default viene posto il grado di parallelismo a 20
PARA=20
FREQ=$1
else
echo 'usage:monitoring.sh "frequenza(formato hh24:mi)" [ grado di parallelismo (formato 999) ]'
exit
fi
#controllo del formato dei parametri
if ! echo $PARA | grep ^[0-9]$ > /dev/null 2>/dev/null
then if ! echo $PARA | grep ^[0-9][0-9]$ > /dev/null 2>/dev/null
then if ! echo $PARA | grep ^[0-9][0-9][0-9]$ > /dev/null 2>/dev/null
then
echo 'usage:monitoring.sh frequenza [grado di parallelismo]'
echo 'formato frequenza:'
echo ' - hh24:mi'
echo ' - 00:45_23:45'
echo ' - 10:15_19:15'
echo 'formato grado di parallelismo (opzionale per default è 20):'
echo ' - numero intero da 0 a 999'
exit
fi
fi
fi
if ! echo $FREQ | grep ^[0-1][0-9]:[0-5][0-9]$ > /dev/null 2>/dev/null
then
if ! echo $FREQ | grep ^[2][0-3]:[0-5][0-9]$ > /dev/null 2>/dev/null
then
if ! echo $FREQ | grep ^[0-1][0-9]:[0-5][0-9]_[0-1][0-9]:[0-5][0-9]$ > /dev/null 2>/dev/null
then
if ! echo $FREQ | grep ^[0-1][0-9]:[0-5][0-9]_[2][0-3]:[0-5][0-9]$ > /dev/null 2>/dev/null
then
echo 'usage:monitoring.sh frequenza [grado di parallelismo]'
echo 'formato frequenza:'
echo ' - hh24:mi'
echo ' - 00:45_23:45'
echo ' - 10:15_19:15'
echo 'formato grado di parallelismo (opzionale per default è 20):'
echo ' - numero intero da 0 a 999'
exit
fi
fi
fi
fi
PATH_INDICATORI="PATH_INDICATORI"
export PATH_INDICATORI
HOSTARIA=`uname -n`
nome_file="${MNP_SCRIPT_GOV_INPUT_HOME}/IndicatoriMNP.properties"
LISTA=`grep "$FREQ;" $nome_file | grep -v '-' | more`
i=1
indicatori_elab=''
PARA=`expr $PARA - 1`
for linea in $LISTA
do
indicatore=`echo $linea | cut -f2 -d';'`
partizione=`echo $linea | cut -f3 -d';'`
adesso=$(date)
if [ $i -le $PARA ]
then
echo '******' $adesso Indicatore $indicatore
echo exit|$MNP_SCRIPT_HOME/sqlExecutor.sh -sqlplus ${MNP_SCRIPT_GOV_SQL_HOME}/$indicatore.sql $FREQ $partizione $PATH_INDICATORI $HOSTARIA> ${MNP_LOG_SCRIPT_GOV_HOME}/$indicatore.log 2>&1 &
indicatori_elab=$indicatori_elab' '$indicatore
i=`expr $i + 1`
else
echo '******' $adesso Indicatore $indicatore
echo exit|$MNP_SCRIPT_HOME/sqlExecutor.sh -sqlplus ${MNP_SCRIPT_GOV_SQL_HOME}/$indicatore.sql $FREQ $partizione $PATH_INDICATORI $HOSTARIA> ${MNP_LOG_SCRIPT_GOV_HOME}/$indicatore.log 2>&1 &
indicatori_elab=$indicatori_elab' '$indicatore
wait
echo '------------------- Indicatori elaborati : '$indicatori_elab
i=1
indicatori_elab=''
fi
done
if [ $i -ne 1 ]
then
echo '------------------- Indicatori elaborati : '$indicatori_elab
fi
else
echo 'SCRIPT NON ESEGUITO'
fi
exit 0