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 .
perfstat suivant:perfstat_config(PERFSTAT_ENABLE | PERFSTAT_CLUSTER_STATS, NULL)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.