objeto sla.getsli(parâmetros do objeto)
Este método permite calcular os dados do Indicador de Nível de Serviço (SLI).
Este método está disponível para usuários de qualquer tipo. As permissões para chamar o método podem ser revogadas nas configurações de função do usuário. Consulte Funções de usuário para obter mais informações.
(object)
Parâmetros contendo o ID do SLA, períodos de relatório e, opcionalmente, os IDs dos serviços - para calcular o SLI.
Parâmetro | Tipo | Descrição |
---|---|---|
slaid (requerido) |
string | IDs de serviços para os quais retornar informações de disponibilidade. |
period_from | integer | Data de início (inclusive) para relatar o SLI. Valores possíveis: timestamp. |
period_to | integer | Data de término (exclusiva) para relatar o SLI. Valores possíveis: timestamp. |
periods | array | Número preferencial de períodos a serem relatados. Valores possíveis: 1-100 |
serviceids | string/array | IDs de serviços para os quais retornar o SLI. |
O seguinte demonstra o arranjo de period slices retornados com base em combinações de parâmetros..
Parâmetros | Descrição | ||
---|---|---|---|
period_from | period_to | periods | |
- | - | - | Os últimos 20 períodos (incluindo o atual), mas não após o primeiro período disponível com base na data de vigência do SLA. |
- | - | specified | Os últimos períodos especificados pelo parâmetro periods. |
- | specified | - | Os últimos 20 períodos antes da data especificada, mas não após o primeiro período disponível com base na data de vigência do SLA. |
- | specified | specified | Os últimos períodos especificados pelo parâmetro periods antes da data especificada. |
specified | - | - | Os primeiros 20 períodos (incluindo o atual), mas não após o atual. |
specified | - | specified | Os primeiros períodos especificados pelo parâmetro periods começando com o specified date. |
specified | specified | - | Períodos dentro do intervalo de datas especificado, mas não mais de 100 e não após o primeiro período disponível com base na data de vigência do SLA. |
specified | specified | specified | Períodos dentro do intervalo de datas especificado, mas não mais do que o número especificado de períodos e não após o primeiro período disponível com base na data de vigência do SLA. |
(object)
Retorna os resultados do cálculo.
Propriedade | Tipo | Descrição |
---|---|---|
periods | array | Lista dos períodos relatados. Cada período relatado é representado como um objeto que consiste em: - period_from - Data de início do período relatado (timestamp). - period_to - Término data do período relatado (timestamp). Os períodos são classificados pelo campo period_from crescente. |
serviceids | array | Lista de IDs de serviço nos períodos relatados. A ordem de classificação da lista não está definida. Mesmo que o parâmetro serviceids tenha sido passado para o método sla.getsli . |
sli | array | Dados SLI (como uma array bidimensional) para cada período e serviço informado. O índice da propriedade periods é usado como a primeira dimensão do sli property.O índice da propriedade serviceids é usado como a segunda dimensão da propriedade sli . |
Os dados SLI retornados para cada período e serviço relatado consistem em:
Propriedade | Tipo | Descrição |
---|---|---|
uptime | integer | Quantidade de tempo que o serviço passou em um estado OK durante o tempo de atividade programado, menos os tempos de inatividade excluídos. |
downtime | integer | Quantidade de tempo que o serviço gastou em um estado não OK durante o tempo de atividade programado, menos os tempos de inatividade excluídos. |
sli | float | SLI (por cento do tempo de atividade total), com base no tempo de atividade e tempo de inatividade. |
error_budget | integer | Orçamento de erro (em segundos), com base no SLI e no SLO. |
excluded_downtimes | array | Array de tempos de inatividade excluídos neste período de relatório. Cada objeto conterá os seguintes parâmetros: - name - Nome do tempo de inatividade excluído. - period_from - Data e hora de início (inclusive) do tempo de inatividade excluído. - period_to - Data e hora de término (exclusiva) do tempo de inatividade excluído. Os tempos de inatividade excluídos são classificados pelo campo period_from crescente. |
Recuperar SLI em serviços com IDs "50", "60" e "70" vinculados a um SLA com ID "5" por 3 períodos a partir de 01 de novembro de 2021.
Request:
{
"jsonrpc": "2.0",
"method": "service.getsli",
"params": {
"slaid": "5",
"serviceids": [
50,
60,
70
],
"periods": 3,
"period_from": "1635724800"
},
"auth": "038e1d7b1735c6a5436ee9eae095879e",
"id": 1
}
Response:
{
"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
}
CService::getSli() in ui/include/classes/api/services/CService.php.