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 chiamare il metodo possono essere revocate nelle impostazioni del ruolo utente. Per ulteriori informazioni, vedere Ruoli utente.

Parametri

(object/array) Manutenzioni da creare.

Oltre alle proprietà standard della manutenzione, il metodo accetta i seguenti parametri.

Parameter Type Description
groups object/array Host groups che saranno sottoposti a manutenzione.

I host groups devono avere definita solo la proprietà groupid.

Comportamento del parametro:
- required se hosts non è impostato
hosts object/array Hosts che saranno sottoposti a manutenzione.

Gli hosts devono avere definita solo la proprietà hostid.

Comportamento del parametro:
- required se groups non è impostato
timeperiods object/array Periodi di tempo della manutenzione.

Comportamento del parametro:
- required
tags object/array Tag dei problemi.

Definisce quali problemi devono essere soppressi.
Se non vengono specificati tag, tutti i problemi degli host in manutenzione attiva verranno soppressi.

Comportamento del parametro:
- supported se maintenance_type dell'oggetto Maintenance è impostato su "with data collection"
groupids
(deprecated)
array Questo parametro è deprecato, usare invece groups.
ID dei host groups che saranno sottoposti a manutenzione.
hostids
(deprecated)
array Questo parametro è deprecato, usare invece hosts.
ID degli hosts che saranno sottoposti a manutenzione.

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 host con ID "2" e con i tag problema service:mysqld ed error. Deve essere attiva dal 17.03.2026 fino 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": "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
}

Risposta:

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

Vedi anche

Fonte

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