/u01/acfs/ogg/TROY_gg_monitor.sh
export ORACLE_HOME=/u01/oracle/product/11.2.0.3/db_1
export OGG_HOME=/u01/acfs/ogg/product/12.3.0.1/TROY
export ORACLE_SID=TROY_1
export PATH=/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:$ORACLE_HOME/bin:$OGG_HOME
export LD_LIBRARY_PATH=$OGG_HOME:$ORACLE_HOME/lib:/lib:/usr/lib
export CLASSPATH=$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
DBA_EMAIL=shalabh.mudgal@colt.net
logpath="/u01/acfs/ogg"
cd $logpath
logfile="$logpath/TROY_lag.txt"
logfile1="$logpath/TROY_lag1.txt"
# Output GG information to log file
echo 'INFO ALL' | $OGG_HOME/ggsci > $logfile
echo obey /u01/acfs/ogg/obey_TROY.txt | $OGG_HOME/ggsci > $logfile1
cat $logfile | egrep 'MANAGER|EXTRACT|REPLICAT'| tr ":" " " | while read LINE
do
case $LINE in
*)
PROCESS_TYPE=`echo $LINE | awk -F" " '{print $1}'`
PROCESS_STATUS=`echo $LINE | awk -F" " '{print $2}'`
PROCESS_NAME=`echo $LINE | awk -F" " '{print $3}'`
LAG_HH=`echo $LINE | awk -F" " '{print $4}'`
LAG_MM=`echo $LINE | awk -F" " '{print $5}'`
LAG_SS=`echo $LINE | awk -F" " '{print $6}'`
if [ "$PROCESS_STATUS" != "RUNNING" ]
then
cat $logfile | mailx -s "GoldenGate Process Not RUNNING on for database $ORACLE_SID" $DBA_EMAIL
fi
esac
done
cat $logfile1 | mailx -s "Info ... Goldengate process \"on `uname -n`($ORACLE_SID)" $DBA_EMAIL
/u01/acfs/ogg/obey_TROY.txt
if you want to monitor replicat
dblogin UserID ggadmin@TROY, Password ggadmin
info all
lag replicat R_ICJ01
lag replicat R1_ICJ01
if you want to monitor extract and pump use below
dblogin userid ggadmin@ICR01CRM password ggadmin
info all
lag extract E_ICR01
lag extract P_ICR01
lag extract E1_ICR01
lag extract P1_ICR01
scheduel the job in cron
00,15,30,45 * * * * /u01/acfs/ogg/TROY_gg_monitor.sh > /u01/acfs/ogg/TROY_gg_monitor.log