创建

说明

object maintenance.create(object/array maintenances)

该方法允许创建维护模式。

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

参数

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

除了标准维护模式属性,该方法接受以下内容参数。

参数 类型 说明
groups object/array 将进行维护的主机组

主机组必须只定义groupid属性。

参数行为:
- 必需 如果没有设置hosts
hosts object/array 将进行维护的主机

主机必须只定义hostid属性。

参数行为:
- 必需 如果没有设置groups
timeperiods object/array 维护时间段

参数行为:
- 必需
tags object/array 问题标签.

定义必须抑制哪些问题。
如果没有给出标签,所有活动的维护主机问题都将被抑制。

参数行为:
- 支持 如果维护对象maintenance_type设置为"有数据采集"
groupids
(已弃用)
array 此参数已弃用,请改用groups
需要维护主机组ID。
hostids
(已弃用)
array 此参数已弃用,请改用hosts
需要维护主机ID。

返回值

(object)maintenanceids属性中返回一个包含所有已被创建的维护模式的对象的ID。返回的IDs的排序与传递的维护模式的IDs顺序一致。

案例

创建维护模式

为 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() in ui/include/classes/api/services/CMaintenance.php.