maintenance.create
Opis
object maintenance.create(object/array maintenances)
Ta metoda umożliwia tworzenie nowych konserwacji.
Ta metoda jest dostępna tylko dla typów użytkowników Admin i Super admin. Uprawnienia do wywołania metody można odebrać w ustawieniach roli użytkownika. Więcej informacji można znaleźć w sekcji Role użytkowników.
Parametry
(object/array) Okresy konserwacji do utworzenia.
Oprócz standardowych właściwości okresu konserwacji metoda przyjmuje następujące parametry.
| Parameter | Type | Description |
|---|---|---|
| groups | object/array | Grupy hostów, które mają zostać objęte okresem konserwacji. Grupy hostów mogą mieć zdefiniowaną wyłącznie właściwość groupid.Zachowanie parametru: - wymagany, jeśli nie ustawiono hosts |
| hosts | object/array | Hosty, które mają zostać objęte okresem konserwacji. Hosty mogą mieć zdefiniowaną wyłącznie właściwość hostid.Zachowanie parametru: - wymagany, jeśli nie ustawiono groups |
| triggers | object/array | Wyzwalacze, które mają zostać objęte okresem konserwacji. Wyzwalacze mogą mieć zdefiniowaną wyłącznie właściwość triggerid.Zachowanie parametru: - wymagany, jeśli nie ustawiono groups ani hosts- obsługiwany, jeśli maintenance_type=0 (z gromadzeniem danych) |
| event_names | object/array | Nazwy zdarzeń definiujące problemy, które mają zostać objęte okresem konserwacji. Zachowanie parametru: - obsługiwany, jeśli maintenance_type=0 (z gromadzeniem danych) |
| tags | object/array | Znaczniki problemów definiujące problemy, które mają zostać objęte okresem konserwacji. Zachowanie parametru: - obsługiwany, jeśli właściwość maintenance_type obiektu Maintenance jest ustawiona na „z gromadzeniem danych” |
| timeperiods | object/array | Okresy konserwacji. Zachowanie parametru: - wymagany |
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 utrzymania
Utwórz okres utrzymania ze zbieraniem danych dla grupy hostów o identyfikatorze „20” oraz z tagami problemu service:mysqld i error.
Musi być aktywny od 17.03.2026 do 17.03.2027, rozpoczynać się w każdą niedzielę o 18:00 i trwać godzinę.
{
"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
}
Odpowiedź:
{
"jsonrpc": "2.0",
"result": {
"maintenanceids": [
"3"
]
},
"id": 1
}
Tworzenie konserwacji ad hoc
Utwórz jednogodzinną konserwację ad hoc ze zbieraniem danych dla grupy hostów o identyfikatorze „4”, wyzwalacza o identyfikatorze „12345” oraz nazwy zdarzenia 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
}
Odpowiedź:
{
"jsonrpc": "2.0",
"result": {
"maintenanceids": [
"4"
]
},
"id": 1
}
Zobacz także
Źródło
CMaintenance::create() w ui/include/classes/api/services/CMaintenance.php.