itemprototype.update

Описание

object itemprototype.update(объект/массив itemPrototypes)

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

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

Параметры

(object/array) Свойства прототипа элемента данных, которые необходимо обновить.

Свойство itemid должно быть определено для каждого прототипа элемента данных, все остальные свойства являются необязательными. Будут обновлены только переданные свойства, все остальные останутся без изменений.

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

Параметр Type Описание
preprocessing array Параметры предобработки прототипа элемента данных для замены текущих параметров предобработки.

Поведение параметра:
- только для чтения для унаследованных объектов
tags array Теги прототипа элемента данных.

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

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

Примеры

Изменение интерфейса прототипа элемента данных

Измените интерфейс узла сети, который будет использоваться обнаруженными элементами данных.

Запрос:

{
    "jsonrpc": "2.0",
    "method": "itemprototype.update",
    "params": {
        "itemid": "27428",
        "interfaceid": "132"
    },
    "id": 1
}

Ответ:

{
    "jsonrpc": "2.0",
    "result": {
        "itemids": [
            "27428"
        ]
    },
    "id": 1
}

Обновление прототипа зависимого элемента данных

Обновите прототип зависимого элемента данных, указав новый ID прототипа главного элемента данных. Допускаются только зависимости на одном и том же узле сети (шаблоне/правиле обнаружения), поэтому главный и зависимый элементы данных должны иметь одинаковые hostid и ruleid.

Запрос:

{
    "jsonrpc": "2.0",
    "method": "itemprototype.update",
    "params": {
        "master_itemid": "25570",
        "itemid": "189030"
    },
    "id": 1
}

Ответ:

{
    "jsonrpc": "2.0",
    "result": {
        "itemids": [
            "189030"
        ]
    },
    "id": 1
}

Обновление прототипа элемента данных HTTP agent

Измените поля запроса и удалите все пользовательские заголовки.

Запрос:

{
    "jsonrpc": "2.0",
    "method": "itemprototype.update",
    "params": {
        "itemid":"28305",
        "query_fields": [
            {
                "name": "random",
                "value": "qwertyuiopasdfghjklzxcvbnm"
            }
        ],
        "headers": []
    }
    "id": 1
}

Ответ:

{
    "jsonrpc": "2.0",
    "result": {
        "itemids": [
            "28305"
        ]
    },
    "id": 1
}

Обновление параметров предобработки элемента данных

Обновите прототип элемента данных с правилом предобработки элемента данных «Пользовательский множитель».

Запрос:

{
    "jsonrpc": "2.0",
    "method": "itemprototype.update",
    "params": {
        "itemid": "44211",
        "preprocessing": [
            {
                "type": 1,
                "params": "4",
                "error_handler": 2,
                "error_handler_params": "5"
            }
        ]
    },
    "id": 1
}

Ответ:

{
    "jsonrpc": "2.0",
    "result": {
        "itemids": [
            "44211"
        ]
    },
    "id": 1
}

Обновление прототипа элемента данных script

Обновите прототип элемента данных script другим скриптом и удалите ненужные параметры, которые использовались предыдущим скриптом.

Запрос:

{
    "jsonrpc": "2.0",
    "method": "itemprototype.update",
    "params": {
        "itemid": "23865",
        "parameters": [],
        "script": "Zabbix.log(3, 'Log test');\nreturn 1;"
    },
    "id": 1
}

Ответ:

{
    "jsonrpc": "2.0",
    "result": {
        "itemids": [
            "23865"
        ]
    },
    "id": 1
}

Источник

CItemPrototype::update() в ui/include/classes/api/services/CItemPrototype.php.