MCP Tools Reference: monitoring.googleapis.com

Tool: get_alert_policy

Verwenden Sie dieses Tool als primäres Tool, um Informationen zu einer bestimmten Benachrichtigungsrichtlinie abzurufen. In Benachrichtigungsrichtlinien werden die Bedingungen definiert, unter denen Sie über Probleme mit Ihren Diensten benachrichtigt werden möchten. Das ist nützlich, um die Details einer bestimmten Benachrichtigungskonfiguration zu verstehen.

Im folgenden Beispiel wird gezeigt, wie Sie mit curl das MCP-Tool get_alert_policy aufrufen.

Curl-Anfrage
                  
curl --location 'https://monitoring.googleapis.com/mcp' \
--header 'content-type: application/json' \
--header 'accept: application/json, text/event-stream' \
--data '{
  "method": "tools/call",
  "params": {
    "name": "get_alert_policy",
    "arguments": {
      // provide these details according to the tool's MCP specification
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'
                

Eingabeschema

Das Protokoll für die GetAlertPolicy-Anfrage.

GetAlertPolicyRequest

JSON-Darstellung
{
  "name": string
}
Felder
name

string

Erforderlich. Die abzurufende Benachrichtigungsrichtlinie. Das Format dafür ist:

projects/[PROJECT_ID_OR_NUMBER]/alertPolicies/[ALERT_POLICY_ID]

Ausgabeschema

Eine Beschreibung der Bedingungen, unter denen ein Aspekt Ihres Systems als „fehlerhaft“ gilt, und der Möglichkeiten, Personen oder Dienste über diesen Zustand zu informieren. Eine Übersicht über Benachrichtigungsrichtlinien finden Sie unter Einführung in Benachrichtigungen.

Benachrichtigungsrichtlinie

JSON-Darstellung
{
  "name": string,
  "displayName": string,
  "documentation": {
    object (Documentation)
  },
  "userLabels": {
    string: string,
    ...
  },
  "conditions": [
    {
      object (Condition)
    }
  ],
  "combiner": enum (ConditionCombinerType),
  "enabled": boolean,
  "validity": {
    object (Status)
  },
  "notificationChannels": [
    string
  ],
  "creationRecord": {
    object (MutationRecord)
  },
  "mutationRecord": {
    object (MutationRecord)
  },
  "alertStrategy": {
    object (AlertStrategy)
  },
  "severity": enum (Severity)
}
Felder
name

string

ID. Erforderlich, wenn die Richtlinie vorhanden ist. Der Ressourcenname für diese Richtlinie. Das Format dafür ist:

projects/[PROJECT_ID_OR_NUMBER]/alertPolicies/[ALERT_POLICY_ID]

[ALERT_POLICY_ID] wird von Cloud Monitoring zugewiesen, wenn die Richtlinie erstellt wird. Wenn Sie die Methode alertPolicies.create aufrufen, darf das Feld name nicht in der Benachrichtigungsrichtlinie enthalten sein, die als Teil der Anfrage übergeben wird.

displayName

string

Ein kurzer Name oder Ausdruck, mit dem die Richtlinie in Dashboards, Benachrichtigungen und Vorfällen identifiziert wird. Verwenden Sie nicht denselben Anzeigenamen für mehrere Richtlinien im selben Projekt, um Verwechslungen zu vermeiden. Der Name darf maximal 512 Unicode-Zeichen lang sein.

Die Konvention für den display_name einer PrometheusQueryLanguageCondition ist „{rule group name}/{alert name}“, wobei {rule group name} und {alert name} aus der entsprechenden Prometheus-Konfigurationsdatei stammen sollten. Diese Konvention wird nicht erzwungen. In jedem Fall ist display_name kein eindeutiger Schlüssel für AlertPolicy.

documentation

object (Documentation)

Dokumentation, die in Benachrichtigungen und Vorfällen enthalten ist, die mit dieser Richtlinie verknüpft sind. Die Dokumentation sollte Informationen enthalten, die es den Beauftragten ermöglichen, die von der Benachrichtigungsrichtlinie erkannten zugrunde liegenden Probleme zu verstehen, zu beheben, zu eskalieren und zu korrigieren. In Benachrichtigungskanälen mit begrenzter Kapazität wird diese Dokumentation möglicherweise nicht angezeigt.

userLabels

map (key: string, value: string)

Vom Nutzer bereitgestellte Schlüssel/Wert-Daten, die zum Organisieren und Identifizieren der AlertPolicy-Objekte verwendet werden.

Das Feld kann bis zu 64 Einträge enthalten. Jeder Schlüssel und Wert ist auf 63 Unicode-Zeichen oder 128 Bytes begrenzt, je nachdem, was kürzer ist. Labels und Werte dürfen nur Kleinbuchstaben, Ziffern, Unterstriche und Bindestriche enthalten. Schlüssel müssen mit einem Buchstaben beginnen.

Beachten Sie, dass „Prometheus {alert name}“ ein gültiger Prometheus-Labelname ist, während „Prometheus {rule group}“ ein uneingeschränkter UTF-8-String ist. Das bedeutet, dass sie nicht unverändert in Nutzerlabels gespeichert werden können, da sie Zeichen enthalten können, die in Nutzerlabel-Werten nicht zulässig sind.

Ein Objekt, das eine Liste von "key": value-Paaren enthält. Beispiel: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

conditions[]

object (Condition)

Eine Liste mit Bedingungen für die Richtlinie. Die Bedingungen werden je nach Feld combiner mit AND oder OR kombiniert. Wenn die kombinierten Bedingungen als „true“ ausgewertet werden, wird ein Vorfall erstellt. Eine Richtlinie kann ein bis sechs Bedingungen haben. Wenn condition_time_series_query_language vorhanden ist, muss es das einzige condition sein. Wenn condition_monitoring_query_language vorhanden ist, muss es das einzige condition sein.

combiner

enum (ConditionCombinerType)

Wie die Ergebnisse mehrerer Bedingungen kombiniert werden, um zu ermitteln, ob ein Vorfall geöffnet werden soll. Wenn condition_time_series_query_language vorhanden ist, muss dies COMBINE_UNSPECIFIED sein.

enabled

boolean

Gibt an, ob die Richtlinie aktiviert ist. Beim Schreiben wird standardmäßig davon ausgegangen, dass die Richtlinie aktiviert ist, wenn sie nicht konfiguriert ist. Beim Lesen sollten Clients keine Annahmen über den Status treffen, wenn er nicht ausgefüllt wurde. Das Feld sollte bei List- und Get-Vorgängen immer ausgefüllt sein, es sei denn, es wurde eine Feldprojektion angegeben, durch die es entfernt wird.

validity

object (Status)

Schreibgeschützte Beschreibung, warum die Benachrichtigungsrichtlinie ungültig ist. Dieses Feld wird nur festgelegt, wenn die Benachrichtigungsrichtlinie ungültig ist. Durch eine ungültige Benachrichtigungsrichtlinie werden keine Vorfälle generiert.

notificationChannels[]

string

Gibt die Benachrichtigungskanäle an, an die Benachrichtigungen gesendet werden sollen, wenn Vorfälle geöffnet oder geschlossen werden oder wenn bei einem bereits geöffneten Vorfall neue Verstöße auftreten. Jedes Element dieses Arrays entspricht dem Feld name in jedem der NotificationChannel-Objekte, die von der Methode ListNotificationChannels zurückgegeben werden. Die Einträge in diesem Feld haben das folgende Format:

projects/[PROJECT_ID_OR_NUMBER]/notificationChannels/[CHANNEL_ID]
creationRecord

object (MutationRecord)

Ein schreibgeschützter Datensatz der Erstellung der Benachrichtigungsrichtlinie. Wenn dieses Feld in einem Aufruf zum Erstellen oder Aktualisieren angegeben wird, wird es ignoriert.

mutationRecord

object (MutationRecord)

Ein schreibgeschützter Datensatz der letzten Änderung an der Benachrichtigungsrichtlinie. Wenn dieses Feld in einem Aufruf zum Erstellen oder Aktualisieren angegeben wird, wird es ignoriert.

alertStrategy

object (AlertStrategy)

Steuern, wie die Benachrichtigungskanäle dieser Benachrichtigungsrichtlinie benachrichtigt werden.

severity

enum (Severity)

Optional. Der Schweregrad einer Benachrichtigungsrichtlinie gibt an, wie wichtig die von dieser Richtlinie generierten Vorfälle sind. Der Schweregrad wird auf der Seite mit den Vorfalldetails und in Benachrichtigungen angezeigt.

Dokumentation

JSON-Darstellung
{
  "content": string,
  "mimeType": string,
  "subject": string,
  "links": [
    {
      object (Link)
    }
  ]
}
Felder
content

string

Der Text der Dokumentation, interpretiert gemäß mime_type. Der Inhalt darf nicht mehr als 8.192 Unicode-Zeichen und nicht mehr als 10.240 Byte umfassen, wenn er im UTF-8-Format codiert ist. Es gilt jeweils der kleinere Wert. Dieser Text kann mithilfe von Variablen als Vorlage erstellt werden.

mimeType

string

Das Format des Felds content. Derzeit wird nur der Wert "text/markdown" unterstützt. Weitere Informationen finden Sie unter Markdown.

subject

string

Optional. Der Betreff der Benachrichtigung. Die Betreffzeile darf nicht länger als 10.240 Byte sein. In Benachrichtigungen, die durch diese Richtlinie generiert werden, wird der Inhalt der Betreffzeile nach der Variablenerweiterung auf maximal 255 Byte gekürzt, und zwar an der letzten UTF‑8-Zeichengrenze. Das Limit von 255 Byte wird in diesem Thread empfohlen. Das ist sowohl das Limit, das von einigen Drittanbieterprodukten für Tickets auferlegt wird, als auch die übliche Definition von Textfeldern in Datenbanken als VARCHAR(255).

Der Inhalt der Betreffzeile kann mithilfe von Variablen als Vorlage erstellt werden. Wenn dieses Feld fehlt oder leer ist, wird eine Standard-Betreffzeile generiert.

links[]

object (Link)

Optional. Links zu Inhalten wie Playbooks, Repositories und anderen Ressourcen. Dieses Feld kann bis zu drei Einträge enthalten.

JSON-Darstellung
{
  "displayName": string,
  "url": string
}
Felder
displayName

string

Ein kurzer Anzeigename für den Link. Der Anzeigename darf nicht leer sein und darf nicht länger als 63 Zeichen sein. Beispiel: „playbook“.

url

string

Die URL einer Webseite. Eine URL kann durch Verwendung von Variablen im Pfad oder in den Abfrageparametern als Vorlage erstellt werden. Die Gesamtlänge einer URL darf vor und nach der Variablenerweiterung 2.083 Zeichen nicht überschreiten. Beispiel: „https://meine_domain.de/playbook?name=${resource.name}“

UserLabelsEntry

JSON-Darstellung
{
  "key": string,
  "value": string
}
Felder
key

string

value

string

Bedingung

JSON-Darstellung
{
  "name": string,
  "displayName": string,

  // Union field condition can be only one of the following:
  "conditionThreshold": {
    object (MetricThreshold)
  },
  "conditionAbsent": {
    object (MetricAbsence)
  },
  "conditionMatchedLog": {
    object (LogMatch)
  },
  "conditionMonitoringQueryLanguage": {
    object (MonitoringQueryLanguageCondition)
  },
  "conditionPrometheusQueryLanguage": {
    object (PrometheusQueryLanguageCondition)
  },
  "conditionSql": {
    object (SqlCondition)
  }
  // End of list of possible types for union field condition.
}
Felder
name

string

Erforderlich, wenn die Bedingung vorhanden ist. Der eindeutige Ressourcenname für diese Bedingung. Das Format ist:

projects/[PROJECT_ID_OR_NUMBER]/alertPolicies/[POLICY_ID]/conditions/[CONDITION_ID]

[CONDITION_ID] wird von Cloud Monitoring zugewiesen, wenn die Bedingung als Teil einer neuen oder aktualisierten Benachrichtigungsrichtlinie erstellt wird.

Wenn Sie die Methode alertPolicies.create aufrufen, darf das Feld name nicht in den Bedingungen der angeforderten Benachrichtigungsrichtlinie enthalten sein. Cloud Monitoring erstellt die Bedingungs-IDs und nimmt sie in die neue Richtlinie auf.

Wenn Sie die Methode alertPolicies.update aufrufen, um eine Richtlinie zu aktualisieren, und dabei eine Bedingung name angeben, wird die vorhandene Bedingung aktualisiert. Bedingungen ohne Namen werden der aktualisierten Richtlinie hinzugefügt. Vorhandene Bedingungen werden gelöscht, wenn sie nicht aktualisiert werden.

Es empfiehlt sich, [CONDITION_ID] beizubehalten, wenn Sie nur geringfügige Änderungen vornehmen, z. B. an Bedingungsschwellen, ‑dauern oder ‑triggerwerten. Behandeln Sie die Änderung andernfalls als neue Bedingung und lassen Sie die vorhandene Bedingung löschen.

displayName

string

Ein kurzer Name oder Ausdruck, mit dem die Bedingung in Dashboards, Benachrichtigungen und Vorfällen identifiziert wird. Verwenden Sie nicht denselben Anzeigenamen für mehrere Bedingungen in derselben Richtlinie, um Verwechslungen zu vermeiden.

Union-Feld condition. Es wird nur einer der folgenden Bedingungstypen angegeben. Für condition ist nur einer der folgenden Werte zulässig:
conditionThreshold

object (MetricThreshold)

Eine Bedingung, bei der eine Zeitreihe mit einem Schwellenwert verglichen wird.

conditionAbsent

object (MetricAbsence)

Eine Bedingung, die prüft, ob für eine Zeitachse weiterhin neue Datenpunkte empfangen werden.

conditionMatchedLog

object (LogMatch)

Eine Bedingung, die nach Lognachrichten sucht, die bestimmten Einschränkungen entsprechen. Wenn diese Option festgelegt ist, dürfen keine anderen Bedingungen vorhanden sein.

conditionMonitoringQueryLanguage

object (MonitoringQueryLanguageCondition)

Eine Bedingung, in der die Monitoring-Abfragesprache zum Definieren von Benachrichtigungen verwendet wird.

conditionPrometheusQueryLanguage

object (PrometheusQueryLanguageCondition)

Eine Bedingung, in der die Prometheus-Abfragesprache verwendet wird, um Benachrichtigungen zu definieren.

conditionSql

object (SqlCondition)

Eine Bedingung, die das Ergebnis einer SQL-Abfrage regelmäßig auswertet.

MetricThreshold

JSON-Darstellung
{
  "filter": string,
  "aggregations": [
    {
      object (Aggregation)
    }
  ],
  "denominatorFilter": string,
  "denominatorAggregations": [
    {
      object (Aggregation)
    }
  ],
  "forecastOptions": {
    object (ForecastOptions)
  },
  "comparison": enum (ComparisonType),
  "thresholdValue": number,
  "duration": string,
  "trigger": {
    object (Trigger)
  },
  "evaluationMissingData": enum (EvaluationMissingData)
}
Felder
filter

string

Erforderlich. Ein Filter, der angibt, welche Zeitreihen mit dem Grenzwert verglichen werden sollen.

Der Filter ähnelt dem, der in der ListTimeSeries-Anfrage angegeben ist. Mit diesem Aufruf können Sie die abzurufenden bzw. zu verarbeitenden Zeitreihen überprüfen. Der Filter muss den Messwerttyp und den Ressourcentyp angeben. Optional können Ressourcen- und Messwertlabels angegeben werden. Dieses Feld darf nicht länger als 2.048 Unicode-Zeichen sein.

aggregations[]

object (Aggregation)

Gibt die Ausrichtung von Datenpunkten in einzelnen Zeitreihen sowie die Kombination der abgerufenen Zeitreihen an, z. B. beim Aggregieren mehrerer Streams für jede Ressource zu einem einzelnen Stream für jede Ressource oder beim Aggregieren von Streams für alle Mitglieder einer Gruppe von Ressourcen. Mehrere Aggregationen werden in der angegebenen Reihenfolge angewendet.

Dieses Feld ähnelt dem in der ListTimeSeries-Anfrage. Es empfiehlt sich, beim Debuggen dieses Felds die Methode ListTimeSeries zu verwenden.

denominatorFilter

string

Ein Filter, der eine Zeitreihe identifiziert, die als Nenner eines Verhältnisses verwendet werden soll, das mit dem Grenzwert verglichen wird. Wenn ein denominator_filter angegeben ist, wird die Zeitreihe, die im Feld filter angegeben ist, als Zähler verwendet.

Im Filter muss der Messwerttyp angegeben werden. Optional können Einschränkungen für Ressourcentyp, Ressourcenlabels und Messwertlabels enthalten sein. Dieses Feld darf nicht länger als 2.048 Unicode-Zeichen sein.

denominatorAggregations[]

object (Aggregation)

Gibt die Ausrichtung der Datenpunkte in den einzelnen Zeitreihen an, die durch denominatorFilter ausgewählt werden, sowie die Art und Weise, wie die abgerufenen Zeitreihen kombiniert werden sollen (z. B. beim Aggregieren mehrerer Streams für jede Ressource zu einem einzelnen Stream für jede Ressource oder beim Aggregieren von Streams für alle Mitglieder einer Gruppe von Ressourcen).

Beim Berechnen von Verhältnissen müssen für die Felder aggregations und denominator_aggregations derselbe Abgleichszeitraum verwendet werden. Außerdem müssen Zeitreihen mit derselben Periodizität und denselben Labels erstellt werden.

forecastOptions

object (ForecastOptions)

Wenn dieses Feld vorhanden ist, wird mit der Bedingung MetricThreshold vorhergesagt, ob der Grenzwert für die Zeitreihe innerhalb des Zeitraums forecast_horizon überschritten wird. Wenn dieses Feld nicht festgelegt ist, wird der aktuelle Wert der Zeitreihe mit dem Schwellenwert verglichen.MetricThreshold

comparison

enum (ComparisonType)

Der Vergleich, der zwischen den Zeitreihen (angegeben durch filter und aggregation) und dem Grenzwert (angegeben durch threshold_value) angewendet werden soll. Der Vergleich wird auf jede Zeitreihe angewendet, wobei sich die Zeitreihe auf der linken Seite und der Grenzwert auf der rechten Seite befindet.

Derzeit werden nur COMPARISON_LT und COMPARISON_GT unterstützt.

thresholdValue

number

Ein Wert, mit dem die Zeitreihe verglichen werden soll.

duration

string (Duration format)

Erforderlich. Die Zeit, die eine Zeitreihe den Schwellenwert überschreiten muss, um als fehlerhaft zu gelten. Derzeit werden nur Werte unterstützt, die ein Vielfaches einer Minute sind, z.B. 0, 60, 120 oder 300 Sekunden. Wenn ein ungültiger Wert angegeben wird, wird ein Fehler zurückgegeben. Bei der Auswahl eines Zeitraums sollten Sie die Häufigkeit der zugrunde liegenden Zeitachsendaten berücksichtigen, die auch durch Ausrichtungen im Feld aggregations beeinflusst werden können. Ein guter Zeitraum ist lang genug, damit ein einzelner Ausreißer keine falschen Benachrichtigungen auslöst, aber kurz genug, damit fehlerhafte Zustände schnell erkannt und gemeldet werden.

Die Dauer in Sekunden mit bis zu neun Nachkommastellen und am Ende mit „s“. Beispiel: "3.5s".

trigger

object (Trigger)

Die Anzahl oder der Prozentsatz der Zeitreihen, für die der Vergleich gelten muss, damit die Bedingung ausgelöst wird. Wenn keine Angabe erfolgt, wird die Bedingung ausgelöst, wenn der Vergleich für eine der Zeitreihen zutrifft, die durch filter und aggregations oder durch das Verhältnis identifiziert wurden, falls denominator_filter und denominator_aggregations angegeben sind.

evaluationMissingData

enum (EvaluationMissingData)

Eine Bedingungssteuerung, mit der festgelegt wird, wie Messwertschwellenbedingungen ausgewertet werden, wenn keine Daten mehr eingehen. Damit Sie dieses Steuerelement verwenden können, muss der Wert des Felds duration größer oder gleich 60 Sekunden sein.

Aggregation

JSON-Darstellung
{
  "alignmentPeriod": string,
  "perSeriesAligner": enum (Aligner),
  "crossSeriesReducer": enum (Reducer),
  "groupByFields": [
    string
  ]
}
Felder
alignmentPeriod

string (Duration format)

Mit alignment_period wird ein Zeitintervall in Sekunden angegeben, mit dem die Daten in allen time series in konsistente Zeitblöcke unterteilt werden. Dies erfolgt, bevor der Abgleich pro Reihe auf die Daten angewendet werden kann.

Der Wert muss mindestens 60 Sekunden betragen. Wenn ein anderer Abgleich als ALIGN_NONE angegeben ist, ist dieses Feld erforderlich. Andernfalls wird ein Fehler zurückgegeben. Wenn kein Aligner pro Zeitreihe angegeben ist oder der Aligner ALIGN_NONE angegeben ist, wird dieses Feld ignoriert.

Der Höchstwert für alignment_period beträgt für Diagramme 104 Wochen (2 Jahre) und für Benachrichtigungsrichtlinien 90.000 Sekunden (25 Stunden).

Die Dauer in Sekunden mit bis zu neun Nachkommastellen und am Ende mit „s“. Beispiel: "3.5s".

perSeriesAligner

enum (Aligner)

Ein Aligner beschreibt, wie die Datenpunkte in einer einzelnen Zeitreihe zeitlich ausgerichtet werden. Mit Ausnahme von ALIGN_NONE werden bei allen Ausrichtungen alle Datenpunkte in einem alignment_period mathematisch gruppiert. Das Ergebnis ist ein einzelner Datenpunkt für jedes alignment_period mit dem Endzeitstempel am Ende des Zeitraums.

Nicht alle Ausrichtungsvorgänge können auf alle Zeitreihen angewendet werden. Die gültigen Optionen hängen von metric_kind und value_type der ursprünglichen Zeitachse ab. Durch die Ausrichtung kann sich die metric_kind oder die value_type der Zeitreihe ändern.

Zeitachsendaten müssen ausgerichtet werden, um eine zeitachsenübergreifende Reduzierung durchzuführen. Wenn cross_series_reducer angegeben ist, muss auch per_series_aligner angegeben werden und darf nicht gleich ALIGN_NONE sein. Außerdem muss alignment_period angegeben werden. Andernfalls wird ein Fehler zurückgegeben.

crossSeriesReducer

enum (Reducer)

Der Reduktionsvorgang, der verwendet werden soll, um Zeitreihen in einer einzelnen Zeitreihe zu kombinieren. Der Wert jedes Datenpunkts in der resultierenden Reihe ist eine Funktion aller bereits ausgerichteten Werte in den Eingabezeitreihen.

Nicht alle Reduzierungsvorgänge können auf alle Zeitreihen angewendet werden. Die gültigen Optionen hängen von metric_kind und value_type der ursprünglichen Zeitachse ab. Durch die Reduzierung kann eine Zeitachse mit einem anderen metric_kind oder value_type als die Eingabezeitachse entstehen.

Zeitachsendaten müssen zuerst ausgerichtet werden (siehe per_series_aligner), damit eine zeitachsenübergreifende Reduzierung möglich ist. Wenn cross_series_reducer angegeben ist, muss auch per_series_aligner angegeben werden und darf nicht ALIGN_NONE sein. Außerdem muss ein alignment_period angegeben werden. Andernfalls wird ein Fehler zurückgegeben.

groupByFields[]

string

Die Gruppe der Felder, die beibehalten werden sollen, wenn cross_series_reducer angegeben ist. Mit group_by_fields wird festgelegt, wie die Zeitreihen in Teilmengen partitioniert werden, bevor der Aggregationsvorgang angewendet wird. Jede Teilmenge enthält Zeitreihen mit demselben Wert für jedes der Gruppierungsfelder. Jede einzelne Zeitreihe gehört zu genau einer Teilmenge. Der cross_series_reducer wird auf jede Teilmenge von Zeitreihen angewendet. Eine Reduzierung über verschiedene Ressourcentypen hinweg ist nicht möglich. Dieses Feld enthält also implizit resource.type. Felder, die nicht in group_by_fields angegeben sind, werden aggregiert. Wenn group_by_fields nicht angegeben ist und alle Zeitreihen denselben Ressourcentyp haben, werden die Zeitreihen zu einer einzelnen Ausgabezeitreihe zusammengefasst. Wenn cross_series_reducer nicht definiert ist, wird dieses Feld ignoriert.

Dauer

JSON-Darstellung
{
  "seconds": string,
  "nanos": integer
}
Felder
seconds

string (int64 format)

Signierte Sekunden des Zeitraums. Muss zwischen -315.576.000.000 und +315.576.000.000 (einschließlich) liegen. Hinweis: Diese Grenzen werden so berechnet: 60 Sek./Min. × 60 Min./Std. × 24 Std./Tag × 365,25 Tage/Jahr × 10.000 Jahre

nanos

integer

Signierte Sekundenbruchteile mit Nanosekunden-Auflösung für den Zeitraum. Dauern von weniger als einer Sekunde werden mit dem Feld „0“ seconds und einem positiven oder negativen Feld nanos dargestellt. Bei Zeiträumen von einer Sekunde oder mehr muss ein Wert ungleich null für das Feld nanos dasselbe Vorzeichen wie das Feld seconds haben. Muss zwischen -999.999.999 und +999.999.999 liegen (einschließlich).

ForecastOptions

JSON-Darstellung
{
  "forecastHorizon": string
}
Felder
forecastHorizon

string (Duration format)

Erforderlich. Der Zeitraum in der Zukunft, für den prognostiziert werden soll, ob eine Zeitreihe den Grenzwert überschreitet. Wenn der prognostizierte Wert den Grenzwert überschreitet und die Überschreitung in allen Prognosen für die konfigurierte duration beobachtet wird, gilt die Zeitreihe als fehlerhaft. Der Prognosezeitraum kann zwischen 1 und 60 Stunden liegen.

Die Dauer in Sekunden mit bis zu neun Nachkommastellen und am Ende mit „s“. Beispiel: "3.5s".

Trigger

JSON-Darstellung
{

  // Union field type can be only one of the following:
  "count": integer,
  "percent": number
  // End of list of possible types for union field type.
}
Felder
Union-Feld type. Eine Art von Trigger. Für type ist nur einer der folgenden Werte zulässig:
count

integer

Die absolute Anzahl der Zeitreihen, die das Prädikat nicht erfüllen müssen, damit die Bedingung ausgelöst wird.

percent

number

Der Prozentsatz der Zeitreihen, die das Prädikat nicht erfüllen müssen, damit die Bedingung ausgelöst wird.

MetricAbsence

JSON-Darstellung
{
  "filter": string,
  "aggregations": [
    {
      object (Aggregation)
    }
  ],
  "duration": string,
  "trigger": {
    object (Trigger)
  }
}
Felder
filter

string

Erforderlich. Ein Filter, der angibt, welche Zeitreihen mit dem Grenzwert verglichen werden sollen.

Der Filter ähnelt dem, der in der ListTimeSeries-Anfrage angegeben ist. Mit diesem Aufruf können Sie die abzurufenden bzw. zu verarbeitenden Zeitreihen überprüfen. Der Filter muss den Messwerttyp und den Ressourcentyp angeben. Optional können Ressourcen- und Messwertlabels angegeben werden. Dieses Feld darf nicht länger als 2.048 Unicode-Zeichen sein.

aggregations[]

object (Aggregation)

Gibt die Ausrichtung von Datenpunkten in einzelnen Zeitreihen sowie die Kombination der abgerufenen Zeitreihen an, z. B. beim Aggregieren mehrerer Streams für jede Ressource zu einem einzelnen Stream für jede Ressource oder beim Aggregieren von Streams für alle Mitglieder einer Gruppe von Ressourcen. Mehrere Aggregationen werden in der angegebenen Reihenfolge angewendet.

Dieses Feld ähnelt dem in der ListTimeSeries-Anfrage. Es empfiehlt sich, beim Debuggen dieses Felds die Methode ListTimeSeries zu verwenden.

duration

string (Duration format)

Erforderlich. Die Zeit, die eine Zeitreihe keine neuen Daten liefern muss, um als fehlerhaft zu gelten. Der Mindestwert dieses Felds beträgt 120 Sekunden. Größere Werte, die ein Vielfaches einer Minute sind, z. B. 240 oder 300 Sekunden, werden unterstützt. Wenn ein ungültiger Wert angegeben wird, wird ein Fehler zurückgegeben.

Die Dauer in Sekunden mit bis zu neun Nachkommastellen und am Ende mit „s“. Beispiel: "3.5s".

trigger

object (Trigger)

Die Anzahl oder der Prozentsatz der Zeitreihen, für die der Vergleich gelten muss, damit die Bedingung ausgelöst wird. Wenn nichts angegeben ist, wird die Bedingung ausgelöst, wenn der Vergleich für eine der Zeitreihen zutrifft, die durch filter und aggregations identifiziert wurden.

LogMatch

JSON-Darstellung
{
  "filter": string,
  "labelExtractors": {
    string: string,
    ...
  }
}
Felder
filter

string

Erforderlich. Ein logbasierter Filter. Informationen zum Erstellen dieses Filters finden Sie unter Erweiterte Logabfragen.

labelExtractors

map (key: string, value: string)

Optional. Eine Zuordnung von einem Labelschlüssel zu einem Extrahiererausdruck, mit dem der Wert für diesen Labelschlüssel extrahiert wird. Jeder Eintrag in dieser Zuordnung ist eine Spezifikation dafür, wie Daten aus Logeinträgen extrahiert werden sollen, die mit filter übereinstimmen. Jede Kombination aus extrahierten Werten wird als separate Regel für das Auslösen von Benachrichtigungen behandelt. Label-Schlüssel und entsprechende Werte können in Benachrichtigungen verwendet werden, die durch diese Bedingung generiert werden.

Informationen zur Syntax und Beispiele finden Sie in der Dokumentation zu logbasierten Messwerten.valueExtractor

Ein Objekt, das eine Liste von "key": value-Paaren enthält. Beispiel: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

LabelExtractorsEntry

JSON-Darstellung
{
  "key": string,
  "value": string
}
Felder
key

string

value

string

MonitoringQueryLanguageCondition

JSON-Darstellung
{
  "query": string,
  "duration": string,
  "trigger": {
    object (Trigger)
  },
  "evaluationMissingData": enum (EvaluationMissingData)
}
Felder
query

string

Monitoring-Abfragesprache-Abfrage, die einen booleschen Stream ausgibt.

duration

string (Duration format)

Optional. Die Zeit, die eine Zeitreihe den Schwellenwert überschreiten muss, um als fehlerhaft zu gelten. Derzeit werden nur Werte unterstützt, die ein Vielfaches einer Minute sind, z.B. 0, 60, 120 oder 300 Sekunden. Wenn ein ungültiger Wert angegeben wird, wird ein Fehler zurückgegeben. Bei der Auswahl eines Zeitraums sollten Sie die Häufigkeit der zugrunde liegenden Zeitachsendaten berücksichtigen, die auch durch Ausrichtungen im Feld aggregations beeinflusst werden können. Ein guter Zeitraum ist lang genug, damit ein einzelner Ausreißer keine falschen Benachrichtigungen auslöst, aber kurz genug, damit fehlerhafte Zustände schnell erkannt und gemeldet werden. Der Standardwert ist null.

Die Dauer in Sekunden mit bis zu neun Nachkommastellen und am Ende mit „s“. Beispiel: "3.5s".

trigger

object (Trigger)

Die Anzahl oder der Prozentsatz der Zeitreihen, für die der Vergleich gelten muss, damit die Bedingung ausgelöst wird. Wenn keine Angabe erfolgt, wird die Bedingung ausgelöst, wenn der Vergleich für eine der Zeitreihen zutrifft, die durch filter und aggregations oder durch das Verhältnis identifiziert wurden, falls denominator_filter und denominator_aggregations angegeben sind.

evaluationMissingData

enum (EvaluationMissingData)

Eine Bedingungssteuerung, mit der festgelegt wird, wie Messwertschwellenbedingungen ausgewertet werden, wenn keine Daten mehr eingehen.

PrometheusQueryLanguageCondition

JSON-Darstellung
{
  "query": string,
  "duration": string,
  "evaluationInterval": string,
  "labels": {
    string: string,
    ...
  },
  "ruleGroup": string,
  "alertRule": string,
  "disableMetricValidation": boolean
}
Felder
query

string

Erforderlich. Der PromQL-Ausdruck, der ausgewertet werden soll. In jedem Bewertungszyklus wird dieser Ausdruck zur aktuellen Zeit ausgewertet und alle resultierenden Zeitreihen werden zu ausstehenden/auslösenden Benachrichtigungen. Dieses Feld darf nicht leer sein.

duration

string (Duration format)

Optional. Benachrichtigungen gelten als ausgelöst, wenn ihr PromQL-Ausdruck in diesem Zeitraum als „true“ ausgewertet wurde. Benachrichtigungen, deren PromQL-Ausdruck nicht lange genug als „true“ ausgewertet wurde, gelten als ausstehend. Muss eine nicht negative Dauer sein oder fehlen. Dieses Feld ist optional. Der Standardwert ist null.

Die Dauer in Sekunden mit bis zu neun Nachkommastellen und am Ende mit „s“. Beispiel: "3.5s".

evaluationInterval

string (Duration format)

Optional. Wie oft diese Regel ausgewertet werden soll. Muss ein positives Vielfaches von 30 Sekunden sein oder fehlen. Dieses Feld ist optional. Der Standardwert beträgt 30 Sekunden. Wenn diese PrometheusQueryLanguageCondition aus einer Prometheus-Benachrichtigungsregel generiert wurde, sollte dieser Wert aus der einschließenden Regelgruppe übernommen werden.

Die Dauer in Sekunden mit bis zu neun Nachkommastellen und am Ende mit „s“. Beispiel: "3.5s".

labels

map (key: string, value: string)

Optional. Labels, die dem PromQL-Abfrageergebnis hinzugefügt oder darin überschrieben werden sollen. Labelnamen müssen gültig sein. Labelwerte können mithilfe von Variablen als Vorlage erstellt werden. Die einzigen verfügbaren Variablennamen sind die Namen der Labels im PromQL-Ergebnis, einschließlich „__name__“ und „value“. „labels“ kann leer sein.

Ein Objekt, das eine Liste von "key": value-Paaren enthält. Beispiel: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

ruleGroup

string

Optional. Der Name der Regelgruppe für diese Benachrichtigung in der entsprechenden Prometheus-Konfigurationsdatei.

Bei einigen externen Tools muss dieses Feld korrekt ausgefüllt sein, damit auf die ursprüngliche Prometheus-Konfigurationsdatei verwiesen werden kann. Der Name der Regelgruppe und der Name der Benachrichtigung sind erforderlich, um die entsprechenden AlertPolicies zu aktualisieren, falls sich die Definition der Regelgruppe in Zukunft ändert.

Dieses Feld ist optional. Wenn dieses Feld nicht leer ist, muss es einen gültigen UTF-8-String enthalten. Dieses Feld darf nicht länger als 2.048 Unicode-Zeichen sein.

alertRule

string

Optional. Der Name der Benachrichtigungsregel für diese Benachrichtigung in der entsprechenden Prometheus-Konfigurationsdatei.

Bei einigen externen Tools muss dieses Feld korrekt ausgefüllt sein, damit auf die ursprüngliche Prometheus-Konfigurationsdatei verwiesen werden kann. Der Name der Regelgruppe und der Name der Benachrichtigung sind erforderlich, um die entsprechenden AlertPolicies zu aktualisieren, falls sich die Definition der Regelgruppe in Zukunft ändert.

Dieses Feld ist optional. Wenn dieses Feld nicht leer ist, muss es ein gültiger Prometheus-Labelname sein. Dieses Feld darf nicht länger als 2.048 Unicode-Zeichen sein.

disableMetricValidation

boolean

Optional. Gibt an, ob die Validierung der Messwertexistenz für diese Bedingung deaktiviert werden soll.

So können Benachrichtigungsrichtlinien für Messwerte definiert werden, die noch nicht vorhanden sind. Das verbessert erweiterte Kunden-Workflows wie das Konfigurieren von Benachrichtigungsrichtlinien mit Terraform.

Nutzer mit der Rolle monitoring.alertPolicyViewer können den Namen der nicht vorhandenen Messwert in der Bedingung der Benachrichtigungsrichtlinie sehen.

LabelsEntry

JSON-Darstellung
{
  "key": string,
  "value": string
}
Felder
key

string

value

string

SqlCondition

JSON-Darstellung
{
  "query": string,

  // Union field schedule can be only one of the following:
  "minutes": {
    object (Minutes)
  },
  "hourly": {
    object (Hourly)
  },
  "daily": {
    object (Daily)
  }
  // End of list of possible types for union field schedule.

  // Union field evaluate can be only one of the following:
  "rowCountTest": {
    object (RowCountTest)
  },
  "booleanTest": {
    object (BooleanTest)
  }
  // End of list of possible types for union field evaluate.
}
Felder
query

string

Erforderlich. Die auszuführende Log Analytics-SQL-Abfrage als String. Die Anfrage muss der erforderlichen Form entsprechen. Die Anfrage darf insbesondere nicht versuchen, die Eingabe nach Zeit zu filtern. Ein Filter wird automatisch angewendet, um die Eingabe so zu filtern, dass die Abfrage alle Zeilen erhält, die seit der letzten Ausführung der Abfrage empfangen wurden.

Mit der folgenden Abfrage werden beispielsweise alle Logeinträge mit einer HTTP-Anfrage extrahiert:

SELECT
  timestamp, log_name, severity, http_request, resource, labels
FROM
  my-project.global._Default._AllLogs
WHERE
  http_request IS NOT NULL
Union-Feld schedule. Der Zeitplan gibt an, wie oft die Abfrage ausgeführt werden soll. Für schedule ist nur einer der folgenden Werte zulässig:
minutes

object (Minutes)

Planen Sie die Ausführung der Abfrage in einem bestimmten Intervall.

hourly

object (Hourly)

Planen Sie die Ausführung der Abfrage alle paar Stunden.

daily

object (Daily)

Legen Sie fest, in welchen Intervallen die Abfrage ausgeführt werden soll.

Union-Feld evaluate. Der Test, der für das SQL-Ergebnis ausgeführt werden soll. Für evaluate ist nur einer der folgenden Werte zulässig:
rowCountTest

object (RowCountTest)

Zeilenanzahl anhand eines Grenzwerts testen

booleanTest

object (BooleanTest)

Prüfen Sie den booleschen Wert in der angegebenen Spalte.

Minuten

JSON-Darstellung
{
  "periodicity": integer
}
Felder
periodicity

integer

Erforderlich. Anzahl der Minuten zwischen den Ausführungen. Das Intervall muss mindestens 5 Minuten und höchstens 1.440 Minuten betragen.

Stündlich

JSON-Darstellung
{
  "periodicity": integer,

  // Union field _minute_offset can be only one of the following:
  "minuteOffset": integer
  // End of list of possible types for union field _minute_offset.
}
Felder
periodicity

integer

Erforderlich. Die Anzahl der Stunden zwischen den Ausführungen. Muss mindestens 1 Stunde und höchstens 48 Stunden betragen.

Union-Feld _minute_offset.

Für _minute_offset ist nur einer der folgenden Werte zulässig:

minuteOffset

integer

Optional. Die Anzahl der Minuten nach der Stunde (in UTC), zu der die Abfrage ausgeführt werden soll. Muss größer oder gleich 0 Minuten und kleiner oder gleich 59 Minuten sein. Wenn nichts angegeben ist, wird ein beliebiger Offset verwendet.

Täglich

JSON-Darstellung
{
  "periodicity": integer,
  "executionTime": {
    object (TimeOfDay)
  }
}
Felder
periodicity

integer

Erforderlich. Die Anzahl der Tage zwischen den Ausführungen. Muss größer oder gleich 1 Tag und kleiner oder gleich 31 Tage sein.

executionTime

object (TimeOfDay)

Optional. Die Tageszeit (in UTC), zu der die Abfrage ausgeführt werden soll. Wenn keine Angabe erfolgt, wählt der Server eine beliebige Tageszeit aus und führt die Abfrage jeden Tag zur selben Zeit aus.

TimeOfDay

JSON-Darstellung
{
  "hours": integer,
  "minutes": integer,
  "seconds": integer,
  "nanos": integer
}
Felder
hours

integer

Stunden eines Tages im 24-Stunden-Format. Muss größer oder gleich 0 und in der Regel kleiner oder gleich 23 sein. Eine API kann den Wert "24:00:00" für Szenarien wie Geschäftsschlusszeit zulassen.

minutes

integer

Minuten einer Stunde. Muss größer oder gleich 0 und kleiner oder gleich 59 sein.

seconds

integer

Sekunden einer Minute. Muss größer oder gleich 0 und in der Regel kleiner oder gleich 59 sein. Eine API kann den Wert 60 zulassen, wenn sie Schaltsekunden zulässt.

nanos

integer

Sekundenbruchteile in Nanosekunden. Muss größer oder gleich 0 und kleiner oder gleich 999.999.999 sein.

RowCountTest

JSON-Darstellung
{
  "comparison": enum (ComparisonType),
  "threshold": string
}
Felder
comparison

enum (ComparisonType)

Erforderlich. Der Vergleich, der zwischen der Anzahl der von der Abfrage zurückgegebenen Zeilen und dem Grenzwert angewendet werden soll.

threshold

string (int64 format)

Erforderlich. Der Wert, mit dem die Zeilenanzahl verglichen werden soll.

BooleanTest

JSON-Darstellung
{
  "column": string
}
Felder
column

string

Erforderlich. Der Name der Spalte, die den booleschen Wert enthält. Wenn der Wert in einer Zeile NULL ist, wird diese Zeile ignoriert.

BoolValue

JSON-Darstellung
{
  "value": boolean
}
Felder
value

boolean

Der boolesche Wert.

Status

JSON-Darstellung
{
  "code": integer,
  "message": string,
  "details": [
    {
      "@type": string,
      field1: ...,
      ...
    }
  ]
}
Felder
code

integer

Der Statuscode, der idealerweise ein ENUM-Wert von google.rpc.Code ist.

message

string

Eine an Entwickler gerichtete Fehlermeldung, die englischsprachig sein sollte. Jede für Nutzer sichtbare Fehlermeldung sollte lokalisiert und im Feld google.rpc.Status.details gesendet werden. Sie kann auch clientseitig lokalisiert werden.

details[]

object

Eine Auflistung aller Meldungen, die die Fehlerdetails enthalten. Es gibt einen gemeinsamen Satz von Nachrichtentypen, die APIs verwenden können.

Ein Objekt, das Felder eines beliebigen Typs enthält. Ein zusätzliches Feld "@type" enthält einen URI zur Identifizierung des Typs. Beispiel: { "id": 1234, "@type": "types.example.com/standard/id" }.

Beliebig

JSON-Darstellung
{
  "typeUrl": string,
  "value": string
}
Felder
typeUrl

string

Gibt den Typ der serialisierten Protobuf-Nachricht mit einem URI-Verweis an, der aus einem Präfix, das mit einem Schrägstrich endet, und dem vollständig qualifizierten Typnamen besteht.

Beispiel: type.googleapis.com/google.protobuf.StringValue

Dieser String muss mindestens ein /-Zeichen enthalten. Der Inhalt nach dem letzten / muss der vollständig qualifizierte Name des Typs in kanonischer Form ohne führenden Punkt sein. Schreiben Sie kein Schema in diese URI-Referenzen, damit Clients nicht versuchen, sie zu kontaktieren.

Das Präfix ist beliebig. Protobuf-Implementierungen entfernen einfach alles bis einschließlich des letzten /, um den Typ zu ermitteln. type.googleapis.com/ ist ein häufiges Standardpräfix, das für einige ältere Implementierungen erforderlich ist. Dieses Präfix gibt nicht den Ursprung des Typs an und URIs, die es enthalten, werden voraussichtlich nicht auf Anfragen reagieren.

Alle Typ-URL-Strings müssen gültige URI-Referenzen sein. Für das Textformat gilt die zusätzliche Einschränkung, dass der Inhalt der Referenz nur aus alphanumerischen Zeichen, prozentual codierten Escape-Sequenzen und Zeichen aus der folgenden Menge bestehen darf (ohne die äußeren Backticks): /-.~_!$&()*+,;=. Obwohl wir Prozentcodierungen zulassen, sollten Implementierungen sie nicht decodieren, um Verwechslungen mit vorhandenen Parsern zu vermeiden. Beispiel: type.googleapis.com%2FFoo sollte abgelehnt werden.

Im ursprünglichen Design von Any wurde die Möglichkeit in Betracht gezogen, einen Dienst zur Typauflösung unter diesen Typ-URLs zu starten. Protobuf hat jedoch nie einen solchen Dienst implementiert und betrachtet das Kontaktieren dieser URLs als problematisch und als potenzielles Sicherheitsproblem. Versuchen Sie nicht, URLs vom Typ „Kontakt“ aufzurufen.

value

string (bytes format)

Enthält eine Protobuf-Serialisierung des Typs, der durch „type_url“ beschrieben wird.

Ein base64-codierter String.

MutationRecord

JSON-Darstellung
{
  "mutateTime": string,
  "mutatedBy": string
}
Felder
mutateTime

string (Timestamp format)

Zeitpunkt der Änderung

Verwendet RFC 3339, wobei die generierte Ausgabe immer Z-normalisiert ist und 0, 3, 6 oder 9 Nachkommastellen verwendet. Andere Offsets als „Z“ werden ebenfalls akzeptiert. Beispiele: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" oder "2014-10-02T15:01:23+05:30".

mutatedBy

string

Die E‑Mail-Adresse des Nutzers, der die Änderung vornimmt.

Zeitstempel

JSON-Darstellung
{
  "seconds": string,
  "nanos": integer
}
Felder
seconds

string (int64 format)

Stellt Sekunden der UTC-Zeit seit Unix-Epoche 1970-01-01T00:00:00Z dar. Muss einschließlich zwischen -62135596800 und 253402300799 liegen (entspricht 0001-01-01T00:00:00Z bis 9999-12-31T23:59:59Z).

nanos

integer

Nicht negative Sekundenbruchteile Nanosekunden-Auflösung. Dieses Feld enthält den Nanosekundenanteil der Dauer und ist keine Alternative zu Sekunden. Negative Sekundenwerte mit Bruchteilen müssen weiterhin nicht negative Nano-Werte haben, die zeitlich vorwärts gezählt werden. Muss zwischen 0 und 999.999.999 liegen (einschließlich).

AlertStrategy

JSON-Darstellung
{
  "notificationRateLimit": {
    object (NotificationRateLimit)
  },
  "notificationPrompts": [
    enum (NotificationPrompt)
  ],
  "autoClose": string,
  "notificationChannelStrategy": [
    {
      object (NotificationChannelStrategy)
    }
  ]
}
Felder
notificationRateLimit

object (NotificationRateLimit)

Erforderlich für logbasierte Benachrichtigungsrichtlinien, d.h. Richtlinien mit einer LogMatch-Bedingung.

Dieses Limit wird nicht für Benachrichtigungsrichtlinien mit einer LogMatch-Bedingung implementiert.

notificationPrompts[]

enum (NotificationPrompt)

Bei logbasierten Benachrichtigungsrichtlinien ist der Benachrichtigungs-Prompt immer [OPENED]. Bei Benachrichtigungsrichtlinien, die nicht auf Logs basieren, können die Benachrichtigungsaufforderungen [OPENED] oder [OPENED, CLOSED] sein.

autoClose

string (Duration format)

Wenn für eine aktive Benachrichtigungsrichtlinie so lange keine Daten vorhanden sind, werden alle offenen Vorfälle geschlossen.

Die Dauer in Sekunden mit bis zu neun Nachkommastellen und am Ende mit „s“. Beispiel: "3.5s".

notificationChannelStrategy[]

object (NotificationChannelStrategy)

Sie können für jeden Kanal festlegen, wie Benachrichtigungen gesendet werden.

NotificationRateLimit

JSON-Darstellung
{
  "period": string
}
Felder
period

string (Duration format)

Nicht mehr als eine Benachrichtigung pro period.

Die Dauer in Sekunden mit bis zu neun Nachkommastellen und am Ende mit „s“. Beispiel: "3.5s".

NotificationChannelStrategy

JSON-Darstellung
{
  "notificationChannelNames": [
    string
  ],
  "renotifyInterval": string
}
Felder
notificationChannelNames[]

string

Der vollständige REST-Ressourcenname für die Benachrichtigungskanäle, für die diese Einstellungen gelten. Jeder dieser Werte entspricht dem Feld „name“ in einem der NotificationChannel-Objekte, auf die im Feld „notification_channels“ dieser AlertPolicy verwiesen wird. Das Format dafür ist:

projects/[PROJECT_ID_OR_NUMBER]/notificationChannels/[CHANNEL_ID]
renotifyInterval

string (Duration format)

Häufigkeit, mit der Erinnerungsbenachrichtigungen für offene Vorfälle gesendet werden sollen. Der Wert muss zwischen 30 Minuten und 24 Stunden liegen.

Die Dauer in Sekunden mit bis zu neun Nachkommastellen und am Ende mit „s“. Beispiel: "3.5s".

Aligner

Mit Aligner wird der Vorgang angegeben, der auf die Datenpunkte in jedem Ausrichtungszeitraum einer Zeitreihe angewendet wird. Mit Ausnahme von ALIGN_NONE, das angibt, dass keine Operation angewendet werden soll, wird bei jeder Ausrichtungsoperation die Gruppe von Datenwerten in jedem Ausrichtungszeitraum durch einen einzelnen Wert ersetzt: das Ergebnis der Anwendung der Operation auf die Datenwerte. Eine ausgerichtete Zeitachse hat am Ende jedes alignment_period einen einzelnen Datenwert.

Bei einer Ausrichtungsoperation kann sich auch der Datentyp der Werte ändern. Wenn Sie beispielsweise einen Zählvorgang auf boolesche Werte anwenden, sind die Daten value_type in der ursprünglichen Zeitreihe BOOLEAN, aber die value_type im ausgerichteten Ergebnis ist INT64.

Enums
ALIGN_NONE Keine Ausrichtung. Es werden Rohdaten zurückgegeben. Nicht gültig, wenn eine serienübergreifende Reduzierung angefordert wird. Die value_type des Ergebnisses entspricht der value_type der Eingabe.
ALIGN_DELTA

Anpassen und in DELTA konvertieren. Die Ausgabe lautet delta = y1 - y0.

Diese Ausrichtung ist für die Messwerte CUMULATIVE und DELTA gültig. Wenn der ausgewählte Abgleichszeitraum zu Zeiträumen ohne Daten führt, wird der abgeglichene Wert für einen solchen Zeitraum durch Interpolation erstellt. Die value_type des ausgerichteten Ergebnisses entspricht der value_type der Eingabe.

ALIGN_RATE

Daten ausrichten und in eine Rate umwandeln. Das Ergebnis wird als rate = (y1 - y0)/(t1 - t0) oder „Delta im Zeitverlauf“ berechnet. Dieser Aligner gibt die Steigung der Linie an, die durch den Wert am Anfang und am Ende von alignment_period verläuft.

Dieser Aligner ist für die Messwerte CUMULATIVE und DELTA mit numerischen Werten gültig. Wenn der ausgewählte Abgleichszeitraum zu Zeiträumen ohne Daten führt, wird der abgeglichene Wert für einen solchen Zeitraum durch Interpolation erstellt. Die Ausgabe ist ein GAUGE-Messwert mit value_type DOUBLE.

Wenn Sie mit „Rate“ die „prozentuale Änderung“ meinen, verwenden Sie stattdessen den ALIGN_PERCENT_CHANGE-Abgleich.

ALIGN_INTERPOLATE Datenpunkte werden ausgerichtet, indem zwischen benachbarten Punkten an der Grenze des Ausrichtungszeitraums interpoliert wird. Dieser Aligner ist für GAUGE-Messwerte mit numerischen Werten gültig. Die value_type des ausgerichteten Ergebnisses entspricht der value_type der Eingabe.
ALIGN_NEXT_OLDER Die Ausrichtung erfolgt, indem der aktuellste Datenpunkt vor dem Ende des Ausrichtungszeitraums an die Grenze am Ende des Ausrichtungszeitraums verschoben wird. Dieser Aligner ist für GAUGE-Messwerte verfügbar. Die value_type des ausgerichteten Ergebnisses entspricht der value_type der Eingabe.
ALIGN_MIN Richtet die Zeitreihe aus, indem der Mindestwert in jedem Ausrichtungszeitraum zurückgegeben wird. Dieser Aligner ist für die Messwerte GAUGE und DELTA mit numerischen Werten gültig. Die value_type des ausgerichteten Ergebnisses entspricht der value_type der Eingabe.
ALIGN_MAX Richtet die Zeitreihe aus, indem der Höchstwert in jedem Ausrichtungszeitraum zurückgegeben wird. Dieser Aligner ist für die Messwerte GAUGE und DELTA mit numerischen Werten gültig. Die value_type des ausgerichteten Ergebnisses entspricht der value_type der Eingabe.
ALIGN_MEAN Richten Sie die Zeitreihe aus, indem Sie den Mittelwert in jedem Ausrichtungszeitraum zurückgeben. Dieser Aligner ist für die Messwerte GAUGE und DELTA mit numerischen Werten gültig. Die value_type des angepassten Ergebnisses ist DOUBLE.
ALIGN_COUNT Richtet die Zeitreihe aus, indem die Anzahl der Werte in jedem Ausrichtungszeitraum zurückgegeben wird. Dieser Aligner ist für GAUGE- und DELTA-Messwerte mit numerischen oder booleschen Werten verfügbar. Die value_type des angepassten Ergebnisses ist INT64.
ALIGN_SUM Richtet die Zeitreihe aus, indem die Summe der Werte in jedem Ausrichtungszeitraum zurückgegeben wird. Dieser Aligner ist für GAUGE- und DELTA-Messwerte mit numerischen und Verteilungswerten gültig. Die value_type des ausgerichteten Ergebnisses entspricht der value_type der Eingabe.
ALIGN_STDDEV Richtet die Zeitreihe aus, indem die Standardabweichung der Werte in jedem Ausrichtungszeitraum zurückgegeben wird. Dieser Aligner ist für die Messwerte GAUGE und DELTA mit numerischen Werten gültig. Die value_type der Ausgabe ist DOUBLE.
ALIGN_COUNT_TRUE Richten Sie die Zeitachse aus, indem Sie die Anzahl der True-Werte in jedem Ausrichtungszeitraum zurückgeben. Dieser Aligner ist für GAUGE-Messwerte mit booleschen Werten gültig. Die value_type der Ausgabe ist INT64.
ALIGN_COUNT_FALSE Richten Sie die Zeitachse aus, indem Sie die Anzahl der False-Werte in jedem Ausrichtungszeitraum zurückgeben. Dieser Aligner ist für GAUGE-Messwerte mit booleschen Werten gültig. Die value_type der Ausgabe ist INT64.
ALIGN_FRACTION_TRUE Richten Sie die Zeitreihe aus, indem Sie das Verhältnis der Anzahl der True-Werte zur Gesamtzahl der Werte in jedem Ausrichtungszeitraum zurückgeben. Dieser Aligner ist für GAUGE-Messwerte mit booleschen Werten gültig. Der Ausgabewert liegt im Bereich [0,0, 1,0] und hat value_type DOUBLE.
ALIGN_PERCENTILE_99 Richten Sie die Zeitreihen mit Perzentilaggregation aus. Der sich ergebende Datenpunkt in jedem Ausrichtungszeitraum ist das 99. Perzentil aller Datenpunkte im Zeitraum. Dieser Aligner ist für die Messwerte GAUGE und DELTA mit Verteilungswerten gültig. Die Ausgabe ist ein GAUGE-Messwert mit value_type DOUBLE.
ALIGN_PERCENTILE_95 Richten Sie die Zeitreihen mit Perzentilaggregation aus. Der sich ergebende Datenpunkt in jedem Ausrichtungszeitraum ist das 95. Perzentil aller Datenpunkte im Zeitraum. Dieser Aligner ist für die Messwerte GAUGE und DELTA mit Verteilungswerten gültig. Die Ausgabe ist ein GAUGE-Messwert mit value_type DOUBLE.
ALIGN_PERCENTILE_50 Richten Sie die Zeitreihen mit Perzentilaggregation aus. Der sich ergebende Datenpunkt in jedem Ausrichtungszeitraum ist das 50. Perzentil aller Datenpunkte im Zeitraum. Dieser Aligner ist für die Messwerte GAUGE und DELTA mit Verteilungswerten gültig. Die Ausgabe ist ein GAUGE-Messwert mit value_type DOUBLE.
ALIGN_PERCENTILE_05 Richten Sie die Zeitreihen mit Perzentilaggregation aus. Der sich ergebende Datenpunkt in jedem Ausrichtungszeitraum ist das 5. Perzentil aller Datenpunkte im Zeitraum. Dieser Aligner ist für die Messwerte GAUGE und DELTA mit Verteilungswerten gültig. Die Ausgabe ist ein GAUGE-Messwert mit value_type DOUBLE.
ALIGN_PERCENT_CHANGE

Ausrichten und in eine prozentuale Änderung umwandeln. Dieser Aligner ist für die Messwerte GAUGE und DELTA mit numerischen Werten gültig. Bei dieser Ausrichtung wird ((current - previous)/previous) * 100 zurückgegeben, wobei der Wert von previous auf Grundlage von alignment_period bestimmt wird.

Wenn die Werte von current und previous beide 0 sind, ist der zurückgegebene Wert 0. Wenn nur previous gleich 0 ist, ist der zurückgegebene Wert unendlich.

Vor der oben genannten Berechnung wird an jedem Punkt des Abstimmungszeitraums ein gleitender Durchschnitt über 10 Minuten berechnet, um den Messwert zu glätten und Falsch-Positive durch sehr kurzlebige Spitzen zu vermeiden. Der gleitende Mittelwert ist nur für Daten anwendbar, deren Werte >= 0 sind. Alle Werte < 0 werden als fehlender Datenpunkt behandelt und ignoriert. DELTA-Messwerte werden bei dieser Ausrichtung akzeptiert. Es sollte jedoch darauf geachtet werden, dass die Werte für den Messwert immer positiv sind. Die Ausgabe ist ein GAUGE-Messwert mit value_type DOUBLE.

Reducer

Ein Reducer-Vorgang beschreibt, wie Datenpunkte aus mehreren Zeitreihen in einer einzelnen Zeitreihe aggregiert werden. Der Wert jedes Datenpunkts in der resultierenden Reihe ist eine Funktion aller bereits ausgerichteten Werte in den Eingabezeitreihen.

Enums
REDUCE_NONE Keine zeitreihenübergreifende Reduzierung. Die Ausgabe von Aligner wird zurückgegeben.
REDUCE_MEAN Die Reduzierung erfolgt durch Berechnung des Mittelwerts der Zeitreihen für jeden Ausrichtungszeitraum. Dieser Reducer ist für die Messwerte DELTA und GAUGE mit numerischen Werten oder Verteilungswerten gültig. Die value_type der Ausgabe ist DOUBLE.
REDUCE_MIN Die Reduzierung erfolgt durch Berechnung des Mindestwerts für alle Zeitachsen in den einzelnen Ausrichtungszeiträumen. Dieser Reducer ist für die Messwerte DELTA und GAUGE mit numerischen Werten gültig. Die value_type der Ausgabe entspricht der value_type der Eingabe.
REDUCE_MAX Die Reduzierung erfolgt durch Berechnung des Höchstwerts der Zeitreihen für jeden Ausrichtungszeitraum. Dieser Reducer ist für die Messwerte DELTA und GAUGE mit numerischen Werten gültig. Die value_type der Ausgabe entspricht der value_type der Eingabe.
REDUCE_SUM Die Reduzierung erfolgt durch Berechnung der Summe der Zeitachsenwerte in den einzelnen Ausrichtungszeiträumen. Dieser Reducer ist für die Messwerte DELTA und GAUGE mit numerischen und Verteilungswerten gültig. Die value_type der Ausgabe entspricht der value_type der Eingabe.
REDUCE_STDDEV Die Reduzierung erfolgt durch Berechnung der Standardabweichung der Zeitreihen für jeden Ausrichtungszeitraum. Dieser Reducer ist für die Messwerte DELTA und GAUGE mit numerischen Werten oder Verteilungswerten gültig. Die value_type der Ausgabe ist DOUBLE.
REDUCE_COUNT Die Reduzierung erfolgt durch Berechnung der Anzahl der Datenpunkte in den Zeitachsen für jeden Ausrichtungszeitraum. Dieser Reducer ist für DELTA- und GAUGE-Messwerte vom Typ „Numerisch“, „Boolesch“, „Verteilung“ und „String“ value_type gültig. Die value_type der Ausgabe ist INT64.
REDUCE_COUNT_TRUE Die Reduzierung erfolgt durch Berechnung der Anzahl der Datenpunkte mit dem Wert True in den Zeitachsen für jeden Ausrichtungszeitraum. Dieser Reducer ist für die Messwerte DELTA und GAUGE des booleschen value_type gültig. Die value_type der Ausgabe ist INT64.
REDUCE_COUNT_FALSE Die Reduzierung erfolgt durch Berechnung der Anzahl der Datenpunkte mit dem Wert False in den Zeitachsen für jeden Ausrichtungszeitraum. Dieser Reducer ist für die Messwerte DELTA und GAUGE des booleschen value_type gültig. Die value_type der Ausgabe ist INT64.
REDUCE_FRACTION_TRUE Die Reduzierung erfolgt durch Berechnung des Verhältnisses der Anzahl der Datenpunkte mit dem Wert True zur Gesamtzahl der Datenpunkte für jeden Ausrichtungszeitraum. Dieser Reducer ist für die Messwerte DELTA und GAUGE des booleschen value_type gültig. Der Ausgabewert liegt im Bereich [0,0, 1,0] und hat value_type DOUBLE.
REDUCE_PERCENTILE_99 Die Reduzierung erfolgt durch Berechnung des 99. Perzentils der Datenpunkte über Zeitreihen hinweg für jeden Ausrichtungszeitraum. Dieser Reducer ist für numerische und Verteilungsmesswerte vom Typ GAUGE und DELTA gültig. Der Wert der Ausgabe ist DOUBLE.
REDUCE_PERCENTILE_95 Die Reduzierung erfolgt durch Berechnung des 95. Perzentils der Datenpunkte über Zeitreihen hinweg für jeden Ausrichtungszeitraum. Dieser Reducer ist für numerische und Verteilungsmesswerte vom Typ GAUGE und DELTA gültig. Der Wert der Ausgabe ist DOUBLE.
REDUCE_PERCENTILE_50 Die Reduzierung erfolgt durch Berechnung des 50. Perzentils der Datenpunkte über Zeitreihen hinweg für jeden Ausrichtungszeitraum. Dieser Reducer ist für numerische und Verteilungsmesswerte vom Typ GAUGE und DELTA gültig. Der Wert der Ausgabe ist DOUBLE.
REDUCE_PERCENTILE_05 Die Reduzierung erfolgt durch Berechnung des 5. Perzentils der Datenpunkte über alle Zeitreihen hinweg für jeden Ausrichtungszeitraum. Dieser Reducer ist für numerische und Verteilungsmesswerte vom Typ GAUGE und DELTA gültig. Der Wert der Ausgabe ist DOUBLE.

ComparisonType

Gibt eine Sortierbeziehung für zwei Argumente an, die left und right genannt werden.

Enums
COMPARISON_UNSPECIFIED Es wurde keine Sortierbeziehung angegeben.
COMPARISON_GT „True“, wenn das linke Argument größer als das rechte Argument ist.
COMPARISON_GE „True“, wenn das linke Argument größer oder gleich dem rechten Argument ist.
COMPARISON_LT „True“, wenn das linke Argument kleiner als das rechte Argument ist.
COMPARISON_LE „Wahr“, wenn das linke Argument kleiner oder gleich dem rechten Argument ist.
COMPARISON_EQ „True“, wenn das linke Argument gleich dem rechten Argument ist.
COMPARISON_NE „True“, wenn das linke Argument nicht gleich dem rechten Argument ist.

EvaluationMissingData

Eine Bedingungssteuerung, mit der festgelegt wird, wie Messwertschwellenbedingungen ausgewertet werden, wenn keine Daten mehr eingehen. Diese Option wirkt sich nicht auf Richtlinien für das Fehlen von Messwerten aus.

Enums
EVALUATION_MISSING_DATA_UNSPECIFIED Eine nicht angegebene Option für fehlende Daten in der Auswertung. Entspricht EVALUATION_MISSING_DATA_NO_OP.
EVALUATION_MISSING_DATA_INACTIVE Wenn keine Daten zum Auswerten der Bedingung vorhanden sind, werten Sie die Bedingung als „false“ aus.
EVALUATION_MISSING_DATA_ACTIVE Wenn keine Daten zum Auswerten der Bedingung vorhanden sind, werten Sie die Bedingung als „true“ aus.
EVALUATION_MISSING_DATA_NO_OP Die Bedingung darf nicht ausgewertet werden, wenn keine Daten vorhanden sind.

ConditionCombinerType

Operatoren zum Kombinieren von Bedingungen.

Enums
COMBINE_UNSPECIFIED Ein nicht angegebener Kombinator.
AND Bedingungen mit dem logischen Operator AND kombinieren Ein Vorfall wird nur erstellt, wenn alle Bedingungen gleichzeitig erfüllt sind. Dieser Kombinator ist erfüllt, wenn alle Bedingungen erfüllt sind, auch wenn sie für völlig unterschiedliche Ressourcen erfüllt sind.
OR Bedingungen mit dem logischen Operator OR kombinieren Ein Vorfall wird erstellt, wenn eine der aufgeführten Bedingungen erfüllt ist.
AND_WITH_MATCHING_RESOURCE Bedingungen mit dem logischen Operator AND kombinieren. Im Gegensatz zur regulären Option AND wird ein Vorfall jedoch nur erstellt, wenn alle Bedingungen gleichzeitig für mindestens eine Ressource erfüllt sind.

NotificationPrompt

Festlegen, wann Benachrichtigungen gesendet werden

Enums
NOTIFICATION_PROMPT_UNSPECIFIED Keine Strategie angegeben. Wird als Fehler behandelt.
OPENED Benachrichtigung, wenn ein Vorfall geöffnet wird.
CLOSED Benachrichtigung, wenn ein Vorfall geschlossen wird.

Schweregrad

Eine Aufzählung der möglichen Schweregrade für eine Benachrichtigungsrichtlinie.

Enums
SEVERITY_UNSPECIFIED Es wurde kein Schweregrad angegeben. Dies ist der Standardwert.
CRITICAL Dies ist der höchste Schweregrad. Verwenden Sie diese Option, wenn das Problem zu erheblichen Schäden oder Ausfallzeiten führen könnte.
ERROR Dies ist der mittlere Schweregrad. Verwenden Sie diese Option, wenn das Problem zu geringfügigen Schäden oder Ausfallzeiten führen könnte.
WARNING Dies ist der niedrigste Schweregrad. Verwenden Sie diese Option, wenn das Problem keine Schäden oder Ausfallzeiten verursacht, aber in Zukunft zu einem Problem führen könnte.

Tool-Annotationen

Destruktiver Hinweis: ❌ | Idempotenter Hinweis: ✅ | Nur-Lese-Hinweis: ✅ | Open-World-Hinweis: ❌