host.get

Opis

integer/array host.get(object parameters)

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

Ta metoda jest dostępna dla użytkowników dowolnego typu. Uprawnienia do wywoływania metody można odebrać w ustawieniach roli użytkownika. Więcej informacji można znaleźć w sekcji Role użytkowników.

Parametry

(object) Parametry definiujące żądane dane wyjściowe.

Metoda obsługuje następujące parametry.

Parametr Typ Opis
groupids ID/array Zwraca tylko hosty należące do podanych grup.
dserviceids ID/array Zwraca tylko hosty powiązane z podanymi wykrytymi usługami.
graphids ID/array Zwraca tylko hosty, które mają podane wykresy.
hostids ID/array Zwraca tylko hosty o podanych identyfikatorach hostów.
httptestids ID/array Zwraca tylko hosty, które mają podane testy webowe.
interfaceids ID/array Zwraca tylko hosty korzystające z podanych interfejsów.
itemids ID/array Zwraca tylko hosty, które mają podane pozycje.
maintenanceids ID/array Zwraca tylko hosty objęte podanymi okresami utrzymania.
monitored_hosts flag Zwraca tylko monitorowane hosty.
proxyids ID/array Zwraca tylko hosty monitorowane przez podane proxy.
proxy_groupids ID/array Zwraca tylko hosty monitorowane przez podane grupy proxy.
templated_hosts flag Zwraca zarówno hosty, jak i szablony.
templateids ID/array Zwraca tylko hosty połączone z podanymi szablonami.
triggerids ID/array Zwraca tylko hosty, które mają podane wyzwalacze.
with_items flag Zwraca tylko hosty, które mają pozycje.

Zastępuje parametry with_monitored_items i with_simple_graph_items.
with_item_prototypes flag Zwraca tylko hosty, które mają prototypy pozycji.

Zastępuje parametr with_simple_graph_item_prototypes.
with_simple_graph_item_prototypes flag Zwraca tylko hosty, które mają prototypy pozycji włączone do tworzenia i mające numeryczny typ informacji.
with_graphs flag Zwraca tylko hosty, które mają wykresy.
with_graph_prototypes flag Zwraca tylko hosty, które mają prototypy wykresów.
with_httptests flag Zwraca tylko hosty, które mają testy webowe.

Zastępuje parametr with_monitored_httptests.
with_monitored_httptests flag Zwraca tylko hosty, które mają włączone testy webowe.
with_monitored_items flag Zwraca tylko hosty, które mają włączone pozycje.

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

Zastępuje parametr with_monitored_triggers.
withProblemsSuppressed boolean Jeśli ustawiono true, zwraca tylko hosty z wyciszonymi problemami.
evaltype integer Metoda oceny tagów.

Możliwe wartości:
0 - (domyślnie) And/Or;
2 - Or.
severities integer/array Zwraca hosty, które mają wyłącznie problemy o podanych poziomach ważności. Ma zastosowanie tylko wtedy, gdy obiektem problemu jest wyzwalacz.
tags object/array Zwraca tylko hosty z podanymi tagami.
Format: [{"tag": "<tag>", "value": "<value>", "operator": "<operator>"}, ...].
Pusta tablica zwraca wszystkie hosty.

Możliwe wartości operatora:
0 - (domyślnie) Zawiera;
1 - Jest równe;
2 - Nie zawiera;
3 - Nie jest równe;
4 - Istnieje;
5 - Nie istnieje.
inheritedTags boolean Zwraca hosty, które mają podane tags również we wszystkich połączonych szablonach.

Możliwe wartości:
true - połączone szablony również muszą mieć podane tags;
false - (domyślnie) tagi połączonych szablonów są ignorowane.
selectDiscoveryData query Zwraca właściwość discoveryData zawierającą dane obiektu wykrywania hosta. Obiekt wykrywania hosta łączy wykryty host z prototypem hosta, na podstawie którego został wykryty.

Zawiera następujące właściwości:
host - (string) identyfikator hosta;
parent_hostid - (string) identyfikator prototypu hosta, na podstawie którego utworzono hosta;
status - (int) status wykrywania hosta:
0 - (domyślnie) host został wykryty,
1 - host nie jest już wykrywany;
ts_delete - (timestamp) czas, w którym host, który nie jest już wykrywany, zostanie usunięty;
ts_disable - (timestamp) czas, w którym host, który nie jest już wykrywany, zostanie wyłączony;
disable_source - (int) wskaźnik określający, czy host został wyłączony przez regułę LLD, czy ręcznie:
0 - (domyślnie) wyłączony automatycznie,
1 - wyłączony przez regułę LLD.
selectDiscoveryRule query Zwraca właściwość discoveryRule zawierającą regułę wykrywania niskopoziomowego, która utworzyła hosta (z prototypu hosta w monitorowaniu VMware).
selectDiscoveryRules query Zwraca właściwość discoveryRules zawierającą reguły LLD hosta.

Obsługuje count.
selectGraphs query Zwraca właściwość graphs zawierającą wykresy hosta.

Obsługuje count.
selectHostGroups query Zwraca właściwość hostgroups zawierającą dane grup hostów, do których należy host.
selectHttpTests query Zwraca właściwość httpTests zawierającą scenariusze webowe hosta.

Obsługuje count.
selectInterfaces query Zwraca właściwość interfaces zawierającą interfejsy hosta.

Obsługuje count.
selectInventory query Zwraca właściwość inventory zawierającą dane inwentarza hosta.
selectItems query Zwraca właściwość items zawierającą pozycje hosta.

Obsługuje count.
selectMacros query Zwraca właściwość macros zawierającą makra hosta.
selectParentTemplates query Zwraca właściwość parentTemplates zawierającą szablony, z którymi połączony jest host.

Oprócz pól obiektu Template zawiera link_type - (integer) sposób połączenia szablonu z hostem.
Możliwe wartości:
0 - (domyślnie) połączony ręcznie;
1 - połączony automatycznie przez LLD.

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

Obsługuje count.
selectTags query Zwraca właściwość tags zawierającą tagi hosta.
selectInheritedTags query Zwraca właściwość inheritedTags zawierającą tagi znajdujące się we wszystkich szablonach połączonych z hostem.
selectTriggers query Zwraca właściwość triggers zawierającą wyzwalacze hosta.

Obsługuje count.
selectValueMaps query Zwraca właściwość valuemaps zawierającą mapy wartości hosta.
filter object Zwraca tylko wyniki dokładnie pasujące do podanego filtra.

Przyjmuje obiekt, w którym kluczami są nazwy właściwości, a wartościami pojedyncza wartość lub tablica wartości, z którymi mają być porównywane.

Nie obsługuje właściwości typu danych text data type.

Obsługuje dodatkowe właściwości: właściwości interfejsu hosta.
limitSelects integer Ogranicza liczbę rekordów zwracanych przez podzapytania.

Dotyczy następujących podzapytań:
selectParentTemplates - wyniki będą sortowane według host;
selectInterfaces;
selectItems - sortowane według name;
selectDiscoveryRules - sortowane według name;
selectTriggers - sortowane według description;
selectGraphs - sortowane według name;
selectDashboards - sortowane według name.
search object Zwraca wyniki pasujące do podanego wzorca (bez uwzględniania wielkości liter).

Przyjmuje obiekt, w którym kluczami są nazwy właściwości, a wartościami ciągi znaków, których należy szukać. Jeśli nie podano dodatkowych opcji, wyszukiwanie będzie wykonywane za pomocą LIKE "%…%".

Obsługuje tylko właściwości typu danych string i text data type.

Obsługuje dodatkowe właściwości: właściwości interfejsu hosta.
searchInventory object Zwraca hosty, których dane inwentarza pasują do podanego wzorca (bez uwzględniania wielkości liter).

Przyjmuje obiekt, w którym kluczami są nazwy właściwości, a wartościami ciągi znaków, których należy szukać. Jeśli nie podano dodatkowych opcji, wyszukiwanie będzie wykonywane za pomocą LIKE "%…%".

Obsługuje tylko właściwości typu danych string i text data type.
sortfield string/array Sortuje wynik według podanych właściwości.

Możliwe wartości: hostid, host, name, status.
countOutput boolean Te parametry opisano w komentarzu referencyjnym.
editable boolean
excludeSearch boolean
limit integer
output query
preservekeys boolean
searchByAny boolean
searchWildcardsEnabled boolean
sortorder string/array
startSearch boolean
selectDiscoveries query Zwraca właściwość discoveries zawierającą reguły wykrywania niskopoziomowego hosta.

Obsługuje count.

To zapytanie jest przestarzałe; należy użyć zamiast niego selectDiscoveryRules.
selectHostDiscovery query Zwraca właściwość hostDiscovery zawierającą dane obiektu wykrywania hosta.

To zapytanie jest przestarzałe; należy użyć zamiast niego selectDiscoveryData.

Zwracane wartości

(integer/array) Zwraca:

  • tablicę obiektów;
  • liczbę pobranych obiektów, jeśli użyto parametru countOutput.

Przykłady

Pobieranie danych według nazwy

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

Żądanie:

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

Odpowiedź:

{
    "jsonrpc": "2.0",
    "result": [
        {
            "hostid": "10160",
            "proxyid": "0",
            "host": "Zabbix server",
            "status": "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": "Serwer monitorowania Zabbix.",
            "tls_connect": "1",
            "tls_accept": "1",
            "tls_issuer": "",
            "tls_subject": "",
            "proxy_groupid": "0",
            "monitored_by": "0",
            "inventory_mode": "1",
            "active_available": "1",
            "assigned_proxyid": "0"
        },
        {
            "hostid": "10167",
            "proxyid": "0",
            "host": "Linux server",
            "status": "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": "",
            "proxy_groupid": "0",
            "monitored_by": "0",
            "inventory_mode": "1",
            "active_available": "1",
            "assigned_proxyid": "0"
        }
    ],
    "id": 1
}

Pobieranie grup hostów

Pobierz grupy hostów, do których należy host „Zabbix server”.

Żądanie:

{
    "jsonrpc": "2.0",
    "method": "host.get",
    "params": {
        "output": ["hostid"],
        "selectHostGroups": "extend",
        "filter": {
            "host": [
                "Zabbix server"
            ]
        }
    },
    "id": 1
}

Odpowiedź:

{
    "jsonrpc": "2.0",
    "result": [
        {
            "hostid": "10085",
            "hostgroups": [
                {
                    "groupid": "2",
                    "name": "Linux servers",
                    "flags": "0",
                    "uuid": "dc579cd7a1a34222933f24f52a68bcd8"
                },
                {
                    "groupid": "4",
                    "name": "Zabbix servers",
                    "flags": "0",
                    "uuid": "6f6799aa69e844b4b3918f779f2abf08"
                }
            ]
        }
    ],
    "id": 1
}

Pobieranie podłączonych szablonów

Pobierz identyfikatory i nazwy szablonów podłączonych do hosta „10084”.

Żądanie:

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

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 mają podłączony szablon „10001” (Linux by Zabbix agent).

Żądanie:

{
    "jsonrpc": "2.0",
    "method": "host.get",
    "params": {
        "output": ["hostid", "name"],
        "templateids": "10001"
    },
    "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 inwentaryzacyjnych hosta

Pobierz hosty, które zawierają „Linux” w polu inwentaryzacyjnym hosta „OS”.

Żądanie:

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

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ą tag "host-name" równy "linux-server".

Żądanie:

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

Odpowiedź:

{
    "jsonrpc": "2.0",
    "result": [
        {
            "hostid": "10085",
            "tags": [
                {
                    "tag": "host-name",
                    "value": "linux-server",
                    "automatic": "0"
                },
                {
                    "tag": "os",
                    "value": "rhel-7",
                    "automatic": "0"
                }
            ]
        }
    ],
    "id": 1
}

Pobierz hosty, które mają te tagi nie tylko na poziomie hosta, ale także w swoich podłączonych nadrzędnych szablonach.

Żądanie:

{
    "jsonrpc": "2.0",
    "method": "host.get",
    "params": {
        "output": ["name"],
        "tags": [
            {
                "tag": "os",
                "value": "rhel-7",
                "operator": 1
            }
        ],
        "inheritedTags": true
    },
    "id": 1
}

Odpowiedź:

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

Pobierz hosty z wyłączeniem tych, które mają tag "component".

Żądanie:

{
    "jsonrpc": "2.0",
    "method": "host.get",
    "params": {
        "output": ["hostid"],
        "selectTags": "extend",
        "evaltype": 0,
        "tags": [
            {
                "tag": "component",
                "value": "",
                "operator": 5
            }
        ]
    },
    "id": 1
}

Odpowiedź:

{
    "jsonrpc": "2.0",
    "result": [
        {
            "hostid": "10084",
            "tags": [
                {
                    "tag": "class",
                    "value": "os",
                    "automatic": "0"
                },
                {
                    "tag": "target",
                    "value": "linux",
                    "automatic": "0"
                }
            ]
        },
        {
            "hostid": "10629",
            "tags": [
                {
                    "tag": "class",
                    "value": "application",
                    "automatic": "0"
                },
                {
                    "tag": "target",
                    "value": "browser",
                    "automatic": "0"
                }
            ]
        }
    ],
    "id": 1
}

Wyszukiwanie hosta za pomocą tagów i tagów szablonu

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

Żądanie:

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

Odpowiedź:

{
    "jsonrpc": "2.0",
    "result": [
        {
            "hostid": "10502",
            "name": "Desktop",
            "tags": [
                {
                    "tag": "host-name",
                    "value": "linux-server"
                },
                {
                    "tag": "os",
                    "value": "rhel-7"
                }
            ],
            "inheritedTags": [
                {
                    "tag": "class",
                    "value": "os"
                },
                {
                    "tag": "target",
                    "value": "linux"
                },
                {
                    "tag": "os",
                    "value": "rhel-7"
                }
            ]
        }
    ],
    "id": 1
}

Wyszukiwanie hostów według ważności problemu

Pobierz hosty, które mają problemy o ważności „Disaster”.

Żądanie:

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

Odpowiedź:

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

Pobierz hosty, które mają problemy o ważności „Average” i „High”.

Żądanie:

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

Odpowiedź:

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

Pobieranie pozycji hosta

Pobierz pozycje dla hosta „Zabbix server”. Żądanie jest ograniczone do właściwości pozycji itemid, name i status. Ze względu na duży rozmiar odpowiedzi w przykładzie pokazano tylko podzbiór pozycji.

Żądanie:

{
    "jsonrpc": "2.0",
    "method": "host.get",
    "params": {
        "output": ["hostid"],
        "selectItems": ["itemid","name","status"],
        "filter": {
            "host": [
                "Zabbix server"
            ]
        }
    },
    "id": 1
}

Odpowiedź:

{
  "jsonrpc": "2.0",
  "result": [
    {
      "hostid": "10084",
      "items": [
        {
          "itemid": "42227",
          "name": "Host name of Zabbix agent running",
          "status": "0"
        },
        {
          "itemid": "42237",
          "name": "Zabbix agent ping",
          "status": "0"
        },
        {
          "itemid": "42250",
          "name": "Version of Zabbix agent running",
          "status": "0"
        },
        {
          "itemid": "42251",
          "name": "Maximum number of open file descriptors",
          "status": "0"
        },
        {
          "itemid": "42252",
          "name": "Maximum number of processes",
          "status": "0"
        },
        {
          "itemid": "69869",
          "name": "Interface enp0s3: Inbound packets discarded",
          "status": "0"
        },
        {
          "itemid": "69870",
          "name": "Interface enp0s3: Inbound packets with errors",
          "status": "0"
        },
        {
          "itemid": "69871",
          "name": "Interface enp0s3: Bits received",
          "status": "0"
        },
        {
          "itemid": "69872",
          "name": "Interface enp0s3: Outbound packets discarded",
          "status": "0"
        },
        {
          "itemid": "69873",
          "name": "Interface enp0s3: Outbound packets with errors",
          "status": "0"
        },
        {
          "itemid": "69874",
          "name": "Interface enp0s3: Bits sent",
          "status": "0"
        },
        {
          "itemid": "42253",
          "name": "Number of processes",
          "status": "0"
        },
        {
          "itemid": "42254",
          "name": "Number of running processes",
          "status": "0"
        },
        {
          "itemid": "42255",
          "name": "System boot time",
          "status": "0"
        }
      ]
    }
  ],
  "id": 1
}

Zobacz także

Źródło

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