Auf dieser Seite wird beschrieben, wie Sie neue Messwerte aus vorhandenen Messwerten generieren, indem Sie eine benutzerdefinierte MonitoringRule
-Ressource in Google Distributed Cloud (GDC) Air-Gapped bereitstellen.
Mit Aufzeichnungsregeln können Sie häufig verwendete oder rechenintensive Ausdrücke vorab berechnen, um die Leistung von Dashboards und Benachrichtigungen zu verbessern. Diese Regeln werden in benutzerdefinierten MonitoringRule
-Ressourcen definiert und generieren neue Zeitachsenmesswerte aus vorhandenen Messwerten, wodurch die Daten besser beobachtbar werden.
Durch das Speichern von vorab berechneten Ergebnissen werden mit Aufzeichnungsregeln redundante Berechnungen vermieden, wenn ein Ausdruck benötigt wird. Diese Methode verkürzt die Abfragezeiten erheblich, insbesondere bei komplexen Dashboards und Benachrichtigungen, für die dasselbe Attribut wiederholt ausgewertet werden muss. Mit MonitoringRule
-Ressourcen können Sie neue Messwerte aus vorhandenen ableiten, indem Sie die erforderlichen Berechnungen in den Aufzeichnungsregeln angeben.
Hinweise
Bitten Sie Ihren Organisations-IAM-Administrator oder Projekt-IAM-Administrator, Ihnen eine der zugehörigen MonitoringRule
-Rollen zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Verwalten von benutzerdefinierten MonitoringRule
-Ressourcen benötigen.
Je nach Zugriffsebene und erforderlichen Berechtigungen können Sie für diese Ressource in einer Organisation oder einem Projekt die Rollen „Ersteller“, „Bearbeiter“ oder „Betrachter“ erhalten. Weitere Informationen finden Sie unter IAM-Berechtigungen vorbereiten.
Regeln für die Aufzeichnung erstellen
Um eine Aufzeichnungsregel zu erstellen, definieren Sie einen Namen für den aufgezeichneten Messwert und einen gültigen Ausdruck, der einen numerischen Wert erzeugt. Wenn dieser Ausdruck ausgewertet wird, wird der neue Messwert generiert. Stellen Sie die benutzerdefinierte Ressource MonitoringRule
im Namespace Ihres Projekts auf dem Management API-Server bereit, um die Aufzeichnungsregel zu aktivieren.
Weitere Informationen zu Aufzeichnungsregeln finden Sie unter https://grafana.com/docs/loki/latest/rules/.
So erstellen Sie Aufzeichnungsregeln in Ihrem Projekt-Namespace:
- Legen Sie das GDC-Projekt fest, aus dem Sie Aufzeichnungsregeln erstellen möchten.
Erstellen Sie eine YAML-Datei, in der die benutzerdefinierte Ressource
MonitoringRule
definiert wird.Die vollständige
MonitoringRule
-Spezifikation enthält ein Beispiel für messwertbasierte Aufzeichnungsregeln. Weitere Informationen finden Sie in der API-Referenzdokumentation.Ersetzen Sie die folgenden Werte in der YAML-Datei nach Bedarf:
Feldname Beschreibung namespace
Der Projekt-Namespace. name
Der Name der Regelkonfiguration. interval
Die Dauer des Intervalls für die Regelauswertung in Sekunden. limit
Optional. Die maximale Anzahl an Benachrichtigungen. Legen Sie diese Option auf 0
fest, um unbegrenzt viele Benachrichtigungen zu erhalten.recordRules
Die Definitionen für die Berechnung neuer Messwerte. recordRules.record
Der Datensatzname für den neuen Messwert. Der Wert muss ein gültiger Messwertname sein, der die Zeitreihe definiert, in der die Ergebnisse gespeichert werden. recordRules.expr
Ein PromQL-Ausdruck für die Messregel, der zu einem numerischen Wert ausgewertet werden muss. recordRules.labels
Optional. Die Schlüssel/Wert-Paare der Labels, die dem neuen Messwert hinzugefügt oder überschrieben werden sollen. Speichern Sie die YAML-Datei.
Wenden Sie die
MonitoringRule
-Konfiguration auf den Management API-Server im selben Namespace wie Ihre Aufzeichnungsregeln an:kubectl --kubeconfig KUBECONFIG_PATH apply -f MONITORING_RULE_NAME.yaml
Ersetzen Sie Folgendes:
KUBECONFIG_PATH
: der Pfad zur kubeconfig-Datei für den Management API-Server.MONITORING_RULE_NAME
: der Name derMonitoringRule
-Definitionsdatei.
Vollständige MonitoringRule
-Spezifikation
Eine benutzerdefinierte Ressource vom Typ MonitoringRule
enthält Aufzeichnungsregeln, die die Bedingungen zum Erstellen neuer Messwerte auf Grundlage vorhandener Messwerte für die Observability beschreiben.
Die folgende YAML-Datei zeigt eine Vorlage für die benutzerdefinierte Ressource MonitoringRule
. Weitere Informationen finden Sie in der API-Referenzdokumentation.
# Configures either an alert or a target record for precomputation.
apiVersion: monitoring.gdc.goog/v1
kind: MonitoringRule
metadata:
# Choose a namespace that matches the project namespace.
# The alert or record is produced in the same namespace.
namespace: PROJECT_NAMESPACE
name: MONITORING_RULE_NAME
spec:
# Rule evaluation interval.
interval: 60s
# Configure the limit for the number of alerts.
# A value of '0' means no limit.
# Optional.
# Default value: '0'
limit: 0
# Configure recording rules to generate new metrics based on existing metrics.
# Recording rules precompute expressions that are frequently needed or computationally expensive.
# Results are saved as a new set of time series.
recordRules:
# Define the time series where you want to write the recording rule.
# The value must be a valid metric name.
- record: MyMetricsName
# Define the PromQL expression to evaluate for this rule.
expr: rate({service_name="bob-service"} [1m])
# Define labels to add or overwrite.
# Map of key-value pairs.
# Optional.
labels:
verb: read
Ersetzen Sie Folgendes:
PROJECT_NAMESPACE
: Ihr Projekt-Namespace.MONITORING_RULE_NAME
: der Name derMonitoringRule
-Definitionsdatei.