maintenance.create
Descrição
object maintenance.create(object/array maintenances)
Este método permite criar novas manutenções.
Este método está disponível apenas para tipos de usuário Admin e Super admin. As permissões para chamar o método podem ser revogadas nas configurações de função de usuário. Consulte Funções de usuário para obter mais informações.
Parâmetros
(object/array) Manutenções a serem criadas.
Além das propriedades padrão de manutenção, o método aceita os seguintes parâmetros.
| Parâmetro | Tipo | Descrição |
|---|---|---|
| groups | object/array | Grupos de hosts a serem colocados em manutenção. Os grupos de hosts devem ter apenas a propriedade groupid definida.Comportamento do parâmetro: - obrigatório se hosts não estiver definido |
| hosts | object/array | Hosts a serem colocados em manutenção. Os hosts devem ter apenas a propriedade hostid definida.Comportamento do parâmetro: - obrigatório se groups não estiver definido |
| triggers | object/array | Triggers a serem colocados em manutenção. Os triggers devem ter apenas a propriedade triggerid definida.Comportamento do parâmetro: - obrigatório se groups e hosts não estiverem definidos- suportado se maintenance_type=0 (com coleta de dados) |
| event_names | object/array | Nomes de eventos para definir os problemas a serem incluídos na manutenção. Comportamento do parâmetro: - suportado se maintenance_type=0 (com coleta de dados) |
| tags | object/array | Tags de problemas para definir os problemas a serem incluídos na manutenção. Comportamento do parâmetro: - suportado se maintenance_type do objeto Maintenance estiver definido como "com coleta de dados" |
| timeperiods | object/array | Períodos de tempo da manutenção. Comportamento do parâmetro: - obrigatório |
Valores de retorno
(object) Retorna um objeto contendo os IDs das manutenções criadas na propriedade maintenanceids. A ordem dos IDs retornados corresponde à ordem das manutenções passadas.
Exemplos
Criando uma manutenção
Crie uma manutenção com coleta de dados para o grupo de hosts com ID "20" e com as tags de problema service:mysqld e error.
Ela deve estar ativa de 17.03.2026 a 17.03.2027, entrar em vigor todos os domingos às 18:00 e durar uma 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
}
Resposta:
{
"jsonrpc": "2.0",
"result": {
"maintenanceids": [
"3"
]
},
"id": 1
}
Criando uma manutenção ad hoc
Crie uma manutenção ad hoc de uma hora com coleta de dados para o grupo de hosts com ID "4", o trigger com ID "12345" e o nome do 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
}
Resposta:
{
"jsonrpc": "2.0",
"result": {
"maintenanceids": [
"4"
]
},
"id": 1
}
Veja também
Origem
CMaintenance::create() em ui/include/classes/api/services/CMaintenance.php.