maintenance.create

Descrizione

object maintenance.create(object/array maintenances)

Questo metodo consente di creare nuove manutenzioni.

Questo metodo è disponibile solo per i tipi di utente Admin e Super admin. Le autorizzazioni per richiamare il metodo possono essere revocate nelle impostazioni dei ruoli utente. Per ulteriori informazioni, vedere Ruoli utente.

Parametri

(object/array) Manutenzioni da creare.

Oltre alle proprietà standard delle manutenzioni, il metodo accetta i seguenti parametri.

Parametro Tipo Descrizione
groups object/array Gruppi di host da inserire nella manutenzione.

I gruppi di host devono avere definita solo la proprietà groupid.

Comportamento del parametro:
- obbligatorio se hosts non è impostato
hosts object/array Host da inserire nella manutenzione.

Gli host devono avere definita solo la proprietà hostid.

Comportamento del parametro:
- obbligatorio se groups non è impostato
triggers object/array trigger da inserire nella manutenzione.

I trigger devono avere definita solo la proprietà triggerid.

Comportamento del parametro:
- obbligatorio se groups e hosts non sono impostati
- supportato se maintenance_type=0 (con raccolta dati)
event_names object/array Nomi degli eventi per definire i problemi da includere nella manutenzione.

Comportamento del parametro:
- supportato se maintenance_type=0 (con raccolta dati)
tags object/array Tag dei problemi per definire i problemi da includere nella manutenzione.

Comportamento del parametro:
- supportato se maintenance_type dell'oggetto Maintenance è impostato su "con raccolta dati"
timeperiods object/array Periodi di tempo della manutenzione.

Comportamento del parametro:
- obbligatorio

Valori restituiti

(object) Restituisce un oggetto contenente gli ID delle maintenance create nella proprietà maintenanceids. L'ordine degli ID restituiti corrisponde all'ordine delle maintenance passate.

Esempi

Creazione di una manutenzione

Creare una manutenzione con raccolta dati per il gruppo di host con ID "20" e con i tag dei problemi service:mysqld e error.
Deve essere attiva dal 17.03.2026 al 17.03.2027, entrare in vigore ogni domenica alle 18:00 e durare un'ora.

Richiesta:

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

Risposta:

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

Creazione di una manutenzione ad hoc

Crea una manutenzione ad hoc della durata di un'ora con raccolta dati per il gruppo di host con ID "4", il trigger con ID "12345" e il nome dell'evento Printer: ink low.

Richiesta:

{
    "jsonrpc": "2.0",
    "method": "maintenance.create",
    "params": {
        "name": "Manutenzione ad hoc",
        "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
}

Risposta:

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

Vedi anche

Fonte

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