maintenance.create
Opis
object maintenance.create(object/array maintenances)
Ta metoda pozwala na tworzenie nowych konserwacji.
Ta metoda jest dostępna tylko dla użytkowników typu Admin i Super admin. Uprawnienia do wywołania metody można odwołać w ustawieniach roli użytkownika. Więcej informacji można znaleźć w User roles.
Parametry
(object/array) Okna konserwacyjne do utworzenia.
Oprócz standardowych właściwości okna konserwacyjnego, metoda akceptuje następujące parametry.
| Parametr | Typ | Opis |
|---|---|---|
| groups | object/array | Grupy hostów, które zostaną objęte konserwacją. Grupy hostów muszą mieć zdefiniowaną tylko właściwość groupid.Zachowanie parametru: - wymagany, jeśli hosts nie jest ustawione |
| hosts | object/array | Hosty, które zostaną objęte konserwacją. Hosty muszą mieć zdefiniowaną tylko właściwość hostid.Zachowanie parametru: - wymagany, jeśli groups nie jest ustawione |
| timeperiods | object/array | Okresy czasu konserwacji. Zachowanie parametru: - wymagany |
| tags | object/array | Tagi problemów. Określają, które problemy mają być tłumione. Jeśli nie podano tagów, wszystkie problemy hostów z aktywnej konserwacji będą tłumione. Zachowanie parametru: - obsługiwany, jeśli maintenance_type obiektu Maintenance object jest ustawione na "with data collection" |
Wartości zwracane
(object) Zwraca obiekt zawierający identyfikatory utworzonych
konserwacji w ramach właściwości maintenanceids. Kolejność
zwróconych identyfikatorów odpowiada kolejności przekazanych konserwacji.
Przykłady
Tworzenie okresu konserwacji
Utwórz okres konserwacji ze zbieraniem danych dla grupy hostów o ID „2” oraz z tagami problemów service:mysqld i error. Musi on być aktywny od 17.03.2026 do 17.03.2027, wchodzić w życie w każdą niedzielę o 18:00 i trwać jedną godzinę.
{
"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
}
Odpowiedź:
{
"jsonrpc": "2.0",
"result": {
"maintenanceids": [
"3"
]
},
"id": 1
}
Zobacz także
Źródło
CMaintenance::create() w ui/include/classes/api/services/CMaintenance.php.