object sla.update(object/array slaids)
这个方法运行更新已经存在的 SLA 条目。
这个方法只有 管理员 和 超级管理员 两个用户类型可以使用。 可以在用户角色设置中取消调用该方法的权限。 查看 用户角色获取更多信息。
(object/array)
更新 SLA 属性。
每个SLA必须定义 slaid
属性,所有其他属性都是可选的。只有传递的属性将被更新,所有其他属性将保持不变。
除了 标准的 SLA 属性,该方法还接收如下参数。
参数 | 类型 | 描述 |
---|---|---|
service_tags | array | SLA 服务标签 用于替换当前的SLA服务标签。 |
schedule | array | SLA 时间表 用于替换当前的时间表。 如果将参数指定为空,则会被解释为全天候(24x7)的计划。 |
excluded_downtimes | array | SLA 排除停机时间 用于替换当前的排除的停机时间。 |
(object)
在 slaids
属性下返回一个包含已更新的 SLA ID 的对象。
使ID为“5”的服务等级协议(SLA)针对NoSQL相关服务按月计算,而不改变其计划或排除的停机时间;设置服务等级目标(SLO)为95%。
请求:
{
"jsonrpc": "2.0",
"method": "sla.update",
"params": [
{
"slaid": "5",
"name": "NoSQL Database engines",
"slo": "95",
"period": 2,
"service_tags": [
{
"tag": "database",
"operator": "0",
"value": "redis"
},
{
"tag": "database",
"operator": "0",
"value": "mongodb"
}
]
}
],
"id": 1
}
响应:
将 ID 为 "5" 的 SLA 切换到 24x7 的排程。
请求:
响应:
添加 2022 年 4 月 6 日为期 4 小时的计划 RAM 升级停机时间, 同时保留(需要重新定义)先前存在的计划于 7 月 4 日进行的软件升级, 针对 ID 为 "5" 的 SLA。
请求:
{
"jsonrpc": "2.0",
"method": "sla.update",
"params": {
"slaid": "5",
"excluded_downtimes": [
{
"name": "软件版本升级推广",
"period_from": "1648760400",
"period_to": "1648764900"
},
{
"name": "RAM 升级",
"period_from": "1649192400",
"period_to": "1649206800"
}
]
},
"id": 1
}
响应:
CSla::update() 在 ui/include/classes/api/services/CSla.php。