sub-rotina perfstat_node_list
Propósito
Recupera a lista de nós em um cluster.
Biblioteca
biblioteca perfstat (libperfstat.a)
Sintaxe
#include <libperfstat.h>
int perfstat_node_list ( name, userbuff, sizeof_userbuff, desired_number)
perfstat_id_node_t *name;
perfstat_node_t *userbuff;
int sizeof_userbuff;
int desired_number; Descrição
A subroutine perfstat_node_list retorna a lista de nós em uma estrutura perfstat_node_t .
A subroutine perfstat_node_list deve ser chamada apenas após ativar a coleta de estatísticas do cluster usando a seguinte chamada de API perfstat: perfstat_config (PERFSTAT_ENABLE | PERFSTAT_CLUSTER_STATS, NULL).
A coleta de estatísticas do cluster deve ser desativada após a coleta da lista de nós usando a seguinte chamada de API perfstat: perfstat_config (PERFSTAT_DESATIVAR | PERFSTAT_CLUSTER_STATS, NULL).
Para obter o número total de nós em um cluster (no qual o nó atual está participando), o nome do cluster deve ser especificado no parâmetro name , o parâmetro userbuff deve ser especificado como NULL e o parâmetro desired_number deve ser especificado como zero.
Para obter a lista de nós em um cluster em particular (no qual o nó atual está participando), o nome do cluster deve ser especificado no parâmetro name . O parâmetro userbuff deve ser alocado. O parâmetro desired_number deve ser configurado.
Parâmetros
| Item | Descrição |
|---|---|
| name.nodenamename.spec | Especifica o nome do cluster. Especifica o especificador ID do Cluster. Deve ser definido como CLUSTERNAME. |
| userbuff | Especifica a área de memória que deve ser preenchida com a estrutura perfstat_node_t . |
| tamanho do buffer do usuário | Especifica o tamanho da estrutura perfstat_node_t . |
| número_desejado | Especifica o número de estruturas a serem retornadas. |
Valores De Retorno
A menos que a subroutine perfstat_node_list seja usada para recuperar o número de estruturas disponíveis, o número de estruturas preenchidas é devolvido mediante conclusão bem-sucedida. Se não tiver êxito, um valor de -1 é retornado e a variável global errno é definida.
Códigos De Erro
A subroutine não é bem-sucedida se o seguinte for verdadeiro:
| Item | Descrição |
|---|---|
| EINVAL | Um dos parâmetros não é válido. |
| ENOENTE | Ou a coleta de estatísticas do cluster não é ativada usando perfstat_config ou a coleção de estatísticas de cluster não é suportada atualmente. |
Arquivos
O arquivo libperfstat.h define macros padrão, tipos de dados e sub-rotinas.