Experience: is what you get soon after you need it.

Experience: is what you get soon after you need it.

Rasul Allah (sal Allahu alaihi wa sallam) said: "Restore the trusts of those who trust you, and deal not falsely with him who deals falsely with you." [Abu Dawud, Tirmidhi]

Search This Blog

Wednesday, July 26, 2017

Hyperion App backups - Unix script


To backup all the apps in Hyperion:


#!/bin/ksh
####################################################################
#                                                                  #
#  Who          When            What                               #
#  ----------------------------------------------------------------#
#  shaiks       24-JUL-17       Created
#                                                                  #
#                                                                  #
####################################################################
#
#set -x

date1=`date +'%d%b%y'`
date2=`date +'%d%b%Y%H%M%S'`

#Set Parameters
if [ ${#} -ne "1" ];then
        echo " Please pass the environment name"
exit 0
else
        ENV=$(echo $1 |tr "[:lower:]" "[:upper:]" )
fi

. /home/hypadm/EPM$ENV.env
if [ $ENV == "DEV" ] || [ $ENV == "TST" ];then
SCRIPTS_DIR=/PATH/scripts
else
SCRIPTS_DIR=/PATH$1/scripts
fi
APP_BACKUP_DIR=/HYP/$ENV/APP_BKP
BACKUP_DIR=$APP_BACKUP_DIR/$date2
LOG_FILE=$BACKUP_DIR/$(basename "$0" | cut -d \. -f1)_$ENV_$date2.log

mkdir -p $BACKUP_DIR
#echo $ENV $date2 $APP_BACKUP_DIR/$date2/ $BACKUP_DIR $APP_BACKUP_DIR $SCRIPTS_DIR $LOG_FILE
Utility.sh $SCRIPTS_DIR/${ENV}_APP_BACKUP_ALL.xml -b $BACKUP_DIR/  > $LOG_FILE 2>&1

#Verify Success or Failure
status=$(tail -n1 $LOG_FILE | grep -i success | awk '{print $4}')
if [[ $status == "Success" ]];then
echo $status | mailx -s "Hyperion $ENV App Backup completed Successfully" sshaiksameer@shaiksameer.com
else
uuencode $LOG_FILE $LOG_FILE | mailx -s "Hyperion $ENV App Backup failed - verify the attached log" shaiksameer@shaiksameer.com

#Delete App backups older than 45 days.
find $APP_BACKUP_DIR -prune -type d -mtime +45 -exec rm -rf {} \;







cat APP_BACKUP_ALL.xml
<?xml version="1.0" encoding="UTF-8"?>
<Package>
    <LOCALE>en_US</LOCALE>
    <User name="admin" password="Your password here"/>
    <Task>
        <Source type="Application" product="BPMA" project="Foundation" application="EPM Architect"/>
        <Target type="FileSystem" filePath="/EPMA-EPM Architect"/>
        <Artifact recursive="true" parentPath="/" pattern="*"/>
    </Task>
    <Task>
        <Source type="Application" product="HUB" project="Foundation" application="Shared Services"/>
        <Target type="FileSystem" filePath="/HSS-Shared Services"/>
        <Artifact recursive="true" parentPath="/" pattern="*"/>
    </Task>
    <Task>
        <Source type="Application" product="HAVA" project="Reporting and Analysis" application="Reporti
ng and Analysis"/>
        <Target type="FileSystem" filePath="/RnA-Reporting and Analysis"/>
        <Artifact recursive="true" parentPath="/" pattern="*"/>
    </Task>
    <Task>
        <Source type="Application" product="ESB" project="EssbaseCluster-1" application="EssbaseCluster
-1"/>
        <Target type="FileSystem" filePath="/ESB-EssbaseCluster-1"/>
        <Artifact recursive="true" parentPath="/" pattern="*"/>
    </Task>
    <Task>
        <Source type="Application" product="HP" project="Planning" application="SHAIK"/>
        <Target type="FileSystem" filePath="/HP-SHAIK"/>
        <Artifact recursive="true" parentPath="/Configuration" pattern="*"/>
        <Artifact recursive="true" parentPath="/Global Artifacts" pattern="*"/>
        <Artifact recursive="true" parentPath="/Plan Type" pattern="*"/>
        <Artifact recursive="true" parentPath="/Security" pattern="*"/>
    </Task>
       <Task>
        <Source type="Application" product="CALC" project="Foundation" application="Calculation Manager
"/>
        <Target type="FileSystem" filePath="/CALC-Calculation Manager"/>
        <Artifact recursive="true" parentPath="/" pattern="*"/>
    </Task>
</Package>

ESSBASE DATABASE Backups scripts in Unix

#!/bin/ksh
####################################################################
#                                                                  #
#  Who          When            What                               #
#  ----------------------------------------------------------------#
#  shaiks       24-JUL-17       Created
#                                                                  #
#                                                                  #
####################################################################
#

date1=`date +'%d%b%y'`
date2=`date +'%d%b%Y%H%M%S'`

#Set Parameters
if [ ${#} -ne "1" ];then
        echo " Please pass the environment name"
exit 0
else
        ENV=$(echo $1 |tr '[:lower:][:upper:]' '[:upper:][:lower:]')
fi

. /home/hypuser/EPM$ENV.env
if [ $ENV == "DEV" ] || [ $ENV == "TST" ];then
SCRIPTS_DIR=/PATH/scripts
else
SCRIPTS_DIR=/PATH$1/scripts
fi
DATA_BACKUP_DIR=/HYP/$ENV/DATA_BKP
BACKUP_DIR=$DATA_BACKUP_DIR/$date2
LOG_FILE=$BACKUP_DIR/$(basename "$0" | cut -d \. -f1)_$ENV_$date2.log

mkdir -p $BACKUP_DIR
#echo $ENV $date2 $DATA_BACKUP_DIR/$date2/ $SCRIPTS_DIR $LOG_FILE

. /home/hypadm/EPM$ENV.env

startMaxl.sh -D ${SCRIPTS_DIR}/essbase_data_backup_all.mxls ${MAXLPVTKEY} ${MAXLENCRID} ${MAXLENCRPWD}
${ESBSERVER} ${BACKUP_DIR} ${LOG_FILE} ${date2}

#Verify Success or Failure
status=$(grep -i error $LOG_FILE | awk '{print $1}'| uniq)
if [[ $status != "ERROR" ]];then
echo "Success"  | mailx -s "ESSBASE $ENV Backup completed Successfully" shaiksameer@shaiksameer.com
else
uuencode $LOG_FILE $LOG_FILE | mailx -s "ESSBASE $ENV Backup failed - verify the attached log" shaiksameer@shaiksameer.com
fi


#Delete Data backups older than 45 days.
find $DATA_BACKUP_DIR -prune -type d -mtime +45 -exec rm -rf {} \;


cat essbase_data_backup_all.mxls
/*Purpose: Data Back-up of all Essbase Databases */
/*    Log in to Essbase    */
login $key $1 $key $2 on $3;

spool on to "$5";

/*    Disable connection to RPT database */
alter application RPT disable connects;

/*    Back-up Reporting Data   */
export database RPT.RPT data to data_file "$4/RPT_RPT_data_export_$6.txt";

/*    Enable connection to RPT database */
alter application RPT enable connects;

spool off;
logout;
exit;