批量更新
描述
object host.massupdate(对象参数)
该方法可以在多台主机上同时替换或移除相关对象和更新属性。
这个方法仅允许 管理员 和 超级管理员 用户类型。可以在用户角色中撤销调用方法的权限设置。详情参考 用户角色
参数
(对象)
参数包含要更新的主机id和应该更新的属性。
除了标准主机属性以外,此方法可以接受如下参数:
参数 | 类 | 描述 |
---|---|---|
hosts (必填) | 对象/数组 | 待更新的主机 。 主机必须定义了 hostid 属性。 |
groups | 对象/数组 | 更换主机所属的主机组。 主机组必须定义了 groupid 属性。 |
interfaces | 对象/数组 | 主机接口 用于替换给定主机上的当前主机接口。 |
inventory | 对象 | 主机清单属性。 主机清单模式不能使用 inventory 参数更新, 事情 inventory_mode 代替。 |
macros | 对象/数组 | 用户宏 替换给定主机上的当前用户宏。 |
templates | 对象/数组 | 模板替换给定主机上当前链接的模板。 模板必须定义了 templateid 属性。 |
templates_clear | 对象/数组 | 模板 断开和清除给定主机的链接。 模板必须定义了 templateid 属性。 |
返回值
(对象)
返回一个对象,该对象包含 hostids
属性下更新的主机的id。
示例
启用多个主机
启用监控两个主机,将status设置为0
请求:
{
"jsonrpc": "2.0",
"method": "host.massupdate",
"params": {
"hosts": [
{
"hostid": "69665"
},
{
"hostid": "69666"
}
],
"status": 0
},
"auth": "038e1d7b1735c6a5436ee9eae095879e",
"id": 1
}
响应:
{
"jsonrpc": "2.0",
"result": {
"hostids": [
"69665",
"69666"
]
},
"id": 1
}
另请参阅
源代码
CHost::massUpdate() in ui/include/classes/api/services/CHost.php.