Script for monitoring status of GiCAP groups and group managers

5
# 4. [On AGM]
# (d) Check if GiCAP_db transfer works correctly.
#
rval=0
/usr/sbin/icapmanage -t 1> $TMP_FILE 2> ${TMP_FILE}_2
if [ $? -ne 0 ]
then
perform_log_rotation
LOG_DATE=$(date +"%x %X" 2>&1)
{
echo "Date: $LOG_DATE"
echo "Log Type: GiCAP
Operation"
echo "Description: Database
transfer failed."
echo " $( cat
$TMP_FILE ${TMP_FILE}_2 | tr -d '\r\n' )\n"
} >> $LOGFILE
rval=1
fi
rm $TMP_FILE ${TMP_FILE}_2
return $rval
else # Standby GM
#
# 4. [On SGM]
# (a) Check the communication from SGM to AGM.
#
result=$( cat $TMP_FILE | grep '^Active Group Manager' | grep -c 'cannot be
contacted' )
if [ $result -eq 1 ]
then
perform_log_rotation
LOG_DATE=$(date +"%x %X" 2>&1)
{
echo "Date: $LOG_DATE"
echo "Log Type: GiCAP
Operation"
echo "Description: Any problem
occurs on Active GM.\n"
} >> $LOGFILE
rm $TMP_FILE ${TMP_FILE}_2
return 1
fi
#
# 4. [On SGM]
# (b) Check the occurrence of Split GiCAP group.
#
result=$( cat $TMP_FILE | grep '^Standby Group Manager' | grep -c 'cannot
be contacted' )
if [ $result -eq 1 ]
then
perform_log_rotation
LOG_DATE=$(date +"%x %X" 2>&1)
{
echo "Date: $LOG_DATE"
echo "Log Type: GiCAP
Operation"
echo "Description: Split group
symptom occurs.\n"
} >> $LOGFILE
rm $TMP_FILE ${TMP_FILE}_2
return 1
fi