maintenance.create
Descripción
object maintenance.create(object/array maintenances)
Este método le permite crear nuevos mantenimientos.
Este método solo está disponible para los tipos de usuario Admin y Super admin. Los permisos para llamar al método se pueden revocar en la configuración de roles de usuario. Consulte User roles para obtener más información.
Parámetros
(object/array) Mantenimientos que se crearán.
Además de las propiedades estándar de mantenimiento, el método acepta los siguientes parámetros.
| Parámetro | Tipo | Descripción |
|---|---|---|
| groups | object/array | Grupos de hosts que se incluirán en el mantenimiento. Los grupos de hosts deben tener definida únicamente la propiedad groupid.Comportamiento del parámetro: - obligatorio si no se establece hosts |
| hosts | object/array | Hosts que se incluirán en el mantenimiento. Los hosts deben tener definida únicamente la propiedad hostid.Comportamiento del parámetro: - obligatorio si no se establece groups |
| triggers | object/array | Triggers que se incluirán en el mantenimiento. Los triggers deben tener definida únicamente la propiedad triggerid.Comportamiento del parámetro: - obligatorio si no se establecen groups ni hosts- compatible si maintenance_type=0 (con recopilación de datos) |
| event_names | object/array | Nombres de eventos para definir los problemas que se incluirán en el mantenimiento. Comportamiento del parámetro: - compatible si maintenance_type=0 (con recopilación de datos) |
| tags | object/array | Etiquetas de problemas para definir los problemas que se incluirán en el mantenimiento. Comportamiento del parámetro: - compatible si maintenance_type del objeto Maintenance está establecido en "con recopilación de datos" |
| timeperiods | object/array | Períodos de tiempo del mantenimiento. Comportamiento del parámetro: - obligatorio |
Valores de retorno
(object) Devuelve un objeto que contiene los IDs de los mantenimientos creados bajo la propiedad maintenanceids. El orden de los IDs devueltos coincide con el orden de los mantenimientos enviados.
Ejemplos
Creación de un mantenimiento
Cree un mantenimiento con recopilación de datos para el grupo de hosts con ID "20" y con las etiquetas de problema service:mysqld y error.
Debe estar activo desde el 17.03.2026 hasta el 17.03.2027, aplicarse cada domingo a las 18:00 y durar una hora.
{
"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
}
Respuesta:
{
"jsonrpc": "2.0",
"result": {
"maintenanceids": [
"3"
]
},
"id": 1
}
Creación de un mantenimiento ad hoc
Cree un mantenimiento ad hoc de una hora con recopilación de datos para el grupo de hosts con ID "4", el trigger con ID "12345" y el nombre del evento Printer: ink low.
{
"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
}
Respuesta:
{
"jsonrpc": "2.0",
"result": {
"maintenanceids": [
"4"
]
},
"id": 1
}
Véase también
Fuente
CMaintenance::create() en ui/include/classes/api/services/CMaintenance.php.