#!/bin/bash #Variablen und Umgebung setzen: MASTERLOG=$LOGPFAD/bi_update.log #erzeuge Logs Verzeichnis wenn es noch nicht existiert: mkdir -p $LOGPFAD ERROR_FLAG=0 ERROR_LOG="" executeUpdate() { JOB=$1 LOGPFAD=$2 MYMASTERLOG=$3 MODUL=$JOB MODUL_UPPER=`echo $MODUL | tr [a-z] [A-Z]` JOBLOG=$LOGPFAD/"$JOB"_update.log echo "" >>$MYMASTERLOG echo "--- Start Update für: $JOB ---" >>$MYMASTERLOG date >>$MYMASTERLOG echo java -Xmx${MEM} -cp "...CLASSPATH" -Dfile.encoding=UTF-8 de.his.edustore.modules.WebFrontendForModuleUpdate $JOB true '$SUPERX_DIR='$WEBAPP'/WEB-INF/conf/edustore $'$MODUL_UPPER'_LOAD_PFAD='$WEBAPP'/WEB-INF/conf/edustore/db/module/'$MODUL'/rohdaten $'$MODUL_UPPER'_PFAD='$WEBAPP'/WEB-INF/conf/edustore/db/module/'$MODUL >$JOBLOG 2>&1 java -Xmx${MEM} -cp "$QIS_CLASSPATH" -Dfile.encoding=UTF-8 de.his.edustore.modules.WebFrontendForModuleUpdate $JOB true '$SUPERX_DIR='$WEBAPP'/WEB-INF/conf/edustore $'$MODUL_UPPER'_LOAD_PFAD='$WEBAPP'/WEB-INF/conf/edustore/db/module/'$MODUL'/rohdaten $'$MODUL_UPPER'_PFAD='$WEBAPP'/WEB-INF/conf/edustore/db/module/'$MODUL >>$JOBLOG 2>&1 RETURN_CODE=$? echo "Returncode von dem Job des Moduls $JOB ist: $RETURN_CODE" >>$MYMASTERLOG date >>$MYMASTERLOG if [ $RETURN_CODE -eq 0 ] then echo "--- Ende Update von $JOB: erfolgreich ---" >>$MYMASTERLOG else echo ">>>> Achtung: Das Update des Modules $JOB wurde mit einem Fehler beendet! <<<<" >> $MYMASTERLOG echo "--- Ende des Updates vom Modul $JOB mit Fehler ---" >>$MYMASTERLOG ERROR_FLAG=1 fi ERROR_LOG+=" $MAIL_APPEND $JOBLOG" echo "" >>$MYMASTERLOG } # Schleife über Updates: echo "Starte BI-Jobs für die Module: $BI_UPDATE_MODULES" >$MASTERLOG date >>$MASTERLOG echo -e "######################################\n\n" >>$MASTERLOG for JOB_SINGLE in ${BI_UPDATE_MODULES[@]} ; do executeUpdate $JOB_SINGLE $LOGPFAD $MASTERLOG done echo -e "\n\n######################################" >>$MASTERLOG echo -e "-- Ende BI update `date`\n\n" >>$MASTERLOG # Mailversand if [ $ERROR_FLAG -eq 0 ] then if [ "$MAILPROG" != "" ] then $MAILPROG -s "$MAIL_BETREFF_UPDATE$MAIL_BETREFF_SUFFIX_ERFOLGREICH" $LOGMAIL <$MYMASTERLOG fi else if [ "$MAILPROG" != "" ] then echo "Sende Logmail an $LOGMAIL" $MAILPROG -s "$MAIL_BETREFF_UPDATE$MAIL_BETREFF_SUFFIX_FEHLER" $ERROR_LOG $LOGMAIL <$MYMASTERLOG fi fi