maintenance.create

説明

object maintenance.create(object/array maintenances)

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

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

パラメータ

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

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

パラメータ 型 説明
groups object/array メンテナンスの対象にするホストグループ。

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

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

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

パラメータの動作:
- groupsが設定されていない場合は必須
triggers object/array メンテナンスの対象にするトリガー。

トリガーには、triggeridプロパティのみを定義する必要があります。

パラメータの動作:
- groupsとhostsが設定されていない場合は必須
- maintenance_type=0(データ収集あり)の場合にサポート
event_names object/array メンテナンスの対象にする障害を定義するイベント名。

パラメータの動作:
- maintenance_type=0(データ収集あり)の場合にサポート
tags object/array メンテナンスの対象にする障害を定義する障害タグ。

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

パラメータの動作:
- 必須

戻り値

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

例

メンテナンスの作成

ID「20」のホストグループに対してデータ収集を行い、障害タグ service:mysqld および error を指定したメンテナンスを作成します。
2026年3月17日から2027年3月17日まで有効で、毎週日曜日の18:00に開始し、1時間継続する必要があります。

リクエスト:

{
    "jsonrpc": "2.0",
    "method": "maintenance.create",
    "params": {
        "name": "Sunday maintenance",
        "active_since": 1773720240,
        "active_till": 1805256240,
        "tags_evaltype": 0,
        "groups": [
            {"groupid": "20"}
        ],
        "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
}

アドホックメンテナンスの作成

IDが「4」のホストグループ、IDが「12345」のトリガー、およびイベント名 Printer: ink low を対象に、データ収集を行う1時間のアドホックメンテナンスを作成します。

リクエスト:

{
    "jsonrpc": "2.0",
    "method": "maintenance.create",
    "params": {
        "name": "Ad-hoc maintenance",
        "active_since": 1792057740,
        "active_till": 1792061340,
        "tags_evaltype": 0,
        "groups": [
            {"groupid": "4"}
        ],
        "triggers": [
            {"triggerid": "12345"}
        ],
        "timeperiods": [
            {
                "period": 3600,
                "timeperiod_type": 0,
                "start_date": 1792057740
            }
        ],
        "event_names": [
            {
                "operator": "2",
                "value": "Printer: ink low"
            }
        ]
    },
    "id": 1
}

レスポンス:

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

関連項目

ソース

CMaintenance::create() in ui/include/classes/api/services/CMaintenance.php.