[comment]: # translation:outdated

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

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

[comment]: # ({3fde2eb3-531f7cc6})
### Опис

`object sla.getsli(object parameters)`

Овај метод омогућава израчунавање података индикатора нивоа услуге (SLI) за Уговор о нивоу услуге (SLA).

::: нотецлассиц
Овај метод је доступан корисницима било које врсте. Дозволе
за позивање методе може се опозвати у подешавањима улоге корисника. Погледајте [Корисничке
улоге](/manual/web_interface/frontend_sections/users/user_roles)
за више информација.
:::

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

[comment]: # ({270c9b0a-bcbf1cf2})
### Параметри

`(object)` Параметри који садрже ID од SLA, периоде извештавања и, опционо,
ID-ијеве сервиса - за израчунавање SLI-а.

|Parameter|[Type](/manual/api/reference_commentary#data_types)|Description|
|--|--|------|
|slaid|ID|ID SLA-а за који се враћају информације о доступности.<br><br>[Понашање параметра](/manual/api/reference_commentary#parameter-behavior):<br>- *обавезно*|
|period\_from|timestamp|Почетни датум (укључујући) за извештавање о SLI-у.<br><br>Могуће вредности: временска ознака.|
|period\_to|timestamp|Завршни датум (искључујући) за пријаву о SLI-у.<br><br>Могуће вредности: временска ознака.|
|periods|array|Пожељени број периода за извештавање.<br><br>Могуће вредности: 1-100|
|сserviceids|ID/array|ID-ијеви услуга за које се враћа SLI.|

[comment]: # ({/270c9b0a-bcbf1cf2})

[comment]: # ({9478a80d-31bc72e4})
#### Подела периода

Следећа табела приказује распоред враћених сегмената периода на основу комбинација параметара.

::: noteclassic
Враћени периоди неће претходити првом доступном периоду на основу датума ступања на снагу SLA и неће премашити тренутни период.
:::

|Parameters|||Description|
|--|--|--|----|
|**period\_from**|**period\_to**|**periods**||
|-|-|-|Врати последњих 20 периода.|
|-|-|specified|Врати последње периоде наведене параметром **periods**.|
|-|specified|-|Врати последњих 20 периода пре наведеног датума **period\_to**.|
|-|specified|specified|Врати последње периоде наведене параметром **periods** пре наведеног датума **period\_to**.|
|specified|-|-|Врати првих 20 периода почевши од наведеног датума **period\_from**.|
|specified|-|specified|Врати прве периоде наведене параметром **periods** почевши од наведеног датума **period\_from**.|
|specified|specified|-|Врати до 100 тачака унутар наведеног распона датума.|
|specified|specified|specified|Повратне периоде наведене параметром **periods** унутар наведеног распона датума.|

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

[comment]: # ({af9e88c4-b46f1257})
### Повратне вредности

`(објекат)` Враћа резултате израчунавања.

|Property|[Type](/manual/api/reference_commentary#data_types)|Description|
|--|--|------|
|periods|array|Листа пријављених периода.<br><br>Сваки пријављени период је представљен као објекат који се састоји од:<br>- `period_from` - Датум почетка извештајног периода (временска ознака).<br>- `period_to` - Датум завршетка извештајног периода (временска ознака).<br><br>Периоди су сортирани према растућем пољу `period_from`.|
|serviceids|array|Листа ID-ијева сервиса у пријављеним периодима.<br><br>Редослед сортирања листе није дефинисан. Чак и ако је параметар `сервицеидс` прослеђен методи `sla.getsli`.|
|sli|array|SLI подаци (као **дводимензионални низ**) за сваки пријављени период и сервис.<br><br>Индекс својства `periods` се користи као **прва** димензија својства `sli`.<br><br>Индекс својства `serviceids` се користи као **друга** димензија својства `sli`.|

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

[comment]: # ({aa24c098-ba0b5441})
#### SLI подаци

Подаци SLI враћени за сваки пријављени период и сервис се састоје од:

|Property|[Type](/manual/api/reference_commentary#data_types)|Description|
|--|--|------|
|uptime|integer|Количина времена које је услуга провела у _OK_ стању током заказаног радног времена, умањена за искључена времена застоја.|
|downtime|integer|Количина времена које је услуга провела у _not OK_ стању током заказаног радног времена, умањена за искључена времена застоја.|
|sli|float|SLI (проценат укупног времена рада), засновано на времену непрекидног рада и застоја.|
|error\_budget|integer|Буџет грешке (у секундама), заснован на SLI и SLO.|
|excluded\_downtimes|array|Низ искључених застоја у овом периоду извештавања.<br><br>Сваки објекат ће садржати следеће параметре:<br>- `name` - Назив искљученог времена застоја.<br>- `period_from` – Почетни датум и време (укључујући) искључен застој.<br>- `period_to` – Датум и време завршетка (искључиво) искључено време застоја.<br><br>Изузето време застоја се сортира према period_from поља растуће.|

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

[comment]: # ({b41637d2-b41637d2})
### Примери

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

[comment]: # ({new-610cd288})
#### Calculating SLI for a daily SLA

Retrieve SLI data for services with IDs "1" and "4" that are linked to the SLA with ID "1".
Retrieve data for a single period until "1761861599" (Oct 30 2025 23:59:59 GMT+0200).
Since the [reporting period](/manual/it_services/sla) of the SLA is daily, SLI data is retrieved from "1761775200" (Oct 30 2025 00:00:00 GMT+0200) to "1761861600" (Oct 31 2025 00:00:00 GMT+0200).

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

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

Response:

```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]: # ({/new-610cd288})

[comment]: # ({16e0ca76-c6c818e1})
#### Израчунавање SLI-а

Преузми SLI податке на сервисима са ID-ијевима "50", "60" и "70" који су повезани на SLA са ID-ијем "5".
Преузми податке за 3 периода почевши од 01. новембра 2021.

[Захтев](/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
}
```

Одговор:

```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": "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
}
```

[comment]: # ({/16e0ca76-c6c818e1})

[comment]: # ({13a91d62-a5414084})
### Извор

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

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