[comment]: # translation:outdated

[comment]: # ({d1387fc4-d1387fc4})
# sla.getsli

[comment]: # ({/d1387fc4-d1387fc4})

[comment]: # ({59cbeb46-59cbeb46})
### Beschrijving

`object sla.getsli(objectparameters)`

Met deze methode kunnen de gegevens van de Service Level Indicator (SLI) worden berekend.

::: noteclassic
Deze methode is beschikbaar voor gebruikers van elk type. Rechten
om de methode aan te roepen, kan worden ingetrokken in de instellingen van de gebruikersrol. Zie [Gebruiker
rollen](/manual/web_interface/frontend_sections/administration/user_roles)
voor meer informatie.
:::

[comment]: # ({/59cbeb46-59cbeb46})

[comment]: # ({2578ebd6-2578ebd6})
### Parameters

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

| Parameter | [Type](/manual/api/reference_commentary#data_types) | Beschrijving |
|-------------------------|----------------------- ------------------------------|------------------- -------------------------------------------------- ----------------|
| **slaid**<br>(verplicht) | tekenreeks | ID's van services waarvoor beschikbaarheidsinformatie moet worden geretourneerd. |
| periode\_vanaf | geheel getal | Startdatum (inclusief) om de SLI voor te rapporteren.<br><br>Mogelijke waarden: tijdstempel. |
| periode\_tot | geheel getal | Einddatum (exclusief) om de SLI voor te rapporteren.<br><br>Mogelijke waarden: tijdstempel. |
| periodes | reeks | Voorkeursaantal te rapporteren perioden.<br><br>Mogelijke waarden: 1-100 |
| service-id's | tekenreeks/array | ID's van services waarvoor de SLI moet worden geretourneerd. |

[comment]: # ({/2578ebd6-2578ebd6})

[comment]: # ({c2dd0229-c2dd0229})
#### Partitionering van perioden

Het volgende toont de rangschikking van geretourneerde _periodesegmenten_ op basis van combinaties van parameters.

| Parameters | | | Beschrijving |
|------------------|----------------|------------- |------------------------------------------------- -------------------------------------------------- -------------------------------------------------- ----------------------|
| **periode\_vanaf** | **periode\_to** | **perioden** | |
| - | - | - | De laatste 20 perioden (inclusief de huidige) maar niet voorbij de eerste beschikbare periode op basis van de ingangsdatum van de SLA. |
| - | - | gespecificeerd | De laatste perioden gespecificeerd door de parameter **perioden**. |
| - | gespecificeerd | - | De laatste 20 perioden vóór de **gespecificeerde datum**, maar niet na de eerste beschikbare periode op basis van de ingangsdatum van de SLA. |
| - | gespecificeerd | gespecificeerd | De laatste perioden gespecificeerd door de parameter **perioden** vóór de **gespecificeerde datum**. |
| gespecificeerd | - | - | De eerste 20 perioden (inclusief de huidige) maar niet voorbij de huidige. |
| gespecificeerd | - | gespecificeerd | De eerste perioden gespecificeerd door de parameter **perioden** beginnend met de **gespecificeerde datum**. |
| gespecificeerd | gespecificeerd | - | Perioden binnen het opgegeven 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 opgegeven datumbereik, maar niet meer dan het opgegeven aantal perioden en niet voorbij de eerste beschikbare periode op basis van de ingangsdatum van de SLA. |

[comment]: # ({/c2dd0229-c2dd0229})

[comment]: # ({b47d03dc-b47d03dc})
### Retourwaarden

`(object)` Retourneert de resultaten van de berekening.

| Eigendom | [Type](/manual/api/reference_commentary#data_types) | Beschrijving |
|------------|------------------------------------ -----------------|-------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- --------------------|
| periodes | reeks | Lijst met gerapporteerde perioden.<br><br>Elke gerapporteerde periode wordt weergegeven als een object dat bestaat uit:<br>- _periode\_from_ - Begindatum van de gerapporteerde periode (tijdstempel).<br>- _periode\_to_ - Einde datum van de gerapporteerde periode (tijdstempel).<br><br>Perioden worden oplopend gesorteerd op 'period_from'-veld. |
| service-id's | reeks | Lijst met service-ID's in de gerapporteerde perioden.<br><br>De sorteervolgorde van de lijst is niet gedefinieerd. Zelfs als de parameter 'serviceids' is doorgegeven aan de methode 'sla.getsli'. |
| sli | reeks | SLI-gegevens (als **tweedimensionale array**) voor elke gerapporteerde periode en service.<br><br>De index van de eigenschap 'periods' wordt gebruikt als de **eerste** dimensie van de 'sli' eigenschap.<br><br>De index van de eigenschap `serviceids` wordt gebruikt als de **tweede** dimensie van de eigenschap `sli`. |

[comment]: # ({/b47d03dc-b47d03dc})

[comment]: # ({782f6e34-782f6e34})
#### SLI-gegevens

De SLI-gegevens die voor elke gerapporteerde periode en service worden geretourneerd, bestaan uit:

| Eigendom | [Type](/manual/api/reference_commentary#data_types) | Beschrijving |
|---------------------|--------------------------- --------------------------|----------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- ----------------|
| uptime | geheel getal | De hoeveelheid tijd die de service heeft doorgebracht in een _OK_-status tijdens geplande uptime, minus de uitgesloten downtimes. |
| uitvaltijd | geheel getal | De hoeveelheid tijd die de service heeft doorgebracht in een _niet OK_-status tijdens geplande uptime, minus de uitgesloten downtimes. |
| sli | zweven | SLI (percentage van totale uptime), gebaseerd op uptime en downtime. |
| fout\_budget | geheel getal | Foutbudget (in seconden), gebaseerd op de SLI en de SLO. |
| uitgesloten\_downtimes | reeks | Reeks uitgesloten uitvaltijden in deze rapportageperiode.<br><br>Elk object bevat de volgende parameters:<br>- _name_ - Naam van de uitgesloten uitvaltijd.<br>- _period\_from_ - Begindatum en -tijd (inclusief) van de uitgesloten uitvaltijd.<br>- _period\_to_ - Einddatum en -tijd (exclusief) van de uitgesloten uitvaltijd.<br><br>Uitgesloten uitvaltijden worden gesorteerd op period_from veld oplopend. |

[comment]: # ({/782f6e34-782f6e34})

[comment]: # ({b41637d2-b41637d2})
### Voorbeelden

[comment]: # ({/b41637d2-b41637d2})

[comment]: # ({06e03fee-e6513a45})
### SLI berekenen

Haal SLI op voor services met IDs "50, 60 en 70" die zijn gekoppeld aan een SLA met een ID van "5" gedurende 3 perioden vanaf 1 november 2021.

Verzoek:

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

Reactie:

```json
{
    "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": "Uitgesloten Downtime - 1",
                            "period_from": 1637836212,
                            "period_to": 1638316800
                        }
                    ]
                },
                {
                    "uptime": 1186212,
                    "downtime": 0,
                    "sli": 100,
                    "error_budget": 0,
                    "excluded_downtimes": [
                        {
                            "name": "Uitgesloten Downtime - 1",
                            "period_from": 1637836212,
                            "period_to": 1638316800
                        }
                    ]
                },
                {
                    "uptime": 1186212,
                    "downtime": 0,
                    "sli": 100,
                    "error_budget": 0,
                    "excluded_downtimes": [
                        {
                            "name": "Uitgesloten Downtime - 1",
                            "period_from": 1637836212,
                            "period_to": 1638316800
                        }
                    ]
                }
            ],
            [
                {
                    "uptime": 1147548,
                    "downtime": 0,
                    "sli": 100,
                    "error_budget": 0,
                    "excluded_downtimes": [
                        {
                            "name": "Uitgesloten Downtime - 1",
                            "period_from": 1638439200,
                            "period_to": 1639109652
                        }
                    ]
                },
                {
                    "uptime": 1147548,
                    "downtime": 0,
                    "sli": 100,
                    "error_budget": 0,
                    "excluded_downtimes": [
                        {
                            "name": "Uitgesloten Downtime - 1",
                            "period_from": 1638439200,
                            "period_to": 1639109652
                        }
                    ]
                },
                {
                    "uptime": 1147548,
                    "downtime": 0,
                    "sli": 100,
                    "error_budget": 0,
                    "excluded_downtimes": [
                        {
                            "name": "Uitgesloten 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
}
```

[comment]: # ({/06e03fee-e6513a45})

[comment]: # ({13a91d62-a5414084})
### Bron

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

[comment]: # ({/13a91d62-a5414084})
