object sla.getsli(object parameters)
Ta metoda pozwala na obliczenie danych wskaźnika poziomu usług (SLI) dla Service Level Agreement (SLA).
Metoda jest dostępna dla użytkowników dowolnego typu. Uprawnienia do wywołania metody można wyłączyć w ustawieniach ról użytkowników. Zobacz Role użytkowników aby uzyskać więcej informacji.
(object)
Parametry zawierające identyfikator SLA, okresy raportowania i opcjonalnie identyfikatory usług - do obliczenia SLI.
Parametr | Typ | Opis |
---|---|---|
slaid (wymagane) |
string | ID SLA, dla którego mają zostać zwrócone informacje o dostępności. |
period_from | integer | Data rozpoczęcia (włącznie) raportowania SLI. Dopuszczalne wartości: znacznik czasu. |
period_to | integer | Data zakończenia (wyłącznie) raportowania SLI. Dopuszczalne wartości: znacznik czasu. |
periods | array | Preferowana liczba okresów do raportowania. Dopuszczalne wartości: 1-100 |
serviceids | string/array | ID usług, dla których mają zostać zwrócone SLI. |
Poniższa tabela demonstruje rozmieszczenie zwróconych fragmentów okresów na podstawie kombinacji parametrów.
Zwracane okresy nie będą poprzedzać pierwszego dostępnego okresu na podstawie daty wejścia w życie SLA i nie będą przekraczać bieżącego okresu.
Parametry | Opis | ||
---|---|---|---|
period_from | period_to | periods | |
- | - | - | Zwróć ostatnie 20 okresów. |
- | - | określone | Zwróć ostatnie okresy określone przez parametr periods. |
- | określone | - | Zwróć ostatnie 20 okresów przed określoną datą period_to. |
- | określone | określone | Zwróć ostatnie okresy określone przez parametr periods przed określoną datą period_to. |
określone | - | - | Zwróć pierwsze 20 okresów rozpoczynających się od określonej daty period_from. |
określone | - | określone | Zwróć pierwsze okresy określone przez parametr periods rozpoczynające się od określonej daty period_from. |
określone | określone | - | Zwróć maksymalnie 100 okresów w określonym zakresie dat. |
określone | określone | określone | Zwróć okresy określone przez parametr periods w określonym zakresie dat. |
(object)
Zwraca wyniki obliczeń.
Właściwość | Typ | Opis |
---|---|---|
periods | array | Lista raportowanych okresów. Każdy raportowany okres jest reprezentowany jako obiekt składający się z: - period_from - Data rozpoczęcia raportowanego okresu (znacznik czasu). - period_to - Data zakończenia raportowanego okresu (znacznik czasu). Okresy są sortowane według pola period_from rosnąco. |
serviceids | array | Lista identyfikatorów usług w raportowanych okresach. Kolejność sortowania listy nie jest określona. Nawet jeśli parametr serviceids został przekazany do metody sla.getsli . |
sli | array | Dane SLI (jako dwuwymiarowa tablica) dla każdego raportowanego okresu i usługi. Indeks właściwości periods jest używany jako pierwsza wymiar tablicy sli .Indeks właściwości serviceids jest używany jako drugi wymiar tablicy sli . |
Dane SLI zwrócone dla każdego raportowanego okresu i usługi składają się z:
Właściwość | Typ | Opis |
---|---|---|
uptime | integer | Czas, który usługa spędziła w stanie OK w czasie przestoju zgodnie z harmonogramem, pomniejszony o wyłączone czasy przestoju. |
downtime | integer | Czas, który usługa spędziła w stanie nie OK w czasie przestoju zgodnie z harmonogramem, pomniejszony o wyłączone czasy przestoju. |
sli | float | SLI (procent całkowitego czasu działania), oparty na czasie działania i przestoju. |
error_budget | integer | Dopuszczalna niedostępność (w sekundach), oparty na SLI i SLO. |
excluded_downtimes | array | Tablica wyłączonych czasów przestoju w tym okresie raportowania. Każdy obiekt będzie zawierał następujące parametry: - name - Nazwa wyłączonego czasu przestoju. - period_from - Data i czas rozpoczęcia (włącznie) wyłączonego czasu przestoju. - period_to - Data i czas zakończenia (wyłącznie) wyłączonego czasu przestoju. Wyłączone czasy przestoju są sortowane według pola period_from rosnąco. |
Pobierz dane SLI dla usług o identyfikatorach "50", "60" i "70", które są powiązane z SLA o identyfikatorze "5". Pobierz dane dla 3 okresów rozpoczynających się od 1 listopada 2021 roku.
Zapytanie:
{
"jsonrpc": "2.0",
"method": "sla.getsli",
"params": {
"slaid": "5",
"serviceids": [
50,
60,
70
],
"periods": 3,
"period_from": "1635724800"
},
"auth": "038e1d7b1735c6a5436ee9eae095879e",
"id": 1
}
Odpowiedź:
{
"jsonrpc": "2.0",
"result": {
"periods": [
{
"period_from": 1635724800,
"period_to": 1638316800
},
{
"period_from": 1638316800,
"period_to": 1640995200
},
{
"period_from": 1640995200,
"period_to": 1643673600
}
],
"serviceids": [
50,
60,
70
],
"sli": [
[
{
"uptime": 1186212,
"downtime": 0,
"sli": 100,
"error_budget": 0,
"excluded_downtimes": [
{
"name": "Excluded Downtime - 1",
"period_from": 1637836212,
"period_to": 1638316800
}
]
},
{
"uptime": 1186212,
"downtime": 0,
"sli": 100,
"error_budget": 0,
"excluded_downtimes": [
{
"name": "Excluded Downtime - 1",
"period_from": 1637836212,
"period_to": 1638316800
}
]
},
{
"uptime": 1186212,
"downtime": 0,
"sli": 100,
"error_budget": 0,
"excluded_downtimes": [
{
"name": "Excluded Downtime - 1",
"period_from": 1637836212,
"period_to": 1638316800
}
]
}
],
[
{
"uptime": 1147548,
"downtime": 0,
"sli": 100,
"error_budget": 0,
"excluded_downtimes": [
{
"name": "Excluded Downtime - 1",
"period_from": 1638439200,
"period_to": 1639109652
}
]
},
{
"uptime": 1147548,
"downtime": 0,
"sli": 100,
"error_budget": 0,
"excluded_downtimes": [
{
"name": "Excluded Downtime - 1",
"period_from": 1638439200,
"period_to": 1639109652
}
]
},
{
"uptime": 1147548,
"downtime": 0,
"sli": 100,
"error_budget": 0,
"excluded_downtimes": [
{
"name": "Excluded Downtime - 1",
"period_from": 1638439200,
"period_to": 1639109652
}
]
}
],
[
{
"uptime": 1674000,
"downtime": 0,
"sli": 100,
"error_budget": 0,
"excluded_downtimes": []
},
{
"uptime": 1674000,
"downtime": 0,
"sli": 100,
"error_budget": 0,
"excluded_downtimes": []
},
{
"uptime": 1674000,
"downtime": 0,
"sli": 100,
"error_budget": 0,
"excluded_downtimes": []
}
]
]
},
"id": 1
}
CSla::getSli() w ui/include/classes/api/services/CSla.php