Monitor without IMF but with LevelTwo monitor frequency

If the custom agent monitor does the basic as well as detail monitoring, then detail monitoring code must be conditional. This avoids scheduling of detail monitoring if not required. VCSAG_GET_MONITOR_LEVEL API can be used to check if detail monitoring needs to be scheduled.

VCSAG_GET_MONITOR_LEVEL API fetches and sets the values of the LevelTwoMonitorFreq attribute.

#!/bin/sh
# CustomAgent Monitor script
. $VCS_HOME/bin/ag_i18n_inc.sh
RESNAME=$1
VCSAG_SET_ENVS $RESNAME

STATE=${VCS_RES_ONLINE};

# Fetch the value of detail (Level-2) monitoring.
# VCSAG_GET_MONITOR_LEVEL will store this values in 
# VCSAG_MONITOR_LEVEL_TWO environment.
VCSAG_GET_MONITOR_LEVEL();

# Logic for custom agent basic monitoring.
# Based on logic set STATE to OFFLINE or ONLINE


# if basic monitoring of the resource state that resource is ONLINE,
# check if detail monitoring (Level-2) need to be performed.
if [ ${STATE} -eq ${VCS_RES_ONLINE} ]; then 

	if [ ${VCSAG_MONITOR_LEVEL_TWO} -ne 0 ]; then
		# Logic for custom agent detail monitoring.
		# Based on logic return OFFLINE or ONLINE

		# If resource is found as OFFLINE
		STATE = ${VCS_RES_OFFLINE};

		# If resource is found as ONLINE
		STATE = ${VCS_RES_ONLINE};
	fi
fi

exit $(STATE);