Go to main content

Developing Data Services

Exit Print View

Updated: August 2018

xfnts_monitor_start Method

The RGM calls the Monitor_start method on a node to start the fault monitor after a resource is started on the node. The xfnts_monitor_start method uses scds_pmf_start() to start the monitor daemon under the PMF.

Note - The first call in xfnts_monitor_start is to scds_initialize(), which performs some necessary housekeeping functions. scds_initialize Function and the scds_initialize(3HA) man page contain more information.

The xfnts_monitor_start method calls the mon_start method, which is defined in the xfnts.c file, as follows:

"Calling Monitor_start method for resource <%s>.",

/* Call scds_pmf_start and pass the name of the probe. */
err = scds_pmf_start(scds_handle, SCDS_PMF_TYPE_MON,
SCDS_PMF_SINGLE_INSTANCE, "xfnts_probe", 0);

if (err != SCHA_ERR_NOERR) {
"Failed to start fault monitor.");
return (1);

"Started the fault monitor.");

return (SCHA_ERR_NOERR); /* Successfully started Monitor */

    Note the following points about the call in svc_mon_start() to the scds_pmf_start() function:

  • The SCDS_PMF_TYPE_MON argument identifies the program to start as a fault monitor. This method can also start a data service or some other type of application.

  • The SCDS_PMF_SINGLE_INSTANCE argument identifies this as a single-instance resource.

  • The xfnts_probe argument identifies the monitor daemon to start. The monitor daemon is assumed to be located in the same directory as the other callback programs.

  • The final argument, 0, specifies the child monitoring level. In this case, this value specifies that the PMF monitor the monitor daemon only.

Note - Before it exits, the xfnts_monitor_start method calls scds_close() to reclaim resources that were allocated by scds_initialize(). scds_initialize Function and the scds_close(3HA) man page contain more information.