Sous-routine perfstat_cluster_disk

Objectif

Extrait les détails du disque des noeuds de cluster.

Bibliothèque

perfstat library (libperfstat.a)

Syntaxe

#include <libperfstat.h>

int perfstat_cluster_disk( name, userbuff, sizeof_userbuff, desired_number)

perfstat_id_node_t *name;
perfstat_disk_data_t *userbuff;
int sizeof_userbuff;
int desired_number;

Descriptif

La sous-routine perfstat_cluster_disk renvoie la liste des disques dans une structure perfstat_disk_data_t .

La sous-routine perfstat_cluster_disk ne doit être appelée qu'une fois que vous avez activé la collecte de statistiques de cluster à l'aide de l'appel d'API perfstat suivant:
perfstat_config(PERFSTAT_ENABLE | PERFSTAT_CLUSTER_STATS, NULL)
La collecte de statistiques de cluster doit être désactivée une fois que vous avez obtenu la liste des disques à l'aide de l'appel d'API perfstat suivant:
perfstat_config(PERFSTAT_DISABLE | PERFSTAT_CLUSTER_STATS, NULL)

Pour identifier le nombre total de disques de cluster dans un noeud spécifique (auquel participe le noeud en cours), les critères suivants doivent être spécifiés:

  • Le nom de noeud doit être spécifié dans le paramètre name .
  • Le paramètre userbuff doit être défini sur NULL.
  • Le paramètre desired_number doit être défini sur 0.

Pour obtenir la liste des disques de cluster dans un noeud spécifique, les paramètres userbuff et desired_number doivent être utilisés.

Paramètres

name.nodename ou name.spec
Indique le nom de noeud ou l'ID de noeud pour lequel les données doivent être renvoyées.
Userbuff
Indique la zone de mémoire qui doit être remplie avec la structure perfstat_disk_data_t .
taille du tampon utilisateur
Indique la taille de la structure perfstat_disk_data_t .
numéro_desired_
Indique le nombre de structures à renvoyer.

Valeurs de retour

Le nombre de structures remplies est renvoyé lorsque l'opération aboutit. En cas d'échec, la valeur -1 est renvoyée et la variable globale errno est définie.

Codes d'erreur

La sous-routine perfstat_cluster_disk échoue en raison de l'une des erreurs suivantes:

EINVAL
L'un des paramètres n'est pas valide.
ENOENT
La collecte de statistiques de cluster n'est pas activée à l'aide de la sous-routine perfstat_config , la collecte de statistiques de cluster n'est pas prise en charge ou le noeud spécifié est introuvable.

Fichiers

Le fichier libperfstat.h définit les macros standard, les types de données et les sous-routines.