13 Zabbix sender - biblioteka łączona dynamicznie dla Windows

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);{.c}
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;