|
The scds_pmf_start() function executes a program,
specified by command, under PMF control. This function
is equivalent to the pmfadm(1M) command
with the -c option.
The command argument contains a command line
and command line arguments that are passed to the function.
When you start a data service application or other process (program
type SCDS_PMF_TYPE_SVC or SCDS_PMF_TYPE_OTHER) under PMF with scds_pmf_start(), you choose
the level of child processes to monitor by using the child_monitor_level argument. Values for the child_monitor_level
argument are none, some or all. The child_monitor_level argument specifies
that children up to and including level child_monitor_level
will be monitored. The original process is executed at level 0, its children
at level 1, their children at level 2, and so on. Any new fork operation produces
a new level of children. Specify -1 to monitor all levels
of children.
For example, if the command to start is a daemon, the appropriate child_monitor_level is 1. If the command to start
is a script that starts a daemon, the appropriate value for child_monitor_level is 2.
For a fault monitor (program type SCDS_PMF_TYPE_MON),
the child_monitor_level argument is ignored and 0 is used.
If the underlying application process is already running, scds_pmf_start() prints a syslog() error and returns SCHA_ERR_INTERNAL because the RGM guarantees that two calls to a START function on a node must have an intervening STOP function.
|