Это перевод страницы документации с английского языка. Помогите нам сделать его лучше.

host.get

Описание

integer/array host.get(параметры объекта)

Метод позволяет получить хосты по заданным параметрам.

Этот метод доступен пользователям любого типа. Разрешения на вызов метода можно отозвать в настройках ролей пользователя. Дополнительную информацию см. в разделе Роли пользователей.

Параметры

(object) Параметры, определяющие желаемый результат.

Метод поддерживает следующие параметры.

Параметр Тип Описание
groupids string/array Возвращает только узлы, принадлежащие заданным группам.
dserviceids string/array Возвращает только хосты, связанные с данными обнаруженными службами.
graphids string/array Возвращает только те хосты, которые имеют заданные графы.
hostids string/array Возвращает только хосты с заданными идентификаторами хостов.
httptestids string/array Возвращает только те хосты, которые имеют заданные веб-проверки.
interfaceids string/array Возвращает только те хосты, которые используют заданные интерфейсы.
itemids string/array Вернуть только те хосты, у которых есть указанные элементы.
maintenanceids string/array Возвращает только те хосты, на которые распространяется данное обслуживание.
monitored_hosts flag Возвращать только отслеживаемые хосты.
proxy_hosts flag Возвращать только прокси.
proxyids string/array Возвращает только те хосты, которые отслеживаются указанными прокси.
template_hosts flag Возвращает как хосты, так и шаблоны.
templateids string/array Возвращает только хосты, связанные с заданными шаблонами.
triggerids string/array Возвращает только те хосты, у которых есть заданные триггеры.
with_items flag Возвращает только хосты, у которых есть элементы.

Переопределяет параметры with_monitored_items и with_simple_graph_items.
with_item_prototypes flag Возвращает только хосты, у которых есть прототипы элементов.

Переопределяет параметр with_simple_graph_item_prototypes.
with_simple_graph_item_prototypes flag Возвращает только хосты, имеющие прототипы элементов, которые разрешены для создания и имеют числовой тип информации.
with_graphs flag Возвращает только хосты, у которых есть графы.
with_graph_prototypes flag Возвращает только хосты, у которых есть прототипы графов.
with_httptests flag Возвращать только хосты, у которых есть веб-проверки.

Переопределяет параметр with_monitored_httptests.
with_monitored_httptests flag Возвращает только хосты, на которых включена веб-проверка.
with_monitored_items flag Возвращает только хосты, для которых включены элементы.

Переопределяет параметр with_simple_graph_items.
with_monitored_triggers flag Возвращает только хосты, для которых включены триггеры. Все элементы, используемые в триггере, также должны быть включены.
with_simple_graph_items flag Возвращает только хосты, у которых есть элементы с числовым типом информации.
with_triggers flag Возвращает только хосты с триггерами.

Переопределяет параметр with_monitored_triggers.
withProblemsSuppressed boolean Возвращает хосты, на которых были подавлены проблемы.

Возможные значения:
null – (по умолчанию) все хосты;
true – только хосты с подавленными проблемами;
false - только хосты с неподавленными проблемами.
evaltype integer Правила поиска тегов.

Возможные значения:
0 - (по умолчанию) И/Или;
2 - Или.
severities integer/array Возвращает хосты, у которых есть проблемы только с заданным уровнем важности. Применяется, только если проблемный объект является триггером.
tags array/object Возвращает только хосты с заданными тегами. Точное совпадение по тегу и поиск с учетом или без учета регистра по значению тега в зависимости от значения оператора.
Формат: [{"tag": "<tag>", "value": "<value>", " operator": "<оператор>"}, ...].
Пустой массив возвращает все хосты.

Возможные значения оператора:
0 - (по умолчанию) Содержит;
1 - Равно;
2 - Не похоже;
3 - Не равно
4 - Существует;
5 - Не существует.
inheritedTags boolean Возвращает хосты, которым присвоены теги, также во всех связанных с ними шаблонах. По умолчанию:

Возможные значения:
true – связанные шаблоны также должны иметь заданные теги;
false – (по умолчанию) теги связанных шаблонов игнорируются.
selectDiscoveries query Возвращает свойство discoveries с правилами низкоуровневого обнаружения хоста.

Поддерживает count.
selectDiscoveryRule query Возвращает свойство discoveryRule с правилом низкоуровневого обнаружения, которое создало хост (из прототипа хоста в мониторинге VMware).
selectGraphs query Возвращает свойство graphs с основными графами.

Поддерживает count.
selectGroups query Возвращает свойство groups с данными групп хостов, к которым принадлежит хост.
selectHostDiscovery query Возвращает свойство hostDiscovery с данными объекта обнаружения хоста.

Объект обнаружения хоста связывает обнаруженный хост с прототипом хоста или прототипы хоста с правилом LLD и имеет следующие свойства:< br>host - (string) хост прототипа хоста;
hostid - (string) идентификатор обнаруженного хоста или прототипа хоста;
parent_hostid - (string) ID прототипа хоста, из которого был создан хост;
parent_itemid - (string) ID правила LLD, создавшего обнаруженный хост;
lastcheck - (timestamp) время, когда хост был обнаружен в последний раз;
ts_delete - (timestamp) время, когда хост, который больше не обнаружен, будет удален.
selectHttpTests запрос Возвращает свойство httpTests со сценариями хост-сайта.

Поддерживает count.
selectInterfaces query Возвращает свойство interfaces с хост-интерфейсами.

Поддерживает count.
selectInventory query Возвращает свойство inventory с данными инвентаризации узла.
selectItems query Возвращает свойство items с элементами хоста.

Поддерживает count.
selectMacros query Возвращает свойство macros с макросами хоста.
selectParentTemplates query Возвращает свойство parentTemplates с шаблонами, с которыми связан хост.

Поддерживает count.
selectDashboards query Возвращает свойство dashboards.

Поддерживает count.
selectTags query Возвращает свойство tags с тегами хоста.
selectInheritedTags query Возвращает свойство inheritedTags с тегами, которые есть во всех шаблонах, связанных с хостом.
selectTriggers query Возвращает свойство triggers с триггерами хоста.

Поддерживает count.
selectValueMaps query Возвращает свойство valuemaps с картами значений хоста.
filter object Возвращает только те результаты, которые точно соответствуют заданному фильтру.

Принимает массив, где ключами являются имена свойств, а значениями являются либо одно значение, либо массив значений для сопоставления.

Позволяет фильтровать по свойствам интерфейса.
limitSelects integer Ограничивает количество записей, возвращаемых вложенными выборками.

Применяется к следующим вложенным выборкам:
selectParentTemplates — результаты будут отсортированы по узлу;
selectInterfaces;< br>selectItems – сортировка по имени;
selectDiscoveries – сортировка по имени;
selectTriggers – сортировка по описанию;
selectGraphs – сортировка по имени ;
selectDashboards – отсортировано по названию.
search object Возвращает результаты, соответствующие заданному поиску с подстановочными знаками.

Принимает массив, где ключами являются имена свойств, а значениями являются строки для поиска. Если дополнительные параметры не указаны, будет выполнен поиск LIKE "%…%".

Позволяет искать по свойствам интерфейса. Работает только с текстовыми полями.
searchInventory object Возвращает только те хосты, данные инвентаризации которых соответствуют заданному поиску с подстановочными знаками.

На этот параметр влияют те же дополнительные параметры, что и на search.
sortfield string/array Сортировать результат по заданным свойствам.

Возможные значения: hostid, host, name, status.
countOutput boolean Эти параметры являются общими для всех методов get и подробно описаны в справочном комментарии.
editable boolean
excludeSearch boolean
limit integer
output query
preservekeys boolean
searchByAny boolean
searchWildcardsEnabled boolean
sortorder string/array
startSearch boolean

Возвращаемые значения

(integer/array) Возвращает либо:

  • массив объектов;
  • количество извлеченных объектов, если параметр countOutput был использован.

Примеры

Получение данных по имени

Получить все данные о двух хостах с именами «Zabbix server» и «Linux server".

Запрос:

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

Ответ:

{
          "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
       }

Получение групп хостов

Получить имена хостов групп, членом которых является "Zabbix сервер", но не сведения о самом хосте.

Запрос:

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

Ответ:

{
          "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
       }

Получение связанных шаблонов

Получите идентификаторы и имена шаблонов, связанных с хостом «10084».

Запрос:

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

Ответ:

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

Retrieving hosts by template

Retrieve hosts that have the "10001" (Linux by Zabbix agent) template linked to them.

Request:

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

Response:

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

Поиск по данным инвентаризации хоста

Получите хосты, которые содержат «Linux» в поле «ОС» инвентаризации хостов.

Запрос:

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

Ответ:

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

Поиск по тегам хоста

Получить хосты, у которых тег «Имя хоста» равен «Linux server».

Запрос:

{
          "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
       }

Ответ:

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

Получить хосты, которые имеют эти теги не только на уровне хоста, но и в связанных с ними родительских шаблонах.

Запрос:

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

Ответ:

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

Поиск хоста с тегами и тегами шаблона

Получить хост с тегами и всеми тегами, связанными с родительскими шаблонами.

Запрос:

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

Ответ:

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

Поиск хостов по серьезности проблемы

Получить хосты, у которых есть проблемы «катастрофа» (Disaster).

Запрос:

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

Ответ:

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

Получить хосты с проблемами уровня "средние" (Average) и "высокие" (High).

Запрос:

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

Ответ:

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

Смотрите также

Источник

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