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ółdzielone pozycje

Poniższa tabela zawiera pozycje agenta Zabbix obsługiwane w systemie Windows i współdzielone z agentem Zabbix dla UNIX:

  • Klucz pozycji jest linkiem do pełnych szczegółów pozycji agenta Zabbix dla UNIX
  • Uwzględniono komentarze dotyczące pozycji istotne dla systemu Windows
Item key Description Item group
log Monitorowanie pliku dziennika. Ta pozycja nie jest obsługiwana dla Windows Event Log.
Parametr persistent_dir nie jest obsługiwany w systemie Windows.
Log monitoring
log.count Liczba dopasowanych wierszy w monitorowanym pliku dziennika. Ta pozycja nie jest obsługiwana dla Windows Event Log.
Parametr persistent_dir nie jest obsługiwany w systemie Windows.
logrt Monitorowanie rotowanego pliku dziennika. Ta pozycja nie jest obsługiwana dla Windows Event Log.
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 Windows Event Log.
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.
Network
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 liczników 64-bitowych, jeśli są dostępne. Liczniki statystyk interfejsów 64-bitowych zostały wprowadzone w Windows Vista i Windows Server 2008. Jeśli liczniki 64-bitowe nie są dostępne, agent używa liczników 32-bitowych.
Nazwy interfejsów wielobajtowych są obsługiwane 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 liczników 64-bitowych, jeśli są dostępne. Liczniki statystyk interfejsów 64-bitowych zostały wprowadzone w Windows Vista i Windows Server 2008. Jeśli liczniki 64-bitowe nie są dostępne, agent używa liczników 32-bitowych.
Nazwy interfejsów wielobajtowych są obsługiwane 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 liczników 64-bitowych, jeśli są dostępne. Liczniki statystyk interfejsów 64-bitowych zostały wprowadzone w Windows Vista i Windows Server 2008. Jeśli liczniki 64-bitowe nie są dostępne, agent używa liczników 32-bitowych.
Nazwy interfejsów wielobajtowych są obsługiwane w systemie Windows.
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 ma stan LISTEN.
net.tcp.port Sprawdza, czy można nawiązać połączenie 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 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 Windows.
proc.get Lista procesów systemu operacyjnego i ich parametrów.
Parametr cmdline nie jest obsługiwany w systemie Windows.
Processes
proc.num Liczba procesów.
W systemie Windows obsługiwane są tylko parametry name i user.
system.cpu.discovery Lista wykrytych procesorów/rdzeni procesora. System
system.cpu.load Obciążenie CPU.
Po uruchomieniu procesu kolektora w Zabbix agent inicjowane są następujące liczniki wydajności, które są później używane dla tej pozycji: \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 zauważyć, że od Windows 8 Menedżer zadań pokazuje wykorzystanie CPU na podstawie licznika wydajności Processor Utility, podczas gdy we wcześniejszych wersjach był to licznik Processor Time (zobacz więcej szczegółów).
system jest jedynym obsługiwanym parametrem type w systemie Windows.
system.hostname Nazwa hosta systemu.
Wartość 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 minor i major itp.).
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 zauważyć, że ten klucz może zwracać 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ść dla tej pozycji jest pobierana z klas WMI Win32_OperatingSystem i Win32_Processor. Nazwa systemu operacyjnego (w tym edycja) może być przetłumaczona na język wyświetlania użytkownika. W niektórych wersjach systemu Windows zawiera symbole znaku towarowego i dodatkowe spacje.
system.uptime Czas działania systemu w sekundach.
vfs.dir.count Liczba wpisów katalogu.
W systemie Windows dowiązania symboliczne do katalogów są pomijane, a dowiązania twarde są liczone tylko raz.
Virtual file systems
vfs.dir.get Lista wpisó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 dowolne dowiązanie symboliczne jest 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 \, a cały klucz pozycji musi być ujęty w podwójne cudzysłowy podczas korzystania z narzędzia wiersza poleceń do wywołania zabbix_get.exe lub agent2.
Należy zauważyć, że pozycja może stać się nieobsługiwana w systemie Windows, jeśli katalog jest wyszukiwany w nieistniejącym 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 Wyszukuje ciąg znaków w pliku.
vfs.file.size Rozmiar pliku.
vfs.file.time Informacje o czasie pliku.
W 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ępnym miejscem na dysku, statystykami inode i opcjami montowania.
Makro {#FSLABEL} jest obsługiwane w systemie Windows.
vfs.fs.size Miejsce na dysku w bajtach lub jako procent całości.
vm.memory.size Rozmiar pamięci w bajtach lub jako procent całości. Virtual memory
web.page.get Pobiera zawartość strony internetowej. Web monitoring
web.page.perf Czas ładowania pełnej strony internetowej.
web.page.regexp Wyszukuje 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 serwera Zabbix lub proxy.
zabbix.stats (queue) Zwraca zdalnie liczbę monitorowanych pozycji w kolejce, które są opóźnione na serwerze Zabbix 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ń.
Wartość zwracana: Log.

Parametry:

  • name - nazwa kanału dziennika zdarzeń (Log Name w interfejsie Event Viewer);
  • regexp - wyrażenie regularne expression opisujące wymagany wzorzec (uwzględnia wielkość 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" (działa w 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) zdarzenia (uwzględnia wielkość liter);
  • maxlines - maksymalna liczba nowych linii na sekundę, które agent wyśle do serwer lub proxy. Ten parametr zastępuje wartość MaxLinesPerSecond w zabbix_agentd.conf.
  • mode - możliwe wartości:
    • all (domyślnie);
    • skip - pomiń przetwarzanie starszych danych (dotyczy tylko nowo utworzonych pozycji).

Uwagi:

  • Pozycja musi być skonfigurowana jako active check;
  • Agent nie jest w stanie wysyłać zdarzeń z dziennika "Forwarded events";
  • Obsługiwany jest Windows Eventing 6.0;
  • Wybranie dla tej pozycji typu informacji innego niż Log spowoduje utratę lokalnego znacznika czasu, a także informacji o ważności dziennika i źródle;
  • Zobacz także dodatkowe informacje o monitorowaniu dziennikó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] #here a custom regular expression named `TWOSHORT` is referenced (defined as a *Result is TRUE* type, the expression itself being `^1$|^70$`).
eventlog.count[name,<regexp>,<severity>,<source>,<eventid>,<maxproclines>,<mode>]


Liczba wierszy w dzienniku zdarzeń systemu Windows.
Wartość zwracana: Integer.

Parametry:

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

Uwagi:

  • Pozycja musi być skonfigurowana jako active check;
  • Agent nie jest w stanie wysyłać zdarzeń z dziennika "Forwarded events";
  • Obsługiwany jest Windows Eventing 6.0;
  • Wybranie dla tej pozycji 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 dziennikó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.
Wartość zwracana: 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 (na przykład wykorzystanie CPU), więc 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.
Wartość zwracana: Integer, float, string lub text (w zależności od zapytania).

Parametry:

  • counter - ścieżka do licznika w języku angielskim;
  • 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 podąża za ścieżkami 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), więc sprawdzenie za każdym razem zwraca wartość średnią z ostatnich "interval" sekund;
  • Ta pozycja jest obsługiwana tylko w 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 lub procesach.
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)

Komentarze:

  • Obsługiwane są następujące attributes:
    • vmsize - rozmiar wirtualnej pamięci procesu w Kbytes (domyślnie);
    • wkset - rozmiar working set procesu (ilość pamięci fizycznej używanej przez proces) w Kbytes;
    • pf - liczba page faults;
    • 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 I/O;
    • io_read_op - liczba operacji odczytu wykonanych przez proces;
    • io_write_b - liczba bajtów zapisanych przez proces podczas operacji I/O;
    • 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 I/O wykonanych przez proces, innych niż operacje odczytu i zapisu;
    • gdiobj - liczba obiektów GDI używanych przez proces;
    • userobj - liczba obiektów USER używanych przez proces.
  • Prawidłowe types to:
    • avg - średnia wartość dla wszystkich procesów o nazwie <process> (domyślnie);
    • min - minimalna wartość spośród wszystkich procesów o nazwie <process>;
    • max - maksymalna wartość 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] #pobranie ilości pamięci fizycznej zajmowanej przez wszystkie procesy Internet Explorer
proc_info[iexplore.exe,pf,avg] #pobranie średniej liczby page faults 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 znaków ""). 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ójne cudzysłowy.

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ę pod podanym kluczem.
Wartość zwracana: obiekt JSON.

Parametry:

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

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

Przykłady:

registry.get[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall,values,"^DisplayName|DisplayVersion$"] #zwraca dane wartości o nazwie "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 - z param jako state, startup;
    W szczególności 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 - nieznana
    • 255 - brak takiej usługi
      W szczególności 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
  • String - z param jako displayname, path, user;
  • Text - z param jako description.

Parametry:

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

Komentarze:

  • Pozycje takie jak service.info[service,state] i service.info[service] zwrócą te same informacje;
  • Tylko przy param ustawionym na 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

Uzyskaj nazwę usługi.

Nazwę usługi można uzyskać, przechodząc do przystawki MMC Usługi i otwierając właściwości usługi. Na karcie Ogólne powinna być widoczna pozycja o nazwie Nazwa usługi. Wartość, która po niej następuje, 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 brzmieć: 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.