Zabbix Documentation 4.0

3.04.04.24.4 (current)| In development:5.0 (devel)| Unsupported:1.82.02.22.43.23.4Guidelines

User Tools

Site Tools


Sidebar

zh:manual:api:reference:host:update

更新

描述

object host.update(object/array hosts)

该方法用来更新已存在的主机

参数

(object/array) 要更新的主机属性.

每个主机的hostid属性必须已定义过,其他属性为可选项.只会更新指定的属性,其他属性保持不变.另外,对于标准主机属性,此方法接受如下参数:

参数 类型 描述
groups 对象/数组 替换主机当前归属的组.

主机组的groupid必须已定义.
interfaces 对象/数组 替换当前主机接口.
inventory 对象 主机资产清单属性.
macros 对象/数组 替换当前用户宏.
templates 对象/数组 替换当前链接的模板. 模板没有传递仅删除链接.

模板必须已定义过templateid属性
templates_clear 对象/数组 从主机中删除模板链接并清除.

模板必须已定义过templateid属性.
相对于Zabbix前端,当namehost一致,更新host的时候不会自动更新name.两个属性需要明确的更新. 这两个属性都需要显式地更新.

返回值

(object)hostids属性中返回包含已更新主机ID对象.

示例

启用主机

启用主机,将status设置为0

请求:

{
    "jsonrpc": "2.0",
    "method": "host.update",
    "params": {
        "hostid": "10126",
        "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() in frontends/php/include/classes/api/services/CHost.php.