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

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"
           },
           "auth": "70785d2b494a7302309b48afcdb3a401",
           "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.