[comment]: # translation:outdated

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

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

[comment]: # ({3fde2eb3-531f7cc6})
### Beschreibung

`object sla.getsli(object parameters)`

Mit dieser Methode können die Daten des Service Level Indicator (SLI) für ein Service Level Agreement (SLA) berechnet werden.

::: noteclassic
Diese Methode ist für Benutzer aller Typen verfügbar. Die Berechtigungen
zum Aufrufen der Methode können in den Einstellungen der Benutzerrolle entzogen werden. Weitere Informationen finden Sie unter [Benutzerrollen](/manual/web_interface/frontend_sections/users/user_roles).
:::

[comment]: # ({/3fde2eb3-531f7cc6})

[comment]: # ({880cf558-bcbf1cf2})
### Parameter

`(object)` Parameter, die die SLA-ID, Berichtszeiträume und optional
die IDs der Services enthalten, für die der SLI berechnet werden soll.

|Parameter|[Type](/manual/api/reference_commentary#data-types)|Beschreibung|
|--|--|------|
|slaid|ID|ID des SLA, für das Verfügbarkeitsinformationen zurückgegeben werden sollen.<br><br>[Parameter behavior](/manual/api/reference_commentary#parameter-behavior):<br>- *required*|
|period\_from|timestamp|Startzeitstempel (einschließlich), für den der SLI gemeldet werden soll.<br><br>Mögliche Werte: Unix-Zeitstempel.|
|period\_to|timestamp|Endzeitstempel (einschließlich), für den der SLI gemeldet werden soll.<br><br>Mögliche Werte: Unix-Zeitstempel.|
|periods|integer|Anzahl der zu meldenden Zeiträume.<br><br>Mögliche Werte: 1-100|
|serviceids|ID/array|IDs der Services, für die der SLI zurückgegeben werden soll.|

[comment]: # ({/880cf558-bcbf1cf2})

[comment]: # ({d1b5c39b-31bc72e4})
#### Aufteilung von Zeiträumen

Die folgende Tabelle veranschaulicht die Anordnung der zurückgegebenen Zeitraumabschnitte basierend auf Parameterkombinationen.

::: noteclassic
Zurückgegebene Zeiträume liegen nicht vor dem ersten verfügbaren Zeitraum (basierend auf dem Gültigkeitsdatum des SLA) und überschreiten nicht den aktuellen Zeitraum.
:::

|Parameter|<|<|Zurückgegebene Zeiträume|
|-|-|-|-------|
|**period\_from**|**period\_to**|**periods**|   |
|-|-|-|Letzte 20 Zeiträume, einschließlich des aktuellen.|
|-|-|N|Letzte N Zeiträume.|
|-|angegeben|-|Letzte 20 Zeiträume vor `period_to`.|
|-|angegeben|N|Letzte N Zeiträume vor `period_to`.|
|angegeben|-|-|Erste 20 Zeiträume beginnend mit `period_from`.|
|angegeben|-|N|Erste N Zeiträume beginnend mit `period_from`.|
|angegeben|angegeben|-|Bis zu 100 Zeiträume im angegebenen Bereich.|
|angegeben|angegeben|N|N Zeiträume im angegebenen Bereich.|

[comment]: # ({/d1b5c39b-31bc72e4})

[comment]: # ({26e4fdd7-b46f1257})
### Rückgabewerte

`(object)` Gibt die Ergebnisse der Berechnung zurück.

|Eigenschaft|[Type](/manual/api/reference_commentary#data-types)|Beschreibung|
|--|--|------|
|periods|array|Liste der gemeldeten Zeiträume.<br><br>Jeder gemeldete Zeitraum wird als Objekt dargestellt, das aus Folgendem besteht:<br>- `period_from` - `(timestamp)` Startzeitstempel (einschließlich) des gemeldeten Zeitraums.<br>- `period_to` - `(timestamp)` Endzeitstempel (ausschließlich) des gemeldeten Zeitraums.<br><br>Die Zeiträume sind nach `period_from` sortiert, wobei die frühesten Zeiträume zuerst erscheinen.|
|serviceids|array|Liste der Service-IDs in den gemeldeten Zeiträumen.<br><br>Die Sortierreihenfolge der Liste ist nicht definiert. Auch dann nicht, wenn der Parameter `serviceids` an die Methode `sla.getsli` übergeben wurde.|
|sli|array|SLI-Daten (als **zweidimensionales Array**) für jeden gemeldeten Zeitraum und Service.<br><br>Der Index der Eigenschaft `periods` wird als **erste** Dimension der Eigenschaft `sli` verwendet.<br><br>Der Index der Eigenschaft `serviceids` wird als **zweite** Dimension der Eigenschaft `sli` verwendet.|

[comment]: # ({/26e4fdd7-b46f1257})

[comment]: # ({1b312b3d-ba0b5441})
#### SLI-Daten

Die für jeden gemeldeten Zeitraum und Service zurückgegebenen SLI-Daten bestehen aus:

|Eigenschaft|[Type](/manual/api/reference_commentary#data-types)|Beschreibung|
|--|--|------|
|uptime|integer|Zeitspanne, die der Service während der geplanten Verfügbarkeit im Status _OK_ verbracht hat, abzüglich der ausgeschlossenen Ausfallzeiten.|
|downtime|integer|Zeitspanne, die der Service während der geplanten Verfügbarkeit im Status _not OK_ verbracht hat, abzüglich der ausgeschlossenen Ausfallzeiten.|
|sli|float|SLI (in Prozent der gesamten Verfügbarkeitszeit), basierend auf uptime und downtime.|
|error\_budget|integer|Fehlerbudget (in Sekunden), basierend auf dem SLI und dem SLO.|
|excluded\_downtimes|array|Array der ausgeschlossenen Ausfallzeiten in diesem Berichtszeitraum.<br><br>Jedes Objekt enthält die folgenden Parameter:<br>- `name` - `(string)` Name der ausgeschlossenen Ausfallzeit.<br>- `period_from` - `(timestamp)` Startzeitstempel (einschließlich) der ausgeschlossenen Ausfallzeit.<br>- `period_to` - `(timestamp)` Endzeitstempel (ausschließlich) der ausgeschlossenen Ausfallzeit.<br><br>Ausgeschlossene Ausfallzeiten werden nach `period_from` sortiert, wobei die frühesten Zeiträume zuerst erscheinen.|

[comment]: # ({/1b312b3d-ba0b5441})

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

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

[comment]: # ({b67c0708-610cd288})
#### Berechnung des SLI für ein tägliches SLA

Rufen Sie SLI-Daten für Services mit den IDs „1“ und „4“ ab, die mit dem SLA mit der ID „1“ verknüpft sind.
Rufen Sie Daten für einen einzelnen Zeitraum bis „1761861599“ (30. Okt. 2025 23:59:59 GMT+0200) ab.
Da der [Berichtszeitraum](/manual/it_services/sla) des SLA täglich ist, werden SLI-Daten von „1761775200“ (30. Okt. 2025 00:00:00 GMT+0200) bis „1761861600“ (31. Okt. 2025 00:00:00 GMT+0200) abgerufen.

[Anfrage](/manual/api#performing-requests):

```json
{
    "jsonrpc": "2.0",
    "method": "sla.getsli",
    "params": {
        "slaid": "1",
        "serviceids": [
            1,
            4
        ],
        "periods": 1,
        "period_to": 1761861599
    },
    "id": 1
}
```

Antwort:

```json
{
    "jsonrpc": "2.0",
    "result": {
        "periods": [
            {
                "period_from": 1761775200,
                "period_to": 1761861600
            }
        ],
        "serviceids": [
            1,
            4
        ],
        "sli": [
            [
                {
                    "uptime": 43843,
                    "downtime": 0,
                    "sli": 100,
                    "error_budget": 0,
                    "excluded_downtimes": [
                        {
                            "name": "Maintenance OCT",
                            "period_from": 1761825600,
                            "period_to": 1761829200
                        }
                    ]
                },
                {
                    "uptime": 32225,
                    "downtime": 0,
                    "sli": 100,
                    "error_budget": 0,
                    "excluded_downtimes": []
                }
            ]
        ]
    },
    "id": 1
}
```

[comment]: # ({/b67c0708-610cd288})

[comment]: # ({d21e6bab-c6c818e1})
#### Berechnung des SLI für eine monatliche SLA

Rufen Sie SLI-Daten für Services mit den IDs "50", "60" und "70" ab, die mit der SLA mit der ID "5" verknüpft sind.
Rufen Sie Daten für drei Zeiträume ab, beginnend mit "1635724800" (01. Nov. 2021 00:00:00 UTC).
Da der [Berichtszeitraum](/manual/it_services/sla) der SLA monatlich ist, werden SLI-Daten für die folgenden drei Monate abgerufen:

-   Von "1635724800" (01. Nov. 2021 00:00:00 UTC) bis "1638316800" (01. Dez. 2021 00:00:00 UTC)
-   Von "1638316800" (01. Dez. 2021 00:00:00 UTC) bis "1640995200" (01. Jan. 2022 00:00:00 UTC)
-   Von "1640995200" (01. Jan. 2022 00:00:00 UTC) bis "1643673600" (01. Feb. 2022 00:00:00 UTC)

[Anfrage](/manual/api#performing-requests):

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

Antwort:

```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": "Maintenance Nov 25 - Dec 01",
                            "period_from": 1637836212,
                            "period_to": 1638316800
                        }
                    ]
                },
                {
                    "uptime": 1186212,
                    "downtime": 0,
                    "sli": 100,
                    "error_budget": 0,
                    "excluded_downtimes": [
                        {
                            "name": "Maintenance Nov 25 - Dec 01",
                            "period_from": 1637836212,
                            "period_to": 1638316800
                        }
                    ]
                },
                {
                    "uptime": 1186212,
                    "downtime": 0,
                    "sli": 100,
                    "error_budget": 0,
                    "excluded_downtimes": [
                        {
                            "name": "Maintenance Nov 25 - Dec 01",
                            "period_from": 1637836212,
                            "period_to": 1638316800
                        }
                    ]
                }
            ],
            [
                {
                    "uptime": 1147548,
                    "downtime": 0,
                    "sli": 100,
                    "error_budget": 0,
                    "excluded_downtimes": [
                        {
                            "name": "Maintenance Dec 02 - Dec 10",
                            "period_from": 1638439200,
                            "period_to": 1639109652
                        }
                    ]
                },
                {
                    "uptime": 1147548,
                    "downtime": 0,
                    "sli": 100,
                    "error_budget": 0,
                    "excluded_downtimes": [
                        {
                            "name": "Maintenance Dec 02 - Dec 10",
                            "period_from": 1638439200,
                            "period_to": 1639109652
                        }
                    ]
                },
                {
                    "uptime": 1147548,
                    "downtime": 0,
                    "sli": 100,
                    "error_budget": 0,
                    "excluded_downtimes": [
                        {
                            "name": "Maintenance Dec 02 - Dec 10",
                            "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]: # ({/d21e6bab-c6c818e1})

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

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

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