On this page
discoveryruleprototype.update
描述
object discoveryruleprototype.update(object/array lldRules)
此方法用于更新现有的 LLD 规则原型。
请注意,对已发现原型的更新是受限的。
此方法仅适用于 Admin 和 Super admin 用户类型。调用该方法的权限可在用户角色设置中被撤销。更多信息请参见 用户角色。
参数
(object/array) 要更新的 LLD 规则原型属性。
必须为每个 LLD 规则原型定义 itemid 属性,其他所有属性均为可选。
只有传入的属性会被更新,其他所有属性将保持不变。
除了标准 LLD 规则原型属性外, 该方法还接受以下参数。
| 参数 | 类型 | 描述 |
|---|---|---|
| filter | object | 用于替换现有过滤器的 LLD 规则原型过滤器。 |
| preprocessing | object/array | 用于替换现有预处理选项的 LLD 规则原型预处理 选项。 参数行为: - 对继承对象为 只读 |
| lld_macro_paths | object/array | 用于替换现有 lld_macro_path 选项的 LLD 规则原型 lld_macro_path 选项。 参数行为: - 对继承对象为 只读 |
| overrides | object/array | 用于替换现有覆盖选项的 LLD 规则原型覆盖 选项。 参数行为: - 对继承对象为 只读 |
返回值
(object) 返回一个对象,其中在 itemids 属性下包含已更新的 LLD 规则原型的 ID。
示例
更新 LLD 规则原型预处理选项
使用 JSONPath 预处理规则更新一个 LLD 规则原型。 请求:
{
"jsonrpc": "2.0",
"method": "discoveryruleprototype.update",
"params": {
"itemid": "47253",
"preprocessing": [
{
"type": 12,
"params": "$.tablespaces",
"error_handler": 1
}
]
},
"id": 1
}
响应:
{
"jsonrpc": "2.0",
"result": {
"itemids": [
"47253"
]
},
"id": 1
}
源代码
位于 ui/include/classes/api/services/CDiscoveryRulePrototype.php 中的 CDiscoveryRulePrototype::update()。