REST Resource: anomalies

Recurso: anomalia

Representa uma anomalia detectada em um conjunto de dados.

Nossos sistemas de detecção de anomalias sinalizam pontos de dados em uma série temporal fora do intervalo esperado e derivado de dados históricos. Embora esses intervalos tenham limites máximo e mínimo, sinalizamos anomalias apenas quando os dados se tornaram piores inesperadamente, o que geralmente corresponde ao caso em que a métrica ultrapassa o limite superior.

Vários pontos de dados contíguos em uma linha do tempo fora do intervalo esperado serão agrupados em uma única anomalia. Portanto, uma anomalia representa um segmento do cronograma de uma métrica. As informações armazenadas em timelineSpec, dimensions e metric podem ser usadas para buscar uma linha do tempo completa com ragne estendido para contexto.

Permissões necessárias: para acessar esse recurso, o usuário que está chamando precisa da permissão Ver informações do app (somente leitura).

Representação JSON
{
  "name": string,
  "metricSet": string,
  "timelineSpec": {
    object (TimelineSpec)
  },
  "dimensions": [
    {
      object (DimensionValue)
    }
  ],
  "metric": {
    object (MetricValue)
  }
}
Campos
name

string

Nome da anomalia.

Formato: apps/{app}/anomalies/{anomaly}

metricSet

string

Recurso do conjunto de métricas em que a anomalia foi detectada.

timelineSpec

object (TimelineSpec)

Especificação de cronograma que abrange o período da anomalia.

dimensions[]

object (DimensionValue)

É uma combinação das dimensões em que a anomalia foi detectada.

metric

object (MetricValue)

Métrica em que a anomalia foi detectada, além do valor anômalo.

Linha do tempo

Especificação dos parâmetros de agregação relacionados ao tempo de uma linha do tempo.

As linhas do tempo têm um período de agregação (DAILY, HOURLY etc.) que define como os eventos são agregados nas métricas.

Os pontos em uma linha do tempo são definidos pela data/hora de início do período de agregação. A duração está implícita em AggregatePeriod.

Os períodos de agregação por hora, quando compatíveis com um conjunto de métricas, são sempre especificados em UTC para evitar ambiguidades em relação às transições de horário de verão, em que uma hora é ignorada na adoção do DST e repetida ao abandonar o DST. Por exemplo, o carimbo de data/hora "2021-11-07 01:00:00 America/Los_Angeles" é ambíguo, porque pode corresponder a "2021-11-07 08:00:00 UTC" ou "2021-11-07 09:00:00 UTC".

Os períodos de agregação diários exigem a especificação de um fuso horário que determinará os momentos exatos do início e do fim do dia. Nem todos os conjuntos de métricas aceitam todos os fusos horários. Portanto, verifique quais fusos horários são aceitos pelo conjunto que você quer consultar.

Representação JSON
{
  "aggregationPeriod": enum (AggregationPeriod),
  "startTime": {
    object (DateTime)
  },
  "endTime": {
    object (DateTime)
  }
}
Campos
aggregationPeriod

enum (AggregationPeriod)

Tipo do período de agregação dos pontos de dados na linha do tempo.

Os intervalos são identificados pela data e hora no início do intervalo.

startTime

object (DateTime)

Ponto de dados inicial do cronograma (inclusivo). Ele precisa estar alinhado ao período de agregação da seguinte forma:

  • HOURLY: os campos "minutes", "seconds" e "nanos" precisam ser definidos. O horário não pode ser definido como padrão (UTC) ou definido explicitamente como "UTC". Definir qualquer outro ID utcOffset ou fuso horário resultará em um erro de validação.
  • DIARIAMENTE: os campos 'horas', 'minutos', 'segundos' e 'nanos' devem ser definidos. Conjuntos de métricas diferentes são compatíveis com fusos horários diferentes. Não é possível usar o fuso horário padrão especificado pelo conjunto de métricas.

O fuso horário do ponto final precisa corresponder ao fuso do ponto inicial.

endTime

object (DateTime)

Ponto de dados final do cronograma (exclusivo). Consulte startTime para ver as restrições. O fuso horário do ponto final precisa corresponder ao fuso do ponto inicial.

DimensionValue

Representa o valor de uma única dimensão.

Representação JSON
{
  "dimension": string,
  "valueLabel": string,

  // Union field value can be only one of the following:
  "stringValue": string,
  "int64Value": string
  // End of list of possible types for union field value.
}
Campos
dimension

string

Nome da dimensão.

valueLabel

string

Opcional. Rótulo legível para o valor, sempre em inglês. Por exemplo, "Espanha" para o código de país "ES".

Embora o valor da dimensão seja estável, esse rótulo está sujeito a alterações. Não suponha que a relação (value, valueLabel) esteja estável. Por exemplo, o código de país ISO "MK" mudou de nome recentemente para "Macedônia do Norte".

Campo de união value. Valor real da dimensão. Dependente do tipo. value pode ser apenas de um dos tipos a seguir:
stringValue

string

Valor real, representado como uma string.

int64Value

string (int64 format)

Valor real, representado como int64.

MetricValue

Representa o valor de uma métrica.

Representação JSON
{
  "metric": string,

  // Union field value can be only one of the following:
  "decimalValue": {
    object (Decimal)
  }
  // End of list of possible types for union field value.

  // Union field confidence_interval can be only one of the following:
  "decimalValueConfidenceInterval": {
    object (DecimalConfidenceInterval)
  }
  // End of list of possible types for union field confidence_interval.
}
Campos
metric

string

Nome da métrica.

Campo de união value. Valor real da métrica. Dependente do tipo. value pode ser apenas de um dos tipos a seguir:
decimalValue

object (Decimal)

Valor real, representado como um número decimal.

Campo de união confidence_interval. Se fornecido, representa um intervalo de confiança do valor. confidence_interval pode ser apenas de um dos tipos a seguir:
decimalValueConfidenceInterval

object (DecimalConfidenceInterval)

Intervalo de confiança de um valor do tipo type.Decimal.

Intervalo de confiança decimal

Representa o intervalo de confiança de uma métrica.

Representação JSON
{
  "lowerBound": {
    object (Decimal)
  },
  "upperBound": {
    object (Decimal)
  }
}
Campos
lowerBound

object (Decimal)

Limite inferior do intervalo de confiança.

upperBound

object (Decimal)

Limite superior do intervalo de confiança.

Métodos

list

Lista anomalias em qualquer um dos conjuntos de dados.