sla.getsli

Опис

object sla.getsli(object parameters)

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

Овај метод је доступан корисницима било које врсте. Дозволе за позивање методе може се опозвати у подешавањима улоге корисника. Погледајте Корисничке улоге за више информација.

Параметри

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

Parameter Type Description
slaid ID ID SLA-а за који се враћају информације о доступности.

Понашање параметра:
- обавезно
period_from timestamp Почетни датум (укључујући) за извештавање о SLI-у.

Могуће вредности: временска ознака.
period_to timestamp Завршни датум (искључујући) за пријаву о SLI-у.

Могуће вредности: временска ознака.
periods array Пожељени број периода за извештавање.

Могуће вредности: 1-100
сserviceids ID/array ID-ијеви услуга за које се враћа SLI.

Подела периода

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

Враћени периоди неће претходити првом доступном периоду на основу датума ступања на снагу 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 унутар наведеног распона датума.

Повратне вредности

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

Property Type Description
periods array Листа пријављених периода.

Сваки пријављени период је представљен као објекат који се састоји од:
- period_from - Датум почетка извештајног периода (временска ознака).
- period_to - Датум завршетка извештајног периода (временска ознака).

Периоди су сортирани према растућем пољу period_from.
serviceids array Листа ID-ијева сервиса у пријављеним периодима.

Редослед сортирања листе није дефинисан. Чак и ако је параметар сервицеидс прослеђен методи sla.getsli.
sli array SLI подаци (као дводимензионални низ) за сваки пријављени период и сервис.

Индекс својства periods се користи као прва димензија својства sli.

Индекс својства serviceids се користи као друга димензија својства sli.

SLI подаци

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

Property Type Description
uptime integer Количина времена које је услуга провела у OK стању током заказаног радног времена, умањена за искључена времена застоја.
downtime integer Количина времена које је услуга провела у not OK стању током заказаног радног времена, умањена за искључена времена застоја.
sli float SLI (проценат укупног времена рада), засновано на времену непрекидног рада и застоја.
error_budget integer Буџет грешке (у секундама), заснован на SLI и SLO.
excluded_downtimes array Низ искључених застоја у овом периоду извештавања.

Сваки објекат ће садржати следеће параметре:
- name - Назив искљученог времена застоја.
- period_from – Почетни датум и време (укључујући) искључен застој.
- period_to – Датум и време завршетка (искључиво) искључено време застоја.

Изузето време застоја се сортира према period_from поља растуће.

Примери

Израчунавање SLI-а

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

Захтев:

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

Одговор:

{
           "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() у ui/include/classes/api/services/CSla.php