REST Resource: anomalies

Ressource: Anomalie

Stellt eine in einem Dataset erkannte Anomalie dar.

Unsere Systeme zur Anomalieerkennung kennzeichnen Datenpunkte in einer Zeitreihe, die außerhalb eines erwarteten Bereichs liegen, der aus Verlaufsdaten abgeleitet wird. Diese erwarteten Bereiche haben zwar eine Ober- und eine Untergrenze, wir kennzeichnen Anomalien jedoch nur, wenn sich die Daten unerwartet verschlechtert haben. Das ist in der Regel der Fall, wenn der Messwert die Obergrenze überschreitet.

Mehrere zusammenhängende Datenpunkte in einem Zeitachsendiagramm, die außerhalb des erwarteten Bereichs liegen, werden zu einer einzelnen Anomalie zusammengefasst. Eine Anomalie stellt also effektiv ein Segment des Zeitachsendiagramms eines Messwerts dar. Die in timelineSpec, dimensions und metric gespeicherten Informationen können verwendet werden, um eine vollständige Zeitachse mit erweitertem Bereich für den Kontext abzurufen.

Erforderliche Berechtigungen: Für den Zugriff auf diese Ressource benötigt der aufrufende Nutzer die Berechtigung App-Informationen ansehen (schreibgeschützt) für die App.

JSON-Darstellung
{
  "name": string,
  "metricSet": string,
  "timelineSpec": {
    object (TimelineSpec)
  },
  "dimensions": [
    {
      object (DimensionValue)
    }
  ],
  "metric": {
    object (MetricValue)
  }
}
Felder
name

string

Kennung. Name der Anomalie.

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

metricSet

string

Messwertgruppe, in der die Anomalie erkannt wurde.

timelineSpec

object (TimelineSpec)

Zeitachsenspezifikation, die den Anomaliezeitraum abdeckt.

dimensions[]

object (DimensionValue)

Kombination von Dimensionen, in denen die Anomalie erkannt wurde.

metric

object (MetricValue)

Messwert, für den die Anomalie erkannt wurde, zusammen mit dem anomalen Wert.

TimelineSpec

Spezifikation der zeitbezogenen Aggregationsparameter einer Zeitachse.

Zeitachsen haben einen Zusammenfassungszeitraum (DAILY, HOURLY usw.), der definiert, wie Ereignisse in Messwerten zusammengefasst werden.

Die Punkte auf einer Zeitachse werden durch das Startdatum und die Startzeit des Aggregationszeitraums definiert. Die Dauer ist im AggregationPeriod impliziert.

Stündliche Aggregationszeiträume werden, sofern sie von einem Messwertset unterstützt werden, immer in UTC angegeben, um Unklarheiten bei der Umstellung auf die Sommerzeit zu vermeiden. Bei der Umstellung auf die Sommerzeit wird eine Stunde übersprungen und bei der Umstellung auf die Winterzeit wiederholt. Der Zeitstempel „2021-11-07 01:00:00 America/Los_Angeles“ ist beispielsweise mehrdeutig, da er „2021-11-07 08:00:00 UTC“ oder „2021-11-07 09:00:00 UTC“ entsprechen kann.

Für tägliche Aggregationszeiträume muss eine Zeitzone angegeben werden, die die genauen Zeitpunkte für den Beginn und das Ende des Tages bestimmt. Nicht alle Messwertgruppen unterstützen alle Zeitzonen. Prüfen Sie daher, welche Zeitzonen von der Messwertgruppe unterstützt werden, die Sie abfragen möchten.

JSON-Darstellung
{
  "aggregationPeriod": enum (AggregationPeriod),
  "startTime": {
    object (DateTime)
  },
  "endTime": {
    object (DateTime)
  }
}
Felder
aggregationPeriod

enum (AggregationPeriod)

Typ des Aggregationszeitraums der Datenpunkte auf der Zeitachse.

Intervalle werden durch das Datum und die Uhrzeit am Beginn des Intervalls identifiziert.

startTime

object (DateTime)

Der erste Datenpunkt des Zeitachsendiagramms (einschließlich). Muss wie folgt auf den Aggregationszeitraum abgestimmt sein:

  • HOURLY: Die Felder „minutes“, „seconds“ und „nanos“ müssen nicht festgelegt werden. Die timeZone kann leer gelassen werden (Standardeinstellung ist UTC) oder explizit auf „UTC“ gesetzt werden. Wenn Sie einen anderen utcOffset oder eine andere Zeitzonen-ID festlegen, tritt ein Validierungsfehler auf.
  • DAILY: Die Felder „hours“, „minutes“, „seconds“ und „nanos“ müssen nicht festgelegt sein. Verschiedene Messwertgruppen unterstützen unterschiedliche Zeitzonen. Sie kann leer gelassen werden, um die Standardzeitzone zu verwenden, die im Messwertset angegeben ist.

Die Zeitzone des Endpunkts muss mit der Zeitzone des Startpunkts übereinstimmen.

endTime

object (DateTime)

Ende des Zeitachsendatenpunkts (ausschließlich). Informationen zu Einschränkungen finden Sie unter startTime. Die Zeitzone des Endpunkts muss mit der Zeitzone des Startpunkts übereinstimmen.

DimensionValue

Stellt den Wert einer einzelnen Dimension dar.

JSON-Darstellung
{
  "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.
}
Felder
dimension

string

Name der Dimension.

valueLabel

string

Optional. Von Menschen lesbares Label für den Wert, immer auf Englisch. Beispiel: „Spanien“ für den Ländercode „ES“.

Der Dimensionswert ist stabil, das Wertlabel kann sich jedoch ändern. Gehen Sie nicht davon aus, dass die Beziehung zwischen „value“ und „valueLabel“ stabil ist. Der ISO-Ländercode „MK“ wurde beispielsweise vor Kurzem in „Nordmazedonien“ geändert.

Union-Feld value. Tatsächlicher Wert der Dimension. Typabhängig. Für value ist nur einer der folgenden Werte zulässig:
stringValue

string

Tatsächlicher Wert, als String dargestellt.

int64Value

string (int64 format)

Tatsächlicher Wert, dargestellt als int64.

MetricValue

Stellt den Wert eines Messwerts dar.

JSON-Darstellung
{
  "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.
}
Felder
metric

string

Name des Messwerts.

Union-Feld value. Tatsächlicher Wert des Messwerts. Typabhängig. Für value ist nur einer der folgenden Werte zulässig:
decimalValue

object (Decimal)

Tatsächlicher Wert als Dezimalzahl.

Union-Feld confidence_interval. Falls angegeben, stellt dies ein Konfidenzintervall für den Wert dar. Für confidence_interval ist nur einer der folgenden Werte zulässig:
decimalValueConfidenceInterval

object (DecimalConfidenceInterval)

Konfidenzintervall eines Werts vom Typ type.Decimal.

DecimalConfidenceInterval

Stellt das Konfidenzintervall eines Messwerts dar.

JSON-Darstellung
{
  "lowerBound": {
    object (Decimal)
  },
  "upperBound": {
    object (Decimal)
  }
}
Felder
lowerBound

object (Decimal)

Die Untergrenze des Konfidenzintervalls.

upperBound

object (Decimal)

Die Obergrenze des Konfidenzintervalls.

Methoden

list

Listet Anomalien in einem der Datasets auf.