创建

描述

object sla.create(object/array SLAs)

这个方法可以创建新的 SLA 对象。

这个方法只有 管理员超级管理员 用户类型可用。在用户角色设置中可以撤销调用该方法的权限。查看 用户角色获取更多信息。

参数

(object/array) 创建 SLA 对象。

除了标准的 SLA 属性之外, 该方法还接受以下参数。

参数类型描述
service_tagsarray为 SLA 创建的SLA 服务标签

参数行为:
- 必填
schedulearray为 SLA 创建SLA 时间表
指定空参数将被解释为 24x7 的时间表。
默认: 24x7 时间表。
excluded_downtimesarray为 SLA 创建SLA 排除停机时间

返回值

(对象) 返回一个包含创建的 SLA 的 ID 的对象,这些 ID 在 slaids 属性下。返回的 ID 的顺序与传入 SLA 的顺序相匹配。

示例

创建一个 SLA

指示创建一个 SLA 条目: * 跟踪与 SQL 引擎相关的服务的正常运行时间; * 自定义时间表,所有工作日都包括在内,但不包括星期六的最后一个小时; * 生效时间为 2022年的最后一天; * 计划停机时间为 1 小时 15 分钟,从 7 月 4 日午夜开始; * 将启用SLA 每周报告计算; * 最低可接受的 SLO 为 99.9995%。

请求:

  1. {
  2. "jsonrpc": "2.0",
  3. "method": "sla.create",
  4. "params": [
  5. {
  6. "name": "Database Uptime",
  7. "slo": "99.9995",
  8. "period": "1",
  9. "timezone": "America/Toronto",
  10. "description": "Provide excellent uptime for main database engines.",
  11. "effective_date": 1672444800,
  12. "status": 1,
  13. "schedule": [
  14. {
  15. "period_from": 0,
  16. "period_to": 601200
  17. }
  18. ],
  19. "service_tags": [
  20. {
  21. "tag": "Database",
  22. "operator": "0",
  23. "value": "MySQL"
  24. },
  25. {
  26. "tag": "Database",
  27. "operator": "0",
  28. "value": "PostgreSQL"
  29. }
  30. ],
  31. "excluded_downtimes": [
  32. {
  33. "name": "Software version upgrade rollout",
  34. "period_from": "1648760400",
  35. "period_to": "1648764900"
  36. }
  37. ]
  38. }
  39. ],
  40. "id": 1
  41. }

响应:

  1. {
  2. "jsonrpc": "2.0",
  3. "result": {
  4. "slaids": [
  5. "5"
  6. ]
  7. },
  8. "id": 1
  9. }

来源

CSla::create() 在 ui/include/classes/api/services/CSla.php