2 Windows agent Zabbix
Przegląd
Pozycje agenta Zabbix dla systemu Windows są przedstawione na dwóch listach:
- Pozycje współdzielone — klucze pozycji współdzielone z agentem Zabbix dla systemów UNIX;
- Pozycje specyficzne dla Windows — klucze pozycji obsługiwane tylko w systemie Windows.
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ść
MaxLinesPerSecondwzabbix_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.
intervalmusi mieścić się w zakresie od 1 do 900 sekund (włącznie), a wartość domyślna to1.
Uwagi:
- Ta pozycja obsługuje ścieżki UNC, co może stanowić zagrożenie bezpieczeństwa;
intervaljest 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.
intervalmusi mieścić się w zakresie od 1 do 900 sekund (włącznie), a wartość domyślna to1.
Uwagi:
- Ta pozycja podąża za ścieżkami UNC, co może stanowić zagrożenie bezpieczeństwa;
intervaljest 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
typesto:- 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
paramjako 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
paramjako displayname, path, user; - Text - z
paramjako 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]iservice.info[service]zwrócą te same informacje; - Tylko przy
paramustawionym 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.
- Całkowitej pamięci wirtualnej w systemie Windows (całkowita pamięć fizyczna + rozmiar pliku stronicowania);
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.