maintenance.create

Beschreibung

object maintenance.create(object/array maintenances)

Diese Methode ermöglicht es Ihnen, neue Wartungen zu erstellen.

Diese Methode ist nur für die Benutzertypen Admin und Super admin verfügbar. Die Berechtigung zum Aufruf der Methode kann in den Einstellungen der Benutzerrolle widerrufen werden. Weitere Informationen finden Sie unter Benutzerrollen.

Parameter

(object/array) Wartungen, die erstellt werden sollen.

Zusätzlich zu den Standard-Wartungseigenschaften akzeptiert die Methode die folgenden Parameter.

Parameter Type Beschreibung
groups object/array Hostgruppen, die in die Wartung aufgenommen werden sollen.

Für die Hostgruppen darf nur die Eigenschaft groupid definiert sein.

Parameterverhalten:
- erforderlich, wenn hosts nicht gesetzt ist
hosts object/array Hosts, die in die Wartung aufgenommen werden sollen.

Für die Hosts darf nur die Eigenschaft hostid definiert sein.

Parameterverhalten:
- erforderlich, wenn groups nicht gesetzt ist
triggers object/array Auslöser, die in die Wartung aufgenommen werden sollen.

Für die Auslöser darf nur die Eigenschaft triggerid definiert sein.

Parameterverhalten:
- erforderlich, wenn groups und hosts nicht gesetzt sind
- unterstützt, wenn maintenance_type=0 (mit Datensammlung)
event_names object/array Ereignisnamen, um Probleme zu definieren, die in die Wartung aufgenommen werden sollen.

Parameterverhalten:
- unterstützt, wenn maintenance_type=0 (mit Datensammlung)
tags object/array Problem-Tags, um Probleme zu definieren, die in die Wartung aufgenommen werden sollen.

Parameterverhalten:
- unterstützt, wenn maintenance_type des Wartungsobjekts auf „mit Datensammlung“ gesetzt ist
timeperiods object/array Wartungs-zeitintervalle.

Parameterverhalten:
- erforderlich

Rückgabewerte

(object) Gibt ein Objekt zurück, das die IDs der erstellten Maintenances unter der Eigenschaft maintenanceids enthält. Die Reihenfolge der zurückgegebenen IDs entspricht der Reihenfolge der übergebenen Maintenances.

Beispiele

Erstellen einer Wartung

Erstellen Sie eine Wartung mit Datensammlung für die Hostgruppe mit der ID „20“ sowie mit den Problem-Tags service:mysqld und error.
Sie muss vom 17.03.2026 bis zum 17.03.2027 aktiv sein, jeden Sonntag um 18:00 Uhr in Kraft treten und eine Stunde dauern.

Anfrage:

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

Antwort:

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

Ad-hoc-Wartung erstellen

Erstellen Sie eine einstündige Ad-hoc-Wartung mit Datensammlung für die Hostgruppe mit der ID „4“, den Auslöser mit der ID „12345“ und den Ereignisnamen Printer: ink low.

Anfrage:

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

Antwort:

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

Siehe auch

Quelle

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