You are viewing documentation for the development version, it may be incomplete.
Join our translation project and help translate Zabbix documentation into your native language.

sla.getsli

Beschrijving

object sla.getsli(object parameters)

Deze methode maakt het mogelijk om de gegevens voor de Service Level Indicator (SLI) te berekenen.

Deze methode is beschikbaar voor gebruikers van elk type. Toestemming om de methode op te roepen kan worden ingetrokken in de instellingen van gebruikersrollen. Zie Gebruikersrollen voor meer informatie.

Parameters

(object) Parameters met de SLA-ID, rapportageperiodes en, optioneel, de IDs van de services - om de SLI voor te berekenen.

Parameter Type Beschrijving
slaid string ID's van services om beschikbaarheidsinformatie voor op te halen.

Gedrag van de parameter:
- verplicht
period_from timestamp Startdatum (inclusief) voor het rapporteren van de SLI voor.

Mogelijke waarden: timestamp.
period_to timestamp Einddatum (exclusief) voor het rapporteren van de SLI voor.

Mogelijke waarden: timestamp.
periods array Voorkeursaantal perioden om te rapporteren.

Mogelijke waarden: 1-100
serviceids string/array ID's van services om de SLI voor op te halen.

Indeling van perioden

Het volgende toont de ordening van teruggegeven periodedelen gebaseerd op combinaties van parameters.

Parameters Beschrijving
period_from period_to periods
- - - De laatste 20 perioden (inclusief de huidige periode), maar niet voorbij de eerste beschikbare periode op basis van de ingangsdatum van de SLA.
- - gespecificeerd De laatste perioden gespecificeerd door de periods parameter.
- gespecificeerd - De laatste 20 perioden voor de gespecificeerde datum, maar niet voorbij de eerste beschikbare periode op basis van de ingangsdatum van de SLA.
- gespecificeerd gespecificeerd De laatste perioden gespecificeerd door de periods parameter voor de gespecificeerde datum.
gespecificeerd - - De eerste 20 perioden (inclusief de huidige periode), maar niet voorbij de huidige periode.
gespecificeerd - gespecificeerd De eerste perioden gespecificeerd door de periods parameter, beginnend op de gespecificeerde datum.
gespecificeerd gespecificeerd - Perioden binnen het gespecificeerde datumbereik, maar niet meer dan 100 en niet voorbij de eerste beschikbare periode op basis van de ingangsdatum van de SLA.
gespecificeerd gespecificeerd gespecificeerd Perioden binnen het gespecificeerde datumbereik, maar niet meer dan het gespecificeerde aantal perioden en niet voorbij de eerste beschikbare periode op basis van de ingangsdatum van de SLA.

Retourwaarden

(object) Geeft de resultaten van de berekening weer.

Eigenschap Type Beschrijving
perioden array Lijst van gerapporteerde perioden.

Elke gerapporteerde periode wordt weergegeven als een object bestaande uit:
- period_from - Begindatum van de gerapporteerde periode (tijdstempel).
- period_to - Einddatum van de gerapporteerde periode (tijdstempel).

Perioden worden gesorteerd oplopend op het veld period_from.
serviceids array Lijst van service-ID's in de gerapporteerde perioden.

De sorteervolgorde van de lijst is niet gedefinieerd, zelfs als de parameter serviceids aan de methode sla.getsli is doorgegeven.
sli array SLI-gegevens (als een tweedimensionale array) voor elke gerapporteerde periode en service.

De index van de eigenschap perioden wordt gebruikt als de eerste dimensie van de eigenschap sli.

De index van de eigenschap serviceids wordt gebruikt als de tweede dimensie van de eigenschap sli.

SLI-gegevens

De voor elke gerapporteerde periode en service geretourneerde SLI-gegevens bestaan uit:

Eigenschap Type Beschrijving
uptime integer Hoeveelheid tijd die de service in een OK-toestand heeft doorgebracht tijdens geplande uptime, verminderd met de uitgesloten downtimes.
downtime integer Hoeveelheid tijd die de service in een niet OK-toestand heeft doorgebracht tijdens geplande uptime, verminderd met de uitgesloten downtimes.
sli float SLI (percentage van totale uptime), gebaseerd op uptime en downtime.
error_budget integer Foutbudget (in seconden), gebaseerd op de SLI en de SLO.
excluded_downtimes array Array van uitgesloten downtimes in deze rapportageperiode.

Elk object bevat de volgende parameters:
- name - Naam van de uitgesloten downtime.
- period_from - Startdatum en -tijd (inclusief) van de uitgesloten downtime.
- period_to - Einddatum en -tijd (exclusief) van de uitgesloten downtime.

Uitgesloten downtimes zijn gesorteerd op stijgende volgorde van het veld period_from.

Voorbeelden

Calculating SLI

Retrieve SLI on services with IDs "50, 60 and 70" linked to an SLA with ID of "5" for 3 periods starting from Nov 01, 2021.

Request:

{
           "jsonrpc": "2.0",
           "method": "sla.getsli",
           "params": {
               "slaid": "5",
               "serviceids": [
                   50,
                   60,
                   70
               ],
               "periods": 3,
               "period_from": "1635724800"
           },
           "id": 1
       }

Response:

{
           "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
       }

Bron

CSla::getSli() in ui/include/classes/api/services/CSla.php