Managing Serviceguard Fifteenth Edition, reprinted May 2008

Planning and Documenting an HA Cluster
Package Configuration Planning
Chapter 4186
sg_source_pkg_env(), provides access to all the parameters configured
for this package, including package-specific environment variables
configured via the pev_ parameter (see page 307).
For more information, see the template in
$SGCONF/examples/external_script.template.
A sample script follows. It assumes there is another script called
monitor.sh, which will be configured as a Serviceguard service to
monitor some application. The monitor.sh script (not included here)
uses a parameter PEV_MONITORING_INTERVAL, defined in the package
configuration file, to periodically poll the application it wants to monitor;
for example:
PEV_MONITORING_INTERVAL 60
At validation time, the sample script makes sure the
PEV_MONITORING_INTERVAL and the monitoring service are configured
properly; at start and stop time it prints out the interval to the log file.
#!/bin/sh
# Source utility functions.
if [[ -z $SG_UTILS ]]
then
. /etc/cmcluster.conf
SG_UTILS=$SGCONF/scripts/mscripts/utils.sh
fi
if [[ -f ${SG_UTILS} ]]; then
. ${SG_UTILS}
if (( $? != 0 ))
then
echo "ERROR: Unable to source package utility functions file:
${SG_UTILS}"
exit 1
fi
else
echo "ERROR: Unable to find package utility functions file: ${SG_UTILS}"
exit 1
fi
# Get the environment for this package through utility function
# sg_source_pkg_env().
sg_source_pkg_env $*
function validate_command
{