REST Resource: anomalies

Ressource : Anomaly

Représente une anomalie détectée dans un ensemble de données.

Nos systèmes de détection d'anomalies signalent les points de données d'une série temporelle qui se situent en dehors d'une plage attendue dérivée des données historiques. Bien que ces plages attendues aient une limite supérieure et une limite inférieure, nous ne signalons les anomalies que lorsque les données se sont détériorées de manière inattendue, ce qui correspond généralement au cas où la métrique dépasse la limite supérieure.

Plusieurs points de données contigus dans une chronologie en dehors de la plage attendue seront regroupés dans une seule anomalie. Une anomalie représente donc un segment de la chronologie d'une métrique. Les informations stockées dans timelineSpec, dimensions et metric peuvent être utilisées pour récupérer une chronologie complète avec une plage étendue pour le contexte.

Autorisations requises : pour accéder à cette ressource, l'utilisateur appelant doit disposer de l'autorisation Afficher les informations sur l'application (lecture seule) pour l'application.

Représentation JSON
{
  "name": string,
  "metricSet": string,
  "timelineSpec": {
    object (TimelineSpec)
  },
  "dimensions": [
    {
      object (DimensionValue)
    }
  ],
  "metric": {
    object (MetricValue)
  }
}
Champs
name

string

Identifiant. Nom de l'anomalie.

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

metricSet

string

Ressource de l'ensemble de métriques dans laquelle l'anomalie a été détectée.

timelineSpec

object (TimelineSpec)

Spécification de la chronologie qui couvre la période d'anomalie.

dimensions[]

object (DimensionValue)

Combinaison de dimensions dans laquelle l'anomalie a été détectée.

metric

object (MetricValue)

Métrique dans laquelle l'anomalie a été détectée, ainsi que la valeur anormale.

TimelineSpec

Spécification des paramètres d'agrégation temporelle d'une timeline.

Les chronologies ont une période d'agrégation (DAILY, HOURLY, etc.) qui définit la façon dont les événements sont agrégés dans les métriques.

Les points d'une chronologie sont définis par la date et l'heure de début de la période d'agrégation. La durée est implicite dans AggregationPeriod.

Lorsque les périodes d'agrégation par heure sont compatibles avec un ensemble de métriques, elles sont toujours spécifiées en UTC pour éviter toute ambiguïté concernant les transitions de l'heure d'été, où une heure est ignorée lors de l'adoption de l'heure d'été et répétée lors de l'abandon de l'heure d'été. Par exemple, le code temporel "2021-11-07 01:00:00 America/Los_Angeles" est ambigu, car il peut correspondre à "2021-11-07 08:00:00 UTC" ou à "2021-11-07 09:00:00 UTC".

Les périodes d'agrégation quotidiennes nécessitent de spécifier un fuseau horaire qui déterminera les instants précis du début et de la fin de la journée. Tous les ensembles de métriques ne sont pas compatibles avec tous les fuseaux horaires. Vérifiez donc ceux qui sont compatibles avec l'ensemble de métriques que vous souhaitez interroger.

Représentation JSON
{
  "aggregationPeriod": enum (AggregationPeriod),
  "startTime": {
    object (DateTime)
  },
  "endTime": {
    object (DateTime)
  }
}
Champs
aggregationPeriod

enum (AggregationPeriod)

Type de période d'agrégation des points de données dans la chronologie.

Les intervalles sont identifiés par la date et l'heure de début de l'intervalle.

startTime

object (DateTime)

Point de données de début de la timeline (inclus). Doit être alignée sur la période d'agrégation comme suit :

  • HOURLY : les champs "minutes", "seconds" et "nanos" doivent être non définis. Le fuseau horaire peut être laissé non défini (par défaut, il est défini sur UTC) ou défini explicitement sur "UTC". Si vous définissez un autre utcOffset ou ID de fuseau horaire, une erreur de validation s'affichera.
  • DAILY : les champs "hours", "minutes", "seconds" et "nanos" doivent être non définis. Différents ensembles de métriques sont compatibles avec différents fuseaux horaires. Vous pouvez le laisser non défini pour utiliser le fuseau horaire par défaut spécifié par l'ensemble de métriques.

Le fuseau horaire du point de départ doit correspondre à celui du point d'arrivée.

endTime

object (DateTime)

Point de données de fin de la période (exclusif). Consultez startTime pour connaître les restrictions. Le fuseau horaire du point de départ doit correspondre à celui du point d'arrivée.

DimensionValue

Représente la valeur d'une seule dimension.

Représentation 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.
}
Champs
dimension

string

Nom de la dimension.

valueLabel

string

Facultatif. Libellé lisible par l'utilisateur pour la valeur, toujours en anglais. Par exemple, "Espagne" pour le code pays "ES".

Alors que la valeur de la dimension est stable, ce libellé de valeur est susceptible de changer. Ne partez pas du principe que la relation (valeur, valueLabel) est stable. Par exemple, le nom du code pays ISO "MK" a récemment été remplacé par "Macédoine du Nord".

Champ d'union value. Valeur réelle de la dimension. Dépend du type. value ne peut être qu'un des éléments suivants :
stringValue

string

Valeur réelle, représentée sous forme de chaîne.

int64Value

string (int64 format)

Valeur réelle, représentée sous la forme d'un int64.

MetricValue

Représente la valeur d'une métrique.

Représentation 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.
}
Champs
metric

string

Nom de la métrique.

Champ d'union value. Valeur réelle de la métrique. Dépend du type. value ne peut être qu'un des éléments suivants :
decimalValue

object (Decimal)

Valeur réelle, représentée sous forme de nombre décimal.

Champ d'union confidence_interval. Si elle est indiquée, elle représente un intervalle de confiance pour la valeur. confidence_interval ne peut être qu'un des éléments suivants :
decimalValueConfidenceInterval

object (DecimalConfidenceInterval)

Intervalle de confiance d'une valeur de type type.Decimal.

DecimalConfidenceInterval

Représente l'intervalle de confiance d'une métrique.

Représentation JSON
{
  "lowerBound": {
    object (Decimal)
  },
  "upperBound": {
    object (Decimal)
  }
}
Champs
lowerBound

object (Decimal)

Limite inférieure de l'intervalle de confiance.

upperBound

object (Decimal)

Limite supérieure de l'intervalle de confiance.

Méthodes

list

Liste les anomalies dans l'un des ensembles de données.