W środowisku Windows, aplikacje zamiast uruchamiania zewnętrznego procesu (zabbix_sender.exe) mogą wysyłać dane bezpośrednio do serwera/proxy Zabbix, używając biblioteki łączonej dynamicznie sendera Zabbix (zabbix_sender.dll).
Biblioteka łączona dynamicznie wraz z wymaganymi plikami umieszczona jest w katalogach bin\winXX\dev. Żeby jej użyć, należy dołączyć plik nagłówkowy zabbix_sender.h i połączyć z biblioteką zabbix_sender.lib. Przykładowe pliki używające API sendera Zabbix można znaleźć w katalogu build\win32\examples\zabbix_sender.
Biblioteka łączona dynamicznie sendera Zabbix udostępnia następujące funkcjonalności:
int zabbix_sender_send_values(const char *address, unsigned short port,const char *source, const zabbix_sender_value_t *values, int count,char **result); |
||
---|---|---|
char **result);`{.c} |
Biblioteka łączona dynamicznie sendera Zabbix używa następujących struktur danych:
typedef struct
{
/* nazwa hosta, musi być zgodna z nazwą hosta docelowego w Zabbix */
char *host;
/* klucz pozycji */
char *key;
/* wartość pozycji */
char *value;
}
zabbix_sender_value_t;
typedef struct
{
/* liczba wszystkich przetworzonych wartości */
int total;
/* liczba wartości błędnych */
int failed;
/* czas w sekundach spędzony przez serwer na przetwarzaniu wysłanych wartości */
double time_spent;
}
zabbix_sender_info_t;