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