Se encuentra viendo la documentación de la versión en desarrollo, puede estar incompleta.
Esta página fue traducida automáticamente. Si detectas un error, selecciónalo y presiona Ctrl+Enter para informarlo a los editores.

sla.getsli

Descripción

object sla.getsli(object parameters)

Este método permite calcular los datos del Indicador de Nivel de Servicio (SLI) para un Acuerdo de Nivel de Servicio (SLA).

Este método está disponible para usuarios de cualquier tipo. Los permisos para llamar al método pueden ser revocados en la configuración de roles de usuario. Consulte Roles de usuario para más información.

Parámetros

(object) Parámetros que contienen el ID del SLA, los períodos de informe y, opcionalmente, los IDs de los servicios para calcular el SLI.

Parámetro Tipo Descripción
slaid ID ID del SLA para devolver la información de disponibilidad.

Comportamiento del parámetro:
- requerido
period_from timestamp Fecha de inicio (inclusive) para informar el SLI.

Valores posibles: timestamp.
period_to timestamp Fecha de finalización (exclusiva) para informar el SLI.

Valores posibles: timestamp.
periods array Número preferido de períodos a informar.

Valores posibles: 1-100
serviceids ID/array IDs de los servicios para devolver el SLI.

Particionamiento de períodos

La siguiente tabla demuestra la disposición de los segmentos de períodos devueltos según las combinaciones de parámetros.

Los períodos devueltos no precederán al primer período disponible según la fecha efectiva del SLA y no excederán el período actual.

Parámetros Descripción
period_from period_to periods
- - - Devuelve los últimos 20 períodos.
- - especificado Devuelve los últimos períodos especificados por el parámetro periods.
- especificado - Devuelve los últimos 20 períodos antes de la fecha period_to especificada.
- especificado especificado Devuelve los últimos períodos especificados por el parámetro periods antes de la fecha period_to especificada.
especificado - - Devuelve los primeros 20 períodos comenzando con la fecha period_from especificada.
especificado - especificado Devuelve los primeros períodos especificados por el parámetro periods comenzando con la fecha period_from especificada.
especificado especificado - Devuelve hasta 100 períodos dentro del rango de fechas especificado.
especificado especificado especificado Devuelve los períodos especificados por el parámetro periods dentro del rango de fechas especificado.

Valores de retorno

(object) Devuelve los resultados del cálculo.

Propiedad Tipo Descripción
periods array Lista de los periodos informados.

Cada periodo informado se representa como un objeto que consta de:
- period_from - Fecha de inicio del periodo informado (timestamp).
- period_to - Fecha de fin del periodo informado (timestamp).

Los periodos se ordenan por el campo period_from de forma ascendente.
serviceids array Lista de IDs de servicios en los periodos informados.

El orden de clasificación de la lista no está definido. Incluso si se pasó el parámetro serviceids al método sla.getsli.
sli array Datos SLI (como una matriz bidimensional) para cada periodo informado y servicio.

El índice de la propiedad periods se utiliza como la primera dimensión de la propiedad sli.

El índice de la propiedad serviceids se utiliza como la segunda dimensión de la propiedad sli.

Datos SLI

Los datos SLI devueltos para cada período informado y servicio consisten en:

Propiedad Tipo Descripción
uptime integer Cantidad de tiempo que el servicio estuvo en estado OK durante el tiempo de actividad programado, menos los tiempos de inactividad excluidos.
downtime integer Cantidad de tiempo que el servicio estuvo en estado no OK durante el tiempo de actividad programado, menos los tiempos de inactividad excluidos.
sli float SLI (porcentaje del tiempo total de actividad), basado en uptime y downtime.
error_budget integer Error budget (en segundos), basado en el SLI y el SLO.
excluded_downtimes array Array de tiempos de inactividad excluidos en este período de informe.

Cada objeto contendrá los siguientes parámetros:
- name - Nombre del tiempo de inactividad excluido.
- period_from - Fecha y hora de inicio (inclusive) del tiempo de inactividad excluido.
- period_to - Fecha y hora de finalización (exclusiva) del tiempo de inactividad excluido.

Los tiempos de inactividad excluidos se ordenan por el campo period_from en orden ascendente.

Ejemplos

Cálculo de SLI

Recuperar datos de SLI en los servicios con IDs "50", "60" y "70" que están vinculados al SLA con ID "5". Recuperar datos para 3 periodos comenzando desde el 01 de noviembre de 2021.

Solicitud:

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

Respuesta:

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

Fuente

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