maintenance.create
Description
object maintenance.create(object/array maintenances)
Cette méthode vous permet de créer de nouvelles maintenances.
Cette méthode est disponible uniquement pour les types d'utilisateur Admin et Super admin. Les autorisations d'appel de la méthode peuvent être révoquées dans les paramètres du rôle utilisateur. Voir Rôles d'utilisateur pour plus d'informations.
Paramètres
(object/array) Maintenances à créer.
En plus des propriétés standard des maintenances, la méthode accepte les paramètres suivants.
| Parameter | Type | Description |
|---|---|---|
| groups | object/array | Groupes d’hôtes à placer en maintenance. Les groupes d’hôtes doivent avoir uniquement la propriété groupid définie.Comportement du paramètre : - obligatoire si hosts n’est pas défini |
| hosts | object/array | Hôtes à placer en maintenance. Les hôtes doivent avoir uniquement la propriété hostid définie.Comportement du paramètre : - obligatoire si groups n’est pas défini |
| triggers | object/array | Déclencheurs à placer en maintenance. Les déclencheurs doivent avoir uniquement la propriété triggerid définie.Comportement du paramètre : - obligatoire si groups et hosts ne sont pas définis- pris en charge si maintenance_type=0 (avec collecte de données) |
| event_names | object/array | Noms d’événements permettant de définir les problèmes à placer en maintenance. Comportement du paramètre : - pris en charge si maintenance_type=0 (avec collecte de données) |
| tags | object/array | Étiquettes de problèmes permettant de définir les problèmes à placer en maintenance. Comportement du paramètre : - pris en charge si maintenance_type de l’objet Maintenance est défini sur « avec collecte de données » |
| timeperiods | object/array | Périodes de maintenance. Comportement du paramètre : - obligatoire |
Valeurs retournées
(object) Retourne un objet contenant les identifiants des maintenance créées sous la propriété maintenanceids. L'ordre des ID retournés correspond à l'ordre des maintenances transmises.
Exemples
Création d'une maintenance
Créez une maintenance avec collecte des données pour le groupe de hôtes ayant l'ID « 20 », et avec les tags de problème service:mysqld et error.
Elle doit être active du 17.03.2026 au 17.03.2027, prendre effet chaque dimanche à 18:00 et durer une heure.
Requête :
{
"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
}
Réponse :
{
"jsonrpc": "2.0",
"result": {
"maintenanceids": [
"3"
]
},
"id": 1
}
Création d'une maintenance ad hoc
Créez une maintenance ad hoc d'une heure avec collecte des données pour le groupe d'hôtes dont l'ID est « 4 », le déclencheur dont l'ID est « 12345 » et le nom d'événement Printer: ink low.
Requête :
{
"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
}
Réponse :
{
"jsonrpc": "2.0",
"result": {
"maintenanceids": [
"4"
]
},
"id": 1
}
Voir aussi
Source
CMaintenance::create() dans ui/include/classes/api/services/CMaintenance.php.