host.get

Opis

integer/array host.get(object parameters)

Metoda umożliwia pobranie hostów zgodnie z podanymi parametrami.

Ta metoda jest dostępna dla użytkowników dowolnego typu. Uprawnienia do wywoływania metody mogą zostać cofnięte w ustawieniach ról użytkownika. Zobacz Role użytkownika aby uzyskać więcej informacji.

Parametry

(object) Parametry definiujące pożądany wynik.

Metoda obsługuje następujące parametry.

Parametr Typ Opis
groupids string/array Zwróć tylko hosty, które należą do określonych grup.
dserviceids string/array Zwróć tylko hosty, które są powiązane z danymi wykrytymi usługami.
graphids string/array Zwróć tylko hosty, które mają podane wykresy.
hostids string/array Zwróć tylko hosty o podanych identyfikatorach hostów.
httptestids string/array Zwróć tylko hosty, które mają podane testy sieci www.
interfaceids string/array Zwróć tylko hosty, które korzystają z podanych interfejsów.
itemids string/array Zwróć tylko hosty, które mają podane pozycje.
maintenanceids string/array Zwróć tylko hosty, które są objęte podanymi okresami utrzymania.
monitored_hosts flag Zwróć tylko monitorowane hosty.
proxy_hosts flag Zwróć tylko proxy.
proxyids string/array Zwróć tylko hosty monitorowane przez podane serwery proxy.
templated_hosts flag Zwróć zarówno hosty, jak i szablony.
templateids string/array Zwróć tylko hosty, które są powiązane z podanymi szablonami.
triggerids string/array Zwróć tylko hosty, które mają podane wyzwalacze.
with_items flag Zwróć tylko hosty, które posiadają pozycję.

Nadpisuje parametry with_monitored_items i with_simple_graph_items.
with_item_prototypes flag Zwróć tylko hosty, które mają prototypy pozycje.

Nadpisuje parametr with_simple_graph_item_prototypes.
with_simple_graph_item_prototypes flag Zwróć tylko hosty, które posiadają prototypy pozycji, które są włączone podczas tworzenia i mają typ informacji typu liczba.
with_graphs flag Zwróć tylko hosty, które posiadają wykresy.
with_graph_prototypes flag Zwróć tylko hosty, które posiadają prototypy wykresów.
with_httptests flag Zwróć tylko hosty, które posiadają testy sieci www.

Nadpisuje parametr with_monitored_httptests.
with_monitored_httptests flag Zwróć tylko hosty, które mają włączone testy sieci www.
with_monitored_items flag Zwróć tylko hosty, które mają włączone pozycje.

Zastępuje parametr with_simple_graph_items.
with_monitored_triggers flag Zwróć tylko hosty, które mają włączone wyzwalacze. Wszystkie pozycje użyte w wyzwalaczu muszą również być włączone.
with_simple_graph_items flag Zwróć tylko hosty, które mają pozycje z typem informacji typu liczba.
with_triggers flag Zwróć tylko hosty, które mają wyzwalacze.

Nadpisuje parametr with_monitored_triggers.
withProblemsSuppressed boolean Zwróć hosty, które mają wstrzymane problemy.

Możliwe wartości:
null - (domyślnie) wszystkie hosty;
true - tylko hosty z wstrzymanymi problemami;
false - tylko hosty z niewstrzymanymi problemami.
evaltype integer Reguły wyszukiwania znaczników.

Możliwe wartości:
0 - (domyślnie) And/Or;
2 - Or.
severities integer/array Zwróć hosty, które mają tylko problemy o podanych poziomach. Dotyczy tylko sytuacji, gdy obiekt problemu to wyzwalacz.
tags object/array Zwróć tylko hosty z podanymi znacznikami. Dokładne dopasowanie według tagu oraz wyszukiwanie z uwzględnieniem wielkości liter lub bez, w zależności od wartości operatora.
Format: [{"tag": "<tag>", "value": "<value>", "operator": "<operator>"}, ...].
Pusta tablica zwraca wszystkie hosty.

Możliwe wartości operatora:
0 - (domyślnie) Zawiera;
1 - Jest Równy;
2 - Nie zawiera;
3 - Nie jest równy
4 - Istnieje;
5 - Nie istnieje.
inheritedTags boolean Zwróć hosty, które mają podane znaczniki także we wszystkich powiązanych szablonach. Domyślnie:

Możliwe wartości:
true - powiązane szablony muszą również mieć podane znaczniki;
false - (domyślnie) tagi szablonów są ignorowane.
selectDiscoveries query Zwróć właściwość discoveries z regułami wykrywania niskopoziomowego hostów.

Obsługuje count.
selectDiscoveryRule query Zwróć właściwość discoveryRule z regułami wykrywania niskopoziomowego, która utworzyła hosta (z prototypu hosta w monitorowaniu VMware).
selectGraphs query Zwróć właściwość graphs z wykresami hostów.

Obsługuje count.
selectGroups query Zwróć właściwość groups z danymi grup hostów, do których należy host.
selectHostDiscovery query Zwróć właściwość hostDiscovery z danymi obiektu wykrywania hosta.

Obiekt wykrywania hosta łączy wykryty host z prototypem hosta lub prototypami hostów z regułą LLD i ma następujące właściwości:
host - (string) host prototypu hosta;
hostid - (string) ID wykrytego hosta lub prototypu hosta;
parent_hostid - (string) ID prototypu hosta, z którego został utworzony host;
parent_itemid - (string) ID reguły LLD, która utworzyła odkryty host;
lastcheck - (timestamp) czas ostatniego odkrycia hosta;
ts_delete - (timestamp) czas, kiedy host, który nie jest już odkrywany, zostanie usunięty.
selectHttpTests query Zwróć właściwość httpTests z scenariuszami sieci www hosta.

Obsługuje count.
selectInterfaces query Zwróć właściwość interfaces z interfejsami hosta.

Obsługuje count.
selectInventory query Zwróć właściwość inventory z danymi inwentarza hosta.
selectItems query Zwróć właściwość items z pozycjami hosta.

Obsługuje count.
selectMacros query Zwróć właściwość macros z makrami hosta.
selectParentTemplates query Zwróć właściwość parentTemplates z szablonami, do których jest podłączony host.

Obsługuje count.
selectDashboards query Zwróć właściwość dashboards.

Obsługuje count.
selectTags query Zwróć właściwość tags z znacznikami hosta.
selectInheritedTags query Zwróć właściwość inheritedTags z znacznikami, które są we wszystkich szablonach powiązanych z hostem.
selectTriggers query Zwróć właściwość triggers z wyzwalaczami hosta.

Obsługuje count.
selectValueMaps query Zwróć właściwość valuemaps z mapami wartości hosta.
filter object Zwróć tylko te wyniki, które dokładnie pasują do podanego filtra.

Akceptuje tablicę, gdzie klucze to nazwy właściwości, a wartości to pojedyncza wartość lub tablica wartości do porównania.

Pozwala na filtrowanie według właściwości interfejsu. Nie działa dla pól text.
limitSelects integer Ogranicza liczbę zwracanych rekordów poprzez podzapytania.

Dotyczy następujących podzapytań:
selectParentTemplates - wyniki będą posortowane według host;
selectInterfaces;
selectItems - posortowane według name;
selectDiscoveries - posortowane według name;
selectTriggers - posortowane według description;
selectGraphs - posortowane według name;
selectDashboards - posortowane według name.
search object Zwróć wyniki, które pasują do podanego wzorca (bez uwzględniania wielkości liter).

Akceptuje tablicę, gdzie klucze to nazwy właściwości, a wartości to ciągi znaków do wyszukania. Jeśli nie podano dodatkowych opcji, to zostanie wykonane wyszukiwanie LIKE "%…%".

Pozwala na wyszukiwanie według właściwości interfejsu. Działa tylko dla pól typu znak i tekst.
searchInventory object Zwróć tylko hosty, które mają dane inwentarza pasujące do podanego wyszukiwania za pomocą symboli wildcard.

Parametr ten wpływa na te same dodatkowe parametry co search.
sortfield string/array Sortuj wynik według podanych właściwości.

Możliwe wartości to: hostid, host, name, status.
countOutput boolean Te parametry wspólne dla wszystkich metod get są szczegółowo opisane w komentarzu referencyjnym.
editable boolean
excludeSearch boolean
limit integer
output query
preservekeys boolean
searchByAny boolean
searchWildcardsEnabled boolean
sortorder string/array
startSearch boolean

Zwracane wartości

(integer/array) Zwraca jedną z opcji:

  • tablicę obiektów;
  • liczbę pobranych obiektów, jeśli parametr countOutput został wykorzystany.

Przykłady

Pobieranie danych według nazwy

Pobierz wszystkie dane o dwóch hostach o nazwach "Zabbix server" i "Linux server".

Zapytanie:

{
           "jsonrpc": "2.0",
           "method": "host.get",
           "params": {
               "filter": {
                   "host": [
                       "Zabbix server",
                       "Linux server"
                   ]
               }
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 1
       }

Odpowiedź:

{
           "jsonrpc": "2.0",
           "result": [
               {
                   "hostid": "10160",
                   "proxy_hostid": "0",
                   "host": "Zabbix server",
                   "status": "0",
                   "lastaccess": "0",
                   "ipmi_authtype": "-1",
                   "ipmi_privilege": "2",
                   "ipmi_username": "",
                   "ipmi_password": "",
                   "maintenanceid": "0",
                   "maintenance_status": "0",
                   "maintenance_type": "0",
                   "maintenance_from": "0",
                   "name": "Zabbix server",
                   "flags": "0",
                   "description": "The Zabbix monitoring server.",
                   "tls_connect": "1",
                   "tls_accept": "1",
                   "tls_issuer": "",
                   "tls_subject": "",
                   "inventory_mode": "1"
               },
               {
                   "hostid": "10167",
                   "proxy_hostid": "0",
                   "host": "Linux server",
                   "status": "0",
                   "lastaccess": "0",
                   "ipmi_authtype": "-1",
                   "ipmi_privilege": "2",
                   "ipmi_username": "",
                   "ipmi_password": "",
                   "maintenanceid": "0",
                   "maintenance_status": "0",
                   "maintenance_type": "0",
                   "maintenance_from": "0",
                   "name": "Linux server",
                   "flags": "0",
                   "description": "",
                   "tls_connect": "1",
                   "tls_accept": "1",
                   "tls_issuer": "",
                   "tls_subject": "",
                   "inventory_mode": "1"
               }
           ],
           "id": 1
       }

Pobieranie grup hostów

Pobierz nazwy grup, do których należy host "Zabbix server", bez szczegółowych informacji o samym hoście.

Zapytanie:

{
           "jsonrpc": "2.0",
           "method": "host.get",
           "params": {
               "output": ["hostid"],
               "selectGroups": "extend",
               "filter": {
                   "host": [
                       "Zabbix server"
                   ]
               }
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 2
       }

Odpowiedź:

{
           "jsonrpc": "2.0",
           "result": [
               {
                   "hostid": "10085",
                   "groups": [
                       {
                           "groupid": "2",
                           "name": "Linux servers",
                           "internal": "0",
                           "flags": "0"
                       },
                       {
                           "groupid": "4",
                           "name": "Zabbix servers",
                           "internal": "0",
                           "flags": "0"
                       }
                   ]
               }
           ],
           "id": 2
       }

Pobieranie powiązanych szablonów

Pobierz identyfikatory i nazwy szablonów powiązanych z hostem "10084".

Zapytanie:

{
           "jsonrpc": "2.0",
           "method": "host.get",
           "params": {
               "output": ["hostid"],
               "selectParentTemplates": [
                   "templateid",
                   "name"
               ],
               "hostids": "10084"
           },
           "id": 1,
           "auth": "70785d2b494a7302309b48afcdb3a401"
       }

Odpowiedź:

{
           "jsonrpc": "2.0",
           "result": [
               {
                   "hostid": "10084",
                   "parentTemplates": [
                       {
                           "name": "Linux",
                           "templateid": "10001"
                       },
                       {
                           "name": "Zabbix Server",
                           "templateid": "10047"
                       }
                   ]
               }
           ],
           "id": 1
       }

Pobieranie hostów według szablonu

Pobierz hosty, które są powiązane z szablonem "10001" (Linux by Zabbix agent).

Zapytanie:

{
           "jsonrpc": "2.0",
           "method": "host.get",
           "params": {
               "output": ["hostid", "name"],
               "templateids": "10001"
           },
           "auth": "70785d2b494a7302309b48afcdb3a401",
           "id": 1
       }

Odpowiedź:

{
           "jsonrpc": "2.0",
           "result": [
               {
                   "templateid": "10001",
                   "hosts": [
                       {
                           "hostid": "10084",
                           "name": "Zabbix server"
                       },
                       {
                           "hostid": "10603",
                           "name": "Host 1"
                       },
                       {
                           "hostid": "10604",
                           "name": "Host 2"
                       }
                   ]
               }
           ],
           "id": 1
       }

Wyszukiwanie według danych inwentarza hosta

Pobierz hosty zawierające "Linux" w polu "OS" inwentarza hosta.

Zapytanie:

{
           "jsonrpc": "2.0",
           "method": "host.get",
           "params": {
               "output": [
                   "host"
               ],
               "selectInventory": [
                   "os"
               ],
               "searchInventory": {
                   "os": "Linux"
               }
           },
           "id": 2,
           "auth": "7f9e00124c75e8f25facd5c093f3e9a0"
       }

Odpowiedź:

{
           "jsonrpc": "2.0",
           "result": [
               {
                   "hostid": "10084",
                   "host": "Zabbix server",
                   "inventory": {
                       "os": "Linux Ubuntu"
                   }
               },
               {
                   "hostid": "10107",
                   "host": "Linux server",
                   "inventory": {
                       "os": "Linux Mint"
                   }
               }
           ],
           "id": 1
       }

Wyszukiwanie według tagów hosta

Pobierz hosty, które mają znacznik "Host name" równy "Linux server".

Zapytanie:

{
           "jsonrpc": "2.0",
           "method": "host.get",
           "params": {
               "output": ["hostid"],
               "selectTags": "extend",
               "evaltype": 0,
               "tags": [
                   {
                       "tag": "Host name",
                       "value": "Linux server",
                       "operator": 1
                   }
               ]
           },
           "auth": "7f9e00124c75e8f25facd5c093f3e9a0",
           "id": 1
       }

Odpowiedź:

{
           "jsonrpc": "2.0",
           "result": [
               {
                   "hostid": "10085",
                   "tags": [
                       {
                           "tag": "Host name",
                           "value": "Linux server"
                       },
                       {
                           "tag": "OS",
                           "value": "RHEL 7"
                       }
                   ]
               }
           ],
           "id": 1
       }

Pobierz hosty, które posiadają te tagi nie tylko na poziomie hosta, ale także w ich powiązanych szablonach nadrzędnych.

Zapytanie:

{
           "jsonrpc": "2.0",
           "method": "host.get",
           "params": {
               "output": ["name"],
               "tags": [{"tag": "A", "value": "1", "operator": "0"}],
               "inheritedTags": true
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 1
       }

Odpowiedź:

{
           "jsonrpc": "2.0",
           "result": [
               {
                   "hostid": "10623",
                   "name": "PC room 1"
               },
               {
                   "hostid": "10601",
                   "name": "Office"
               }
           ],
           "id": 1
       }

Wyszukiwanie hosta z znacznikami oraz tagami szablonów

Pobierz hosta z tagami oraz wszystkimi znacznikami, które są powiązane ze szablonami nadrzędnymi.

Zapytanie:

{
           "jsonrpc": "2.0",
           "method": "host.get",
           "params": {
               "output": ["name"],
               "hostids": 10502,
               "selectTags": ["tag", "value"],
               "selectInheritedTags": ["tag", "value"]
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 1
       }

Odpowiedź:

{
           "jsonrpc": "2.0",
           "result": [
               {
                   "hostid": "10502",
                   "name": "Desktop",
                   "tags": [
                       {
                           "tag": "A",
                           "value": "1"
                       }
                   ],
                   "inheritedTags": [
                       {
                           "tag": "B",
                           "value": "2"
                       }
                   ]
               }
           ],
           "id": 1
       }

Wyszukiwanie hostów według powagi problemu

Pobierz hosty, które mają problemy na poziomie "Disaster".

Zapytanie:

{
           "jsonrpc": "2.0",
           "method": "host.get",
           "params": {
               "output": ["name"],
               "severities": 5
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 1
       }

Odpowiedź:

{
           "jsonrpc": "2.0",
           "result": [
               {
                   "hostid": "10160",
                   "name": "Zabbix server"
               }
           ],
           "id": 1
       }

Pobierz hosty, które mają problemy na poziomie "Średni" oraz "Wysoki".

Zapytanie:

{
           "jsonrpc": "2.0",
           "method": "host.get",
           "params": {
               "output": ["name"],
               "severities": [3, 4]
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 1
       }

Odpowiedź:

{
           "jsonrpc": "2.0",
           "result": [
               {
                   "hostid": "20170",
                   "name": "Database"
               },
               {
                   "hostid": "20183",
                   "name": "workstation"
               }
           ],
           "id": 1
       }

Zobacz także

Źródło

CHost::get() w ui/include/classes/api/services/CHost.php.