Zabbix Documentation 3.4

2.23.04.04.2 (current)In development:4.4 (devel)Unsupported:1.82.02.43.23.4

User Tools

Site Tools

This translation is older than the original page and might be outdated. See what has changed.

Sidebar

pt:manual:appendix:zabbix_sender_dll

13 Biblioteca dinâmica Zabbix sender para Windows

Em um ambiente Windows as aplicações podem enviar dados diretamente ao Zabbix server/proxy usando a biblioteca dinâmica do Zabbix Sender (zabbix_sender.dll) ao invés de iniciar um processo externo (zabbix_sender.exe).

Ela está localizada dentro de bin\winXX\dev. Para usa-la, inclua o zabbix_sender.h e linque com a biblioteca zabbix_sender.lib. Um exemplo de como a API pode ser utilizada está disponível em build\win32\examples\zabbix_sender.

As seguintes funcionalidaes são providas por ela:

int zabbix_sender_send_values(const char *address, unsigned short port,
        const char *source, const zabbix_sender_value_t *values, int count,
        char **result);
Descrição
Envia um array de valores para o proxy/server. A estrutura contêm o 'host name', chave e valor do item.
Parâmetros
address - [in] o endereço do server/proxy
port - [in] a porta para monitoração ativa no server/proxy
source - [in] o IP de origem (opcional)
values - [in] um array com os valores a serem enviados
count - [in] quantidade de itens no arary
result - [out] o servidor responderá com uma mensagem de status ou de erro (optional)
Valor de retorno
0 - operação concluída com sucesso
-1 - operação falhou
Comentários
Se a variável de retorno for definida esta função irá alocar a memória necessária para armazenar a resposta do servidor. Isso sempre será liberado com a função 'zabbix_sender_free_result()'.
Se uma operação tiver sucesso o resultado da resposta do servior pode ser tratada pela função 'zabbix_sender_parse_result()'. Em caso de erro a mensagem de erro será armazenada no lugar.
int zabbix_sender_parse_result(const char *result, int *response,
        zabbix_sender_info_t *info);
Descrição
Trata o resultado retornado pela função 'zabbix_sender_send_values()'.
Parâmetros
result - [in] o resultado retornado pela função 'zabbix_sender_send_values()'.
response - [out] a resposta da operação: 0 - sucesso, -1 falha.
info - [out] informações detalhadas sobre a operação, opcional.
Valor de retorno
0 - operação concluída com sucesso
-1 - operação falhou
Comentários
Se o parâmetro de informação for definido, mas a função falhar para tratar o resultado do campo info, então a estrutura será definida para -1.
void zabbix_sender_free_result(void *result);
Descrição
Libera dados alocados pela função 'zabbix_sender_send_values()'.
Parâmetros
result - o resultado retornado pela função 'zabbix_sender_send_values()'.

As seguintes estruturas de dados são utilizadas pela biblioteca dinâmica do Zabbix sender:

typedef struct
{
	/* host name, must match the name of target host in Zabbix */
	char	*host;
	/* the item key */
	char	*key;
	/* the item value */
	char	*value;
}
zabbix_sender_value_t;
 
typedef struct
{
	/* number of total values processed */
	int	total;
	/* number of failed values */
	int	failed;
	/* time in seconds the server spent processing the sent values */
	double	time_spent;
}
zabbix_sender_info_t;