maintenance.create

説明

object maintenance.create(object/array maintenances)

このメソッドでは、新しいメンテナンスを作成できます。

このメソッドは、Admin および Super admin の ユーザータイプでのみ利用できます。メソッドを呼び出す権限は、ユーザーロールの 設定で取り消すことができます。詳細は、ユーザーロール を参照してください。

パラメータ

(object/array) 作成するメンテナンス。

標準のメンテナンスプロパティに加えて、このメソッドは以下の パラメータを受け付けます。

Parameter Type Description
groups object/array メンテナンス対象となるホストグループ

ホストグループでは、groupid プロパティのみを定義する必要があります。

パラメータの動作:
- hosts が設定されていない場合は 必須
hosts object/array メンテナンス対象となるホスト

ホストでは、hostid プロパティのみを定義する必要があります。

パラメータの動作:
- groups が設定されていない場合は 必須
timeperiods object/array メンテナンスの期間

パラメータの動作:
- 必須
tags object/array 障害タグ

どの障害を抑制するかを定義します。
タグが指定されていない場合、アクティブなメンテナンス中のホストのすべての障害が抑制されます。

パラメータの動作:
- メンテナンスオブジェクトmaintenance_type が「データ収集あり」に設定されている場合に サポート

戻り値

(object) maintenanceidsプロパティの下で作成されたメンテナンスのIDを含むオブジェクトを返します。 返されるIDの順序は、渡されたメンテナンスの順序と一致します。

メンテナンスの作成

ID "2" のホストグループに対し、データ収集を伴うメンテナンスを作成します。問題タグ service:mysqld および error を対象とします。メンテナンスは 17.03.2026 から 17.03.2027 まで有効で、毎週日曜日の 18:00 に開始し、1 時間継続します。

リクエスト:

{
    "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.