host.update

Описание

объект host.update(объект/массив узлы сети)

Этот метод позволяет обновлять существующие узлы сети.

Параметры

(объект/массив) Свойства узлов сети, которые будут обновлены.

Свойство hostid должно быть указано по каждому узлу сети, все остальные свойства опциональны. Будут обновлены только переданные свойства, все остальные останутся неизменными.

В дополнение к стандартным свойствам узла сети, этот метод принимает следующие параметры.

Параметр Тип Описание
groups объект/массив Группы узлов сети, которые заменят текущие группы узлов сети в которые входят узлы сети.

У групп узлов сети должно быть задано свойство groupid.
interfaces объект/массив Интерфейсы узла сети, которые заменят текущие интерфейсы узла сети.
inventory объект Свойства инвентаризации узлов сети.
macros объект/массив Пользовательские макросы, которые заменят текущие макросы.
templates объект/массив Шаблоны, которые заменят присоединенные в настоящий момент шаблоны. Шаблоны, которые не переданы, только отсоединятся.

У шаблонов должно быть задано свойство templateid.
templates_clear объект/массив Шаблоны, которые отсоединятся и очистят узлы сети.

У шаблонов должно быть задано свойство templateid.

В отличие от Zabbix веб-интерфейса, когда name идентично host, обновление свойства host не означает автоматическое обновление name. Оба эти свойства необходимо обновить в явном виде.

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

(объект) Возвращает объект, который содержит ID обновленных узлов сети под свойством hostids.

Примеры

Активация узла сети

Активация мониторинга двух узлов, то есть изменение их состояния на значение 0.

Запрос:

{
           "jsonrpc": "2.0",
           "method": "host.update",
           "params": {
               "hostid": "10092",
               "status": 0
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 1
       }

Ответ:

{
           "jsonrpc": "2.0",
           "result": {
               "hostids": [
                   "10126"
               ]
           },
           "id": 1
       }

Отсоединение шаблонов

Отсоединение и очистка двух шаблонов с узла сети.

Запрос:

{
           "jsonrpc": "2.0",
           "method": "host.update",
           "params": {
               "hostid": "10126",
               "templates_clear": [
                   {
                       "templateid": "10124"
                   },
                   {
                       "templateid": "10125"
                   }
               ]
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 1
       }

Ответ:

{
           "jsonrpc": "2.0",
           "result": {
               "hostids": [
                   "10126"
               ]
           },
           "id": 1
       }

Обновление макросов узла сети

Замена всех макросов узла сети на два новых.

Запрос:

{
           "jsonrpc": "2.0",
           "method": "host.update",
           "params": {
               "hostid": "10126",
               "macros": [
                   {
                       "macro": "{$PASS}",
                       "value": "password"
                   },
                   {
                       "macro": "{$DISC}",
                       "value": "sda"
                   }
               ]
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 1
       }

Ответ:

{
           "jsonrpc": "2.0",
           "result": {
               "hostids": [
                   "10126"
               ]
           },
           "id": 1
       }

Обновление инвентаризации узла сети

Изменение режима инвентаризации и добавление местоположения

Запрос:

{
           "jsonrpc": "2.0",
           "method": "host.update",
           "params": {
               "hostid": "10387",
               "inventory_mode": 0,
               "inventory": {
                   "location": "Latvia, Riga"
               }
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 1
       }

Ответ:

{
           "jsonrpc": "2.0",
           "result": {
               "hostids": [
                   "10387"
               ]
           },
           "id": 2
       }

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

Исходный код

CHost::update() в frontends/php/include/classes/api/services/CHost.php.