April 1999
Intermediate to advanced
552 pages
15h 39m
English
#! /bin/ksh
#--------------------------------------------------------------------------
# Filename: checklatency
# Purpose: Notifies dba when more than 150 replicated transactions are
# queued.
# Author: Chas. Dye (cdye@excitecorp.com)
# Date: 21-Oct-1998
# Remarks: Requires OPS$ account for whichever OS user crons this script.
#--------------------------------------------------------------------------
HOST=`/bin/uname -n`
MAIL=/bin/mailx
DISTLIST="beepdba@yoursite.com"
export HOST MAIL DISTLIST
#
ORACLE_HOME=/u/oracle/product/8.0.4.2 ; export ORACLE_HOME
ORACLE_SID=PHQS ; export ORACLE_SID
PATH=$ORACLE_HOME/bin:/bin:{PATH} ; export PATH
LD_LIBRARY_PATH=$ORACLE_HOME/lib:${LD_LIBRARY_PATH} ; export LD_LIBRARY_PATH
#
cd ${HOME}/bin
#
sqlplus -s / << EOF
set echo off
set head off
set feedback on
spool /u/oracle/admin/PHQS/logbook/latent.log
SELECT count(*)
FROM deftrandest d, deftran t
WHERE d.deferred_tran_id = t.deferred_tran_id
AND d.delivery_order = t.delivery_order
HAVING count(*) > 150;
spool off
EOF
#
grep 1 latent.log > latent.err
if [ -s latent.err ]
then
$MAIL -s"${ORACLE_SID}@${HOST} latency alert" $DISTLIST < latent.log
fi
#
rm -f latent.err
rm -f latent.log