maintenance.create

描述

object maintenance.create(object/array maintenances)

此方法允许create新的维护。

此方法仅适用于AdminSuper admin用户类型。调用该方法的权限可以在用户角色设置中撤销。更多信息请参见User roles

参数

(object/array) 要创建的维护。

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

参数 数据类型 描述
groups object/array 将进行维护的Host groups

主机组必须仅定义了 groupid 属性。

参数行为
- 如果未设置 hosts,则为必填
hosts object/array 将进行维护的Hosts

主机必须仅定义了 hostid 属性。

参数行为
- 如果未设置 groups,则为必填
timeperiods object/array 维护时间段

参数行为
- 必填
tags object/array 问题标签

定义哪些问题需要被抑制。
如果未提供标签,则所有处于激活状态的维护主机问题将被抑制。

参数行为
- 如果维护maintenance_type 设置为“with data collection”,则支持
groupids
(deprecated)
array 此参数已弃用,请改用 groups
将进行维护的主机组的ID。
hostids
(deprecated)
array 此参数已弃用,请改用 hosts
将进行维护的主机的ID。

返回值

(object) 返回一个 object,其中包含在 maintenanceids 属性下列出的已创建维护的 ID。返回的 ID 顺序与传入的维护顺序一致。

示例

创建维护周期

为具有ID“2”的主机组创建一个维护,并进行数据收集,问题标签为service:mysqlderror。该维护必须从22.01.2013开始,直到22.01.2014结束,每周日生效,时间为18:00,持续一小时。

执行请求:

{
           "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": ""
                   }
               ]
           },
           "id": 1
       }

响应:

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

另请参阅

来源

CMaintenance::create() 在 ui/include/classes/api/services/CMaintenance.php 中。