maintenance.create

描述

object maintenance.create(object/array maintenances)

此方法允许create新的维护周期.

此方法仅适用于管理员超级管理员用户类型. 调用该方法的权限可在用户角色设置中撤销. 更多信息请参阅User roles.

参数

(object/array) 维护以 create.

除了 维护 外,该方法还接受以下参数。

参数 数据类型 描述
groups object/array 主机 groups 将进入维护状态。

主机 组必须定义 groupid 属性。

必须指定 groupshosts 中的至少一个 object。
hosts object/array Hosts 将进入维护状态。

主机 必须定义 hostid 属性。

必须指定 groupshosts 中的至少一个 object。
timeperiods
(required)
object/array 维护 时间段
tags object/array 问题标签

定义必须抑制的问题。
如果未提供标签,将抑制所有处于维护 主机 状态的问题。
groupids
(deprecated)
array 此参数已弃用,请改用 groups
将进入维护状态的 主机 组ID。
hostids
(deprecated)
array 此参数已弃用,请改用 hosts
将进入维护状态的 主机 ID。

返回值

(object) 返回一个包含所创建维护期ID的object,这些ID存储在maintenanceids属性下。返回的ID顺序与传入的维护期顺序一致。

示例

创建维护周期

创建一个针对ID为"2"的主机组的数据收集维护周期,需包含问题标签service:mysqlderror。该维护周期从2013年1月22日生效至2014年1月22日,每周日18:00开始执行,持续1小时。

请求:

{
           "jsonrpc": "2.0",
           "method": "maintenance.create",
           "params": {
               "name": "Sunday maintenance",
               "active_since": 1358844540,
               "active_till": 1390466940,
               "tags_evaltype": 0,
               "groups": [
                   {"groupid": "2"}
               ],
               "timeperiods": [
                   {
                       "period": 3600,
                       "timeperiod_type": 3,
                       "start_time": 64800,
                       "every": 1,
                       "dayofweek": 64
                   }
               ],
               "tags": [
                   {
                       "tag": "service",
                       "operator": "0",
                       "value": "mysqld"
                   },
                   {
                       "tag": "error",
                       "operator": "2",
                       "value": ""
                   }
               ]
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 1
       }

响应:

{
           "jsonrpc": "2.0",
           "result": {
               "maintenanceids": [
                   "3"
               ]
           },
           "id": 1
       }

另请参阅

来源

CMaintenance::create() 位于 ui/include/classes/api/services/CMaintenance.php 文件中。