创建

说明

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 设置为“采集数据”时,支持

返回值

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

案例

创建维护

为 ID 为“2”的主机组创建一个带数据收集的维护,并带有 问题标签 service:mysqlderror。该维护必须从 17.03.2026 持续到 17.03.2027,每周日 18:00 生效,持续 一小时。

请求

{
    "jsonrpc": "2.0",
    "method": "maintenance.create",
    "params": {
        "name": "Sunday maintenance",
        "active_since": 1773720240,
        "active_till": 1805256240,
        "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.