2 Windows agent Zabbix

Przegląd

Pozycje agenta Zabbix dla systemu Windows są przedstawione na dwóch listach:

Należy pamiętać, że wszystkie klucze pozycji obsługiwane przez agent Zabbix w systemie Windows są również obsługiwane przez nowej generacji agent Zabbix 2. Zobacz dodatkowe klucze pozycji, których można używać wyłącznie z agentem 2.

Zobacz także: Minimalne uprawnienia dla pozycji Windows

Wspólne pozycje

Poniższa tabela zawiera pozycje agenta Zabbix, które są obsługiwane w systemie Windows i są współdzielone z agentem Zabbix dla systemów UNIX:

  • Klucz pozycji jest linkiem do pełnych informacji o pozycji agenta Zabbix dla systemów UNIX
  • Uwzględniono komentarze do pozycji istotne dla systemu Windows
Item key Description Item group
log Monitorowanie pliku dziennika. Ta pozycja nie jest obsługiwana dla dziennika zdarzeń Windows.
Parametr persistent_dir nie jest obsługiwany w systemie Windows.
Monitorowanie logów
log.count Liczba dopasowanych wierszy w monitorowanym pliku dziennika. Ta pozycja nie jest obsługiwana dla dziennika zdarzeń Windows.
Parametr persistent_dir nie jest obsługiwany w systemie Windows.
logrt Monitorowanie rotowanego pliku dziennika. Ta pozycja nie jest obsługiwana dla dziennika zdarzeń Windows.
Parametr persistent_dir nie jest obsługiwany w systemie Windows.
logrt.count Liczba dopasowanych wierszy w monitorowanym, rotowanym pliku dziennika. Ta pozycja nie jest obsługiwana dla dziennika zdarzeń Windows.
Parametr persistent_dir nie jest obsługiwany w systemie Windows.
modbus.get Odczytuje dane Modbus. Modbus
net.dns Sprawdza, czy usługa DNS działa.
Parametry ip, timeout i count są ignorowane w systemie Windows, chyba że używany jest Zabbix agent 2.
Sieć
net.dns.perf Sprawdza wydajność usługi DNS.
Parametry ip, timeout i count są ignorowane w systemie Windows, chyba że używany jest Zabbix agent 2.
net.dns.record Wykonuje zapytanie DNS.
Parametry ip, timeout i count są ignorowane w systemie Windows, chyba że używany jest Zabbix agent 2.
net.if.discovery Lista interfejsów sieciowych.
Niektóre wersje systemu Windows (na przykład Server 2008) mogą wymagać zainstalowania najnowszych aktualizacji, aby obsługiwać znaki spoza ASCII w nazwach interfejsów.
net.if.in Statystyki ruchu przychodzącego na interfejsie sieciowym.
W systemie Windows pozycja pobiera wartości z 64-bitowych liczników, jeśli są dostępne. 64-bitowe liczniki statystyk interfejsów zostały wprowadzone w systemach Windows Vista i Windows Server 2008. Jeśli 64-bitowe liczniki nie są dostępne, agent używa liczników 32-bitowych.
Obsługiwane są wielobajtowe nazwy interfejsów w systemie Windows.
Opisy interfejsów sieciowych w systemie Windows można uzyskać za pomocą pozycji net.if.discovery lub net.if.list.
net.if.out Statystyki ruchu wychodzącego na interfejsie sieciowym.
W systemie Windows pozycja pobiera wartości z 64-bitowych liczników, jeśli są dostępne. 64-bitowe liczniki statystyk interfejsów zostały wprowadzone w systemach Windows Vista i Windows Server 2008. Jeśli 64-bitowe liczniki nie są dostępne, agent używa liczników 32-bitowych.
Obsługiwane są wielobajtowe nazwy interfejsów w systemie Windows.
Opisy interfejsów sieciowych w systemie Windows można uzyskać za pomocą pozycji net.if.discovery lub net.if.list.
net.if.total Suma statystyk ruchu przychodzącego i wychodzącego na interfejsie sieciowym.
W systemie Windows pozycja pobiera wartości z 64-bitowych liczników, jeśli są dostępne. 64-bitowe liczniki statystyk interfejsów zostały wprowadzone w systemach Windows Vista i Windows Server 2008. Jeśli 64-bitowe liczniki nie są dostępne, agent używa liczników 32-bitowych.
Opisy interfejsów sieciowych w systemie Windows można uzyskać za pomocą pozycji net.if.discovery lub net.if.list.
net.tcp.listen Sprawdza, czy ten port TCP jest w stanie LISTEN.
net.tcp.port Sprawdza, czy możliwe jest nawiązanie połączenia TCP z określonym portem.
net.tcp.service Sprawdza, czy usługa działa i akceptuje połączenia TCP.
Sprawdzanie LDAP i HTTPS w systemie Windows jest obsługiwane tylko przez Zabbix agent 2.
net.tcp.service.perf Sprawdza wydajność usługi TCP.
Sprawdzanie LDAP i HTTPS w systemie Windows jest obsługiwane tylko przez Zabbix agent 2.
net.tcp.socket.count Zwraca liczbę gniazd TCP pasujących do parametrów.
Ta pozycja jest obsługiwana w systemie Linux przez Zabbix agent, ale w systemie Windows jest obsługiwana tylko przez Zabbix agent 2 w 64-bitowym systemie Windows.
net.udp.service Sprawdza, czy usługa działa i odpowiada na żądania UDP.
net.udp.service.perf Sprawdza wydajność usługi UDP.
net.udp.socket.count Zwraca liczbę gniazd UDP pasujących do parametrów.
Ta pozycja jest obsługiwana w systemie Linux przez Zabbix agent, ale w systemie Windows jest obsługiwana tylko przez Zabbix agent 2 w 64-bitowym systemie Windows.
proc.get Lista procesów systemu operacyjnego i ich parametrów.
Parametr cmdline nie jest obsługiwany w systemie Windows.
Procesy
proc.num Liczba procesów.
W systemie Windows obsługiwane są tylko parametry name i user.
system.cpu.discovery Lista wykrytych procesorów/rdzeni CPU. System
system.cpu.load Obciążenie CPU.
Po uruchomieniu procesu collectora w Zabbix agent inicjalizowane są następujące liczniki wydajności, które są później używane przez tę pozycję: \System\Processor Queue Length
system.cpu.num Liczba procesorów.
system.cpu.util Procent wykorzystania CPU.
Wartość jest pobierana przy użyciu licznika wydajności Processor Time. Należy pamiętać, że od systemu Windows 8 Menedżer zadań pokazuje wykorzystanie CPU na podstawie licznika wydajności Processor Utility, podczas gdy w poprzednich wersjach był to licznik Processor Time (zobacz więcej szczegółów).
system jest jedynym parametrem type obsługiwanym w systemie Windows.
system.hostname Nazwa hosta systemu.
Wartość tej pozycji jest pobierana w systemie Windows za pomocą funkcji GetComputerName() (dla netbios), GetComputerNameExA() (dla fqdn) lub gethostname() (dla host).
Zobacz także bardziej szczegółowy opis.
system.localtime Czas systemowy.
system.run Uruchamia określone polecenie na hoście.
system.sw.arch Informacje o architekturze oprogramowania.
system.sw.os Informacje o systemie operacyjnym.
system.sw.os.get Szczegółowe informacje o systemie operacyjnym (wersja, typ, nazwa dystrybucji, wersja główna i pomocnicza itd.).
system.swap.size Rozmiar przestrzeni wymiany w bajtach lub jako procent całości.
Parametr typu pused jest obsługiwany w systemie Linux przez Zabbix agent, ale w systemie Windows jest obsługiwany tylko przez Zabbix agent 2.
Należy pamiętać, że ten klucz może raportować nieprawidłowy rozmiar/procent przestrzeni wymiany na zwirtualizowanych platformach Windows (VMware ESXi, VirtualBox). W takim przypadku można użyć klucza perf_counter[\700(_Total)\702], aby uzyskać prawidłowy procent przestrzeni wymiany.
system.uname Identyfikacja systemu.
W systemie Windows wartość tej pozycji jest pobierana z klas WMI Win32_OperatingSystem i Win32_Processor. Nazwa systemu operacyjnego (wraz z edycją) może być przetłumaczona na język wyświetlania użytkownika. W niektórych wersjach systemu Windows zawiera symbole znaków towarowych i dodatkowe spacje.
system.uptime Czas działania systemu w sekundach.
vfs.dir.count Liczba wpisów w katalogu.
W systemie Windows dowiązania symboliczne do katalogów są pomijane, a dowiązania twarde są liczone tylko raz.
Wirtualne systemy plików
vfs.dir.get Lista wpisów w katalogu.
W systemie Windows dowiązania symboliczne do katalogów są pomijane, a dowiązania twarde są liczone tylko raz.
vfs.dir.size Rozmiar katalogu.
W systemie Windows wszelkie dowiązania symboliczne są pomijane, a dowiązania twarde są uwzględniane tylko raz.
vfs.file.cksum Suma kontrolna pliku obliczana algorytmem UNIX cksum.
vfs.file.contents Pobieranie zawartości pliku.
vfs.file.exists Sprawdza, czy plik istnieje.
W systemie Windows podwójne cudzysłowy muszą być poprzedzone znakiem ucieczki backslash '\', a cały klucz pozycji musi być ujęty w podwójne cudzysłowy podczas używania narzędzia wiersza poleceń do wywoływania zabbix_get.exe lub agent2.
Należy pamiętać, że pozycja może stać się nieobsługiwana w systemie Windows, jeśli katalog jest wyszukiwany wewnątrz nieistniejącego katalogu, np. vfs.file.exists[C:\no\dir,dir] (gdzie „no” nie istnieje).
vfs.file.get Zwraca informacje o pliku.
Obsługiwane typy plików w systemie Windows: zwykły plik, katalog, dowiązanie symboliczne
vfs.file.md5sum Suma kontrolna MD5 pliku.
vfs.file.owner Pobiera właściciela pliku.
vfs.file.regexp Pobiera ciąg znaków z pliku.
vfs.file.regmatch Znajduje ciąg znaków w pliku.
vfs.file.size Rozmiar pliku.
vfs.file.time Informacje o czasie pliku.
W systemie Windows XP vfs.file.time[file,change] może być równe vfs.file.time[file,access].
vfs.fs.discovery Lista zamontowanych systemów plików wraz z ich typem i opcjami montowania.
Makro {#FSLABEL} jest obsługiwane w systemie Windows.
vfs.fs.get Lista zamontowanych systemów plików wraz z ich typem, dostępną przestrzenią dyskową, statystykami inode i opcjami montowania.
Makro {#FSLABEL} jest obsługiwane w systemie Windows.
vfs.fs.size Przestrzeń dyskowa w bajtach lub jako procent całości.
vm.memory.size Rozmiar pamięci w bajtach lub jako procent całości. Pamięć wirtualna
web.page.get Pobiera zawartość strony internetowej. Monitorowanie WWW
web.page.perf Czas ładowania pełnej strony internetowej.
web.page.regexp Znajduje ciąg znaków na stronie internetowej.
agent.hostmetadata Metadane hosta agenta. Zabbix
agent.hostname Nazwa hosta agenta.
agent.ping Sprawdzenie dostępności agenta.
agent.variant Wariant agenta Zabbix (Zabbix agent lub Zabbix agent 2).
agent.version Wersja agenta Zabbix.
zabbix.stats Zwraca zdalnie zestaw wewnętrznych metryk Zabbix server lub proxy.
zabbix.stats Zwraca zdalnie liczbę monitorowanych pozycji w kolejce, które są opóźnione na Zabbix server lub proxy.

Pozycje specyficzne dla systemu Windows

Tabela zawiera szczegółowe informacje o kluczach pozycji, które są obsługiwane wyłącznie przez agenta Zabbix dla systemu Windows.

Pozycje specyficzne dla systemu Windows są czasami przybliżonym odpowiednikiem podobnej pozycji agenta, na przykład proc_info, obsługiwana w systemie Windows, w przybliżeniu odpowiada pozycji proc.mem, nieobsługiwanej w systemie Windows.

Klucz pozycji jest łączem do pełnych informacji o kluczu pozycji.

Klucz pozycji Opis Grupa pozycji
eventlog Monitorowanie dziennika zdarzeń systemu Windows. Monitorowanie logów
eventlog.count Liczba wierszy w dzienniku zdarzeń systemu Windows.
net.if.list Lista interfejsów sieciowych (obejmuje typ interfejsu, stan, adres IPv4, opis). Sieć
perf_counter Wartość dowolnego licznika wydajności systemu Windows. Liczniki wydajności
perf_counter_en Wartość dowolnego licznika wydajności systemu Windows w języku angielskim.
perf_instance.discovery Lista instancji obiektów liczników wydajności systemu Windows.
perf_instance_en.discovery Lista instancji obiektów liczników wydajności systemu Windows, wykrytych przy użyciu nazw obiektów w języku angielskim.
proc_info Różne informacje o określonym procesie lub procesach. Procesy
registry.data Zwraca dane dla określonej nazwy wartości w kluczu Rejestru systemu Windows. Rejestr
registry.get Lista wartości lub kluczy Rejestru systemu Windows znajdujących się pod podanym kluczem.
service.discovery Lista usług systemu Windows. Usługi
service.info Informacje o usłudze.
services Wykaz usług.
vm.vmemory.size Rozmiar pamięci wirtualnej w bajtach lub jako wartość procentowa całkowitej pamięci. Pamięć wirtualna
wmi.get Wykonuje zapytanie WMI i zwraca pierwszy wybrany obiekt. WMI
wmi.getall Wykonuje zapytanie WMI i zwraca całą odpowiedź.

Szczegóły klucza pozycji

Parametry bez nawiasów ostrych są obowiązkowe. Parametry oznaczone nawiasami ostrymi < > są opcjonalne.

eventlog[name,<regexp>,<severity>,<source>,<eventid>,<maxlines>,<mode>]


Monitorowanie dziennika zdarzeń.
Zwracana wartość: Log.

Parametry:

  • name - nazwa kanału dziennika zdarzeń (Log Name w GUI Podglądu zdarzeń);
  • regexp - wyrażenie regularne opisujące wymagany wzorzec (z uwzględnieniem wielkości liter);
  • severity - wyrażenie regularne opisujące poziom ważności (bez uwzględniania wielkości liter). Ten parametr akceptuje wyrażenie regularne oparte na następujących wartościach: "Information", "Warning", "Error", "Critical", "Verbose" (w systemie Windows Vista lub nowszym).
  • source - wyrażenie regularne opisujące identyfikator źródła (bez uwzględniania wielkości liter);
  • eventid - wyrażenie regularne opisujące identyfikator(y) zdarzeń (z uwzględnieniem wielkości liter);
  • maxlines - maksymalna liczba nowych wierszy na sekundę, które agent wyśle do serwer lub proxy Zabbix. Ten parametr zastępuje wartość 'MaxLinesPerSecond' w zabbix_agentd.conf.
  • mode - możliwe wartości: all (domyślnie) lub skip - pomija przetwarzanie starszych danych (dotyczy tylko nowo utworzonych pozycji).

Uwagi:

  • Pozycja musi być skonfigurowana jako sprawdzenie aktywne;
  • agent nie może wysyłać zdarzeń z dziennika "Forwarded events";
  • Obsługiwany jest Windows Eventing 6.0;
  • Wybranie dla tej pozycji typu informacji innego niż Log type of information spowoduje utratę lokalnego znacznika czasu, a także informacji o ważności i źródle dziennika;
  • Zobacz także dodatkowe informacje o monitorowaniu logów.

Przykłady:

eventlog[Application]
eventlog[Microsoft-Windows-Application-Experience/Program-Compatibility-Assistant]
eventlog[Security,,"Failure Audit",,^(529|680)$]
eventlog[System,,"Warning|Error"]
eventlog[System,,,,^1$]
eventlog[Windows PowerShell,,,,,,skip]
eventlog[System,,,,@TWOSHORT] #tutaj odwołano się do niestandardowego wyrażenia regularnego o nazwie `TWOSHORT` (zdefiniowanego jako typ *Result is TRUE*, przy czym samo wyrażenie ma postać `^1$|^70$`).
eventlog.count[name,<regexp>,<severity>,<source>,<eventid>,<maxproclines>,<mode>]


Liczba wierszy w dzienniku zdarzeń systemu Windows.
Zwracana wartość: Integer.

Parametry:

  • name - nazwa kanału dziennika zdarzeń (Log Name w GUI Podglądu zdarzeń);
  • regexp - regularne wyrażenie opisujące wymagany wzorzec (z uwzględnieniem wielkości liter);
  • severity - wyrażenie regularne opisujące poziom ważności (bez uwzględniania wielkości liter). Ten parametr akceptuje wyrażenie regularne oparte na następujących wartościach: "Information", "Warning", "Error", "Critical", "Verbose" (w systemie Windows Vista lub nowszym).
  • source - wyrażenie regularne opisujące identyfikator źródła (bez uwzględniania wielkości liter);
  • eventid - wyrażenie regularne opisujące identyfikator(y) zdarzeń (z uwzględnieniem wielkości liter);
  • maxproclines - maksymalna liczba nowych wierszy na sekundę, które agent będzie analizował (nie może przekraczać 10000). Wartość domyślna to 10*'MaxLinesPerSecond' w zabbix_agentd.conf.
  • mode - możliwe wartości: all (domyślnie) lub skip - pominięcie przetwarzania starszych danych (dotyczy tylko nowo utworzonych pozycji).

Uwagi:

  • Pozycja musi być skonfigurowana jako active check;
  • agent nie może wysyłać zdarzeń z dziennika "Forwarded events";
  • Obsługiwany jest Windows Eventing 6.0;
  • Wybranie typu informacji innego niż Log dla tej pozycji spowoduje utratę lokalnego znacznika czasu, a także informacji o poziomie ważności i źródle dziennika;
  • Zobacz także dodatkowe informacje o monitorowaniu logów.

Przykłady:

eventlog.count[System,,"Warning|Error"]
eventlog.count[Windows PowerShell,,,,,,skip]
net.if.list


Lista interfejsów sieciowych (zawiera typ interfejsu, status, adres IPv4, opis).
Zwracana wartość: Tekst.

Uwagi:

  • Obsługiwane są nazwy interfejsów wielobajtowych;
  • Wyłączone interfejsy nie są wyświetlane;
  • Włączanie/wyłączanie niektórych komponentów może zmienić ich kolejność w nazwie interfejsu systemu Windows;
  • Niektóre wersje systemu Windows (na przykład Server 2008) mogą wymagać zainstalowania najnowszych aktualizacji, aby obsługiwać znaki spoza ASCII w nazwach interfejsów.
perf_counter[counter,<interval>]


Wartość dowolnego licznika wydajności systemu Windows.
Zwracana wartość: Integer, float, string lub text (w zależności od żądania).

Parametry:

  • counter — ścieżka do licznika;
  • interval — ostatnie N sekund do przechowywania wartości średniej. interval musi mieścić się w zakresie od 1 do 900 sekund (włącznie), a wartość domyślna to 1.

Uwagi:

  • Ta pozycja obsługuje ścieżki UNC, co może stanowić zagrożenie bezpieczeństwa;
  • interval jest używany dla liczników wymagających więcej niż jednej próbki (takich jak wykorzystanie CPU), dlatego sprawdzenie za każdym razem zwraca wartość średnią z ostatnich „interval” sekund;
  • Do uzyskania listy dostępnych liczników można użyć Monitora wydajności.
  • Zobacz także: Liczniki wydajności systemu Windows.
perf_counter_en[counter,<interval>]


Wartość dowolnego licznika wydajności systemu Windows w języku angielskim.
Zwracana wartość: Integer, float, string lub text (w zależności od żądania).

Parametry:

  • counter — ścieżka do licznika w języku angielskim;
  • interval — ostatnie N sekund do przechowywania wartości średniej. Wartość interval musi mieścić się w zakresie od 1 do 900 sekund (włącznie), a wartość domyślna to 1.

Uwagi:

  • Ta pozycja obsługuje ścieżki UNC, co może stanowić zagrożenie bezpieczeństwa;
  • interval jest używany dla liczników wymagających więcej niż jednej próbki (takich jak użycie CPU), dlatego sprawdzenie za każdym razem zwraca wartość średnią z ostatnich „interval” sekund;
  • Ta pozycja jest obsługiwana tylko w systemach Windows Server 2008/Vista i nowszych;
  • Listę angielskich ciągów można znaleźć, przeglądając następujący klucz rejestru: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib\009.
perf_instance.discovery[object]


Lista instancji obiektów liczników wydajności systemu Windows. Używana do odkrywania niskiego poziomu.
Zwracana wartość: obiekt JSON.

Parametr:

  • object — nazwa obiektu (zlokalizowana).
perf_instance_en.discovery[object]


Lista instancji obiektów liczników wydajności systemu Windows, wykrywanych przy użyciu nazw obiektów w języku angielskim. Używane do odkrywania niskiego poziomu.
Zwracana wartość: obiekt JSON.

Parametr:

  • object - nazwa obiektu (w języku angielskim).
proc_info[process,<attribute>,<type>]


Różne informacje o określonym procesie(-ach).
Wartość zwracana: Float.

Parametry:

  • process — nazwa procesu;
  • attribute — żądany atrybut procesu;
  • type — typ reprezentacji (ma znaczenie, gdy istnieje więcej niż jeden proces o tej samej nazwie)

Uwagi:

  • Obsługiwane są następujące attributes:
    vmsize (domyślnie) — rozmiar pamięci wirtualnej procesu w KB
    wkset — rozmiar zestawu roboczego procesu (ilość pamięci fizycznej używanej przez proces) w KB
    pf — liczba błędów strony
    ktime — czas jądra procesu w milisekundach
    utime — czas użytkownika procesu w milisekundach
    io_read_b — liczba bajtów odczytanych przez proces podczas operacji wejścia/wyjścia
    io_read_op — liczba operacji odczytu wykonanych przez proces
    io_write_b — liczba bajtów zapisanych przez proces podczas operacji wejścia/wyjścia
    io_write_op — liczba operacji zapisu wykonanych przez proces
    io_other_b — liczba bajtów przesłanych przez proces podczas operacji innych niż odczyt i zapis
    io_other_op — liczba operacji wejścia/wyjścia wykonanych przez proces, innych niż odczyt i zapis
    gdiobj — liczba obiektów GDI używanych przez proces
    userobj — liczba obiektów USER używanych przez proces;
  • Prawidłowe types to:
    avg (domyślnie) — wartość średnia dla wszystkich procesów o nazwie <process>
    min — wartość minimalna spośród wszystkich procesów o nazwie <process>
    max — wartość maksymalna spośród wszystkich procesów o nazwie <process>
    sum — suma wartości dla wszystkich procesów o nazwie <process>;
  • W systemie 64-bitowym do poprawnego działania tej pozycji wymagany jest 64-bitowy agent Zabbix.

Przykłady:

proc_info[iexplore.exe,wkset,sum] #pobierz ilość pamięci fizycznej zajmowanej przez wszystkie procesy Internet Explorer
proc_info[iexplore.exe,pf,avg] #pobierz średnią liczbę błędów strony dla procesów Internet Explorer
registry.data[key,<value name>]


Zwraca dane dla określonej nazwy wartości w kluczu Rejestru Windows.
Zwracana wartość: Integer, string lub text (w zależności od typu wartości)

Parametry:

  • key - klucz rejestru wraz z kluczem głównym; dozwolone są skróty kluczy głównych (np. HKLM);
  • value name - nazwa wartości rejestru w kluczu (domyślnie pusty ciąg ""); Jeśli nazwa wartości nie zostanie podana, zwracana jest wartość domyślna.

Uwagi:

  • Obsługiwane skróty kluczy głównych:
    HKCR - HKEY_CLASSES_ROOT
    HKCC - HKEY_CURRENT_CONFIG
    HKCU - HKEY_CURRENT_USER
    HKCULS - HKEY_CURRENT_USER_LOCAL_SETTINGS
    HKLM - HKEY_LOCAL_MACHINE
    HKPD - HKEY_PERFORMANCE_DATA
    HKPN - HKEY_PERFORMANCE_NLSTEXT
    HKPT - HKEY_PERFORMANCE_TEXT
    HKU - HKEY_USERS
  • Klucze zawierające spacje muszą być ujęte w podwójny cudzysłów.

Przykłady:

registry.data["HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Windows Error Reporting"] #zwraca dane wartości domyślnej tego klucza
registry.data["HKLM\SOFTWARE\Microsoft\Windows\Windows Error Reporting","EnableZip"] #zwraca dane wartości o nazwie "Enable Zip" w tym kluczu
registry.get[key,<mode>,<name regexp>]


Lista wartości lub kluczy Rejestru Windows znajdujących się w podanym kluczu.
Zwracana wartość: obiekt JSON.

Parametry:

  • key - klucz rejestru wraz z kluczem głównym; dozwolone są skróty kluczy głównych (np. HKLM) (pełną listę skrótów można znaleźć w komentarzach dla registry.data[]);
  • mode - możliwe wartości:
    values (domyślnie) lub keys;
  • name regexp - wykrywaj tylko wartości, których nazwy pasują do wyrażenia regularnego (domyślnie - wykrywane są wszystkie wartości). Dozwolone tylko z values jako mode.

Klucze zawierające spacje muszą być ujęte w podwójny cudzysłów.

Przykłady:

registry.get[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall,values,"^DisplayName|DisplayVersion$"] #zwraca dane wartości o nazwach "DisplayName" lub "DisplayValue" w tym kluczu.
JSON będzie zawierał szczegóły klucza, ostatniego podklucza, nazwy wartości, typu wartości i danych wartości.
registry.get[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall,values] #zwraca dane wszystkich wartości w tym kluczu.
JSON będzie zawierał szczegóły klucza, ostatniego podklucza, nazwy wartości, typu wartości i danych wartości.
registry.get[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall,keys] #zwraca wszystkie podklucze tego klucza.
JSON będzie zawierał szczegóły klucza i ostatniego podklucza.
service.discovery


Lista usług Windows. Używana do odkrywania niskiego poziomu.
Zwracana wartość: obiekt JSON.

service.info[service,<param>]


Informacje o usłudze.
Wartość zwracana: Integer - gdy param to state, startup; String - gdy param to displayname, path, user; Text - gdy param to description
Dokładnie dla state: 0 - uruchomiona, 1 - wstrzymana, 2 - oczekiwanie na uruchomienie, 3 - oczekiwanie na wstrzymanie, 4 - oczekiwanie na wznowienie, 5 - oczekiwanie na zatrzymanie, 6 - zatrzymana, 7 - nieznany, 255 - brak takiej usługi
Dokładnie dla startup: 0 - automatyczny, 1 - automatyczny opóźniony, 2 - ręczny, 3 - wyłączony, 4 - nieznany, 5 - automatyczny start wyzwalany, 6 - automatyczny opóźniony start wyzwalany, 7 - ręczny start wyzwalany

Parametry:

  • service - rzeczywista nazwa usługi lub jej nazwa wyświetlana widoczna w przystawce MMC Services;
  • param - state (domyślnie), displayname, path, user, startup lub description.

Uwagi:

  • Pozycje takie jak service.info[service,state] i service.info[service] zwrócą te same informacje;
  • Tylko gdy param to state, ta pozycja zwraca wartość dla nieistniejących usług (255).

Przykłady:

service.info[SNMPTRAP] - stan usługi SNMPTRAP;
service.info[SNMP Trap] - stan tej samej usługi, ale z podaną nazwą wyświetlaną;
service.info[EventLog,startup] - typ uruchamiania usługi EventLog
services[<type>,<state>,<exclude>]


Lista usług.
Zwracana wartość: 0 - jeśli pusta; Text - lista usług rozdzielonych znakiem nowej linii.

Parametry:

  • type - all (domyślnie), automatic, manual lub disabled;
  • state - all (domyślnie), stopped, started, start_pending, stop_pending, running, continue_pending, pause_pending lub paused;
  • exclude - usługi, które należy wykluczyć z wyniku. Wykluczane usługi powinny być podane w podwójnych cudzysłowach, rozdzielone przecinkami, bez spacji.

Przykłady:

services[,started] #zwraca listę uruchomionych usług;
services[automatic, stopped] #zwraca listę zatrzymanych usług, które powinny być uruchomione;
services[automatic, stopped, "service1,service2,service3"] #zwraca listę zatrzymanych usług, które powinny być uruchomione, z wyłączeniem usług o nazwach "service1", "service2" i "service3"
vm.vmemory.size[<type>]


Rozmiar pamięci wirtualnej w bajtach lub jako procent całości.
Zwracana wartość: Integer - dla bajtów; float - dla wartości procentowej.

Parametr:

  • type - możliwe wartości: available (dostępna pamięć wirtualna), pavailable (dostępna pamięć wirtualna, w procentach), pused (używana pamięć wirtualna, w procentach), total (całkowita pamięć wirtualna, domyślnie) lub used (używana pamięć wirtualna)

Komentarze:

  • Monitorowanie statystyk pamięci wirtualnej opiera się na:
    • Całkowitej pamięci wirtualnej w systemie Windows (całkowita pamięć fizyczna + rozmiar pliku stronicowania);
    • Maksymalnej ilości pamięci, którą agent Zabbix może przydzielić;
    • Bieżącym limicie pamięci przydzielonej dla systemu lub agent Zabbix, w zależności od tego, która wartość jest mniejsza.

Przykład:

vm.vmemory.size[pavailable] #zwraca dostępną pamięć wirtualną, w procentach
wmi.get[<namespace>,<query>]


Wykonuje zapytanie WMI i zwraca pierwszy wybrany obiekt.
Wartość zwracana: Integer, float, string lub text (w zależności od żądania).

Parametry:

  • namespace - przestrzeń nazw WMI;
  • query - zapytanie WMI zwracające pojedynczy obiekt.

Zapytania WMI są wykonywane przy użyciu WQL.

Przykład:

wmi.get[root\cimv2,select status from Win32_DiskDrive where Name like '%PHYSICALDRIVE0%'] #zwraca status pierwszego dysku fizycznego
wmi.getall[<namespace>,<query>]


Wykonuje zapytanie WMI i zwraca całą odpowiedź. Może być używane do odkrywania niskiego poziomu.
Wartość zwracana: obiekt JSON

Parametry:

  • namespace - przestrzeń nazw WMI;
  • query - zapytanie WMI.

Uwagi:

  • Zapytania WMI są wykonywane przy użyciu WQL.
  • Przetwarzanie wstępne JSONPath może być używane do wskazania bardziej szczegółowych wartości w zwróconym JSON.

Przykład:

wmi.getall[root\cimv2,select * from Win32_DiskDrive where Name like '%PHYSICALDRIVE%'] #zwraca informacje o stanie dysków fizycznych

Monitorowanie usług Windows

Ten samouczek zawiera instrukcje krok po kroku dotyczące konfiguracji monitorowania usług Windows. Zakłada się, że serwer Zabbix i agent są skonfigurowane i działają poprawnie.

Krok 1

Pobierz nazwę usługi.

Nazwę usługi można uzyskać, przechodząc do przystawki MMC Services i otwierając właściwości usługi. Na karcie General powinno być widoczne pole o nazwie „Service name”. Następująca po nim wartość to nazwa, której użyjesz podczas konfigurowania pozycji do monitorowania. Na przykład, jeśli chcesz monitorować usługę „workstation”, nazwa usługi może być następująca: lanmanworkstation.

Krok 2

Skonfiguruj pozycję do monitorowania usługi.

Pozycja service.info[service,<param>] pobiera informacje o określonej usłudze. W zależności od potrzebnych informacji należy określić opcję param, która przyjmuje następujące wartości: displayname, state, path, user, startup lub description. Wartością domyślną jest state, jeśli param nie zostanie określony (service.info[service]).

Typ zwracanej wartości zależy od wybranego param: integer dla state i startup; character string dla displayname, path i user; text dla description.

Przykład:

  • Klucz: service.info[lanmanworkstation]
  • Typ informacji: Numeryczny (bez znaku)

Pozycja service.info[lanmanworkstation] pobierze informacje o stanie usługi jako wartość liczbową. Aby odwzorować wartość liczbową na reprezentację tekstową we frontendzie („0” jako „Running”, „1” jako „Paused” itd.), można skonfigurować mapowanie wartości na hoście, na którym skonfigurowano pozycję. Aby to zrobić, należy albo podłączyć szablon Windows services by Zabbix agent lub Windows services by Zabbix agent active do hosta, albo skonfigurować na hoście nową mapę wartości opartą na mapie wartości Windows service state skonfigurowanej we wspomnianych szablonach.

Należy pamiętać, że oba wspomniane szablony mają skonfigurowaną regułę wykrywania, która będzie automatycznie wykrywać usługi. Jeśli nie jest to pożądane, można wyłączyć regułę wykrywania na poziomie hosta po podłączeniu szablonu do hosta.

Wykrywanie usług Windows

Wykrywanie niskiego poziomu zapewnia sposób na automatyczne tworzenie pozycji, wyzwalaczy i wykresów dla różnych obiektów na komputerze. Zabbix może automatycznie rozpocząć monitorowanie usług Windows na komputerze, bez potrzeby znajomości dokładnej nazwy usługi ani ręcznego tworzenia pozycji dla każdej usługi. Filtr może zostać użyty do generowania rzeczywistych pozycji, wyzwalaczy i wykresów tylko dla interesujących usług.