Sun Cluster: Guía del desarrollador de los servicios de datos del sistema operativo Solaris

Obtención de la información de la propiedad

La mayoría de los métodos de rellamada necesitan obtener información sobre las propiedades de recurso y el tipo de recurso del servicio de datos. La API proporciona la función scha_resource_get() con este fin.

Están disponibles tanto las propiedades definidas por el sistema como las propiedades de extensión. Las propiedades definidas por el sistema son predefinidas, mientras que las propiedades de extensión se definen en el archivo RTR.

Al utilizar la funcion scha_resource_get() para obtener el valor de una propiedad definida por el sistema, se debe especificar el nombre de la propiedad con la opción -O. El comando sólo devuelve el valor de la propiedad. Por ejemplo, en el servicio de datos de ejemplo, el método Monitor_start debe encontrar el programa de análisis para poder iniciarlo. Éste reside en el directorio básico del servicio de datos, al que señala la propiedad Rt_basedir. El método Monitor_start recupera el valor de RT_basedir y lo ubica en la variable RT_BASEDIR, como se muestra a continuación:

RT_BASEDIR=`scha_resource_get -O RT_basedir -R $RESOURCE_NAME -G \
$RESOURCEGROUP_NAME`

Debe utilizar la opción -O para especificar que una propiedad es de extensión. Además, debe proporcionar el nombre de la propiedad como último argumento. Para las propiedades de extensión, el comando devuelve el tipo y el valor de la propiedad. Por ejemplo, en el servicio de datos, el programa de análisis recupera el tipo y el valor de la propiedad de extensión Probe_timeout y utiliza el comando awk para incluir sólo el valor en la variable de shell PROBE_TIMEOUT, como se indica a continuación:

probe_timeout_info=`scha_resource_get -O Extension \
-R $RESOURCE_NAME -G $RESOURCEGROUP_NAME Probe_timeout`
PROBE_TIMEOUT=`echo $probe_timeout_info | awk '{print $2}'`