In diesem Dokument wird beschrieben, wie Sie dauerhafte Filter auf Dashboardebene hinzufügen können zu Ihren benutzerdefinierten Dashboards hinzufügen. Dauerhafte Filter, mit denen Sie die Daten ändern können die von einem Dashboard angezeigt werden, ohne jedes Widget ändern zu müssen. Standardstatus und können auf das gesamte Dashboard oder nur auf bestimmte Widgets. In der Dashboard-Symbolleiste werden alle permanenten Filter zusammen mit ein Menü, in dem Sie den Wert des Filters vorübergehend ändern können.
Wenn Sie eine Standardpräsentation von Daten auf einem Dashboard mit
mit menübasierten Optionen, um die Anzeige anzupassen und permanente Filter hinzuzufügen. Für
Wenn Sie z. B. Messwerte für alle Zonen und zusätzlich Messwerte von
für eine bestimmte Zone und erstellen Sie dann einen dauerhaften Filter basierend auf dem Label zone
.
Sie können permanente Filter mit der Google Cloud Console oder der Cloud Monitoring API. In diesem Dokument wird die Verwendung des Google Cloud Console Informationen zum Verwenden der Cloud Monitoring API finden Sie unter Dashboards nach API erstellen und verwalten: Dashboard-Filter
Informationen zum Hinzufügen und Ändern temporärer Gruppierungen und Filter finden Sie Siehe Temporäre Filter zu einem benutzerdefinierten Dashboard hinzufügen.
Funktionsweise von Dashboard-Filtern
Ein Dashboard-Filter gibt ein Label und einen Wert an. Die Zeitreihe, die die Dashboard-Anzeigen bestimmen, welche Labels zum Filtern zur Verfügung stehen. Wie ein Widget einen Dashboard-Filter unterstützt, hängt vom Datentyp ab das Widget angezeigt wird, und die Konfiguration des Widgets:
Bei Widgets, die Zeitreihendaten anzeigen, z. B. Liniendiagramme, gelten folgende Regeln:
Wenn die vom Widget angezeigte Zeitreihe das Label in einem werden die angezeigten Daten durch den Filter für das gesamte Dashboard nicht geändert.
Beispiel: Sie fügen einen Filter für das Label
instance_id
, aber ein Diagramm im Dashboard keine Daten mit dem Labelinstance_id
angezeigt, dann werden durch den Filter die angezeigten Daten nicht geändert.Wenn das Widget einen Wert für ein Label angibt, Dashboard-weite Filterung ändert nichts an den angezeigten Daten.
Beispiel: Sie fügen einen Filter für das Label
instance_id
, aber ein Diagramm im Dashboard enthält einen Filter, der auf dem Labelinstance_id
basiert, dann werden die angezeigten Daten nicht geändert.Andernfalls werden die angezeigten Daten im Diagramm so gefiltert, dass nur diese die den Dashboard-weiten Filter erfüllen.
Für Widgets im Logbereich sind Filter, die auf einem Dashboard Ressourcenlabel aktualisieren. Wenn Sie beispielsweise das Tag Dashboard-weiter Filter cluster_name: mycluster enthält, lautet die Abfrage: aktualisiert, um resource.labels."cluster_name"="mycluster" einzuschließen.
Sie können mehrere Filter für das gesamte Dashboard hinzufügen. Diese Filter sind mit einem logisches AND verwenden.
Hinweise
So erhalten Sie die Berechtigungen, die Sie zum Hinzufügen oder Ändern dauerhafter Filter über die Google Cloud Console benötigen:
bitten Sie Ihren Administrator, Ihnen
IAM-Rolle Monitoring-Bearbeiter (roles/monitoring.editor
) für Ihr Projekt.
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff verwalten.
Sie können die erforderlichen Berechtigungen auch über benutzerdefinierte Rollen oder andere vordefinierte Rollen erhalten.
Weitere Informationen zu Rollen finden Sie unter Zugriff mit Identity and Access Management steuern
Dauerhaften Filter erstellen
Beim Entwerfen eines Dashboards identifizieren Sie möglicherweise mehrere Möglichkeiten,
Daten, die im Dashboard angezeigt werden. Zum Beispiel, wenn in einem Dashboard Messwerte
Bei VM-Instanzen sollten Sie sich Messwerte für alle VMs
und Messwerte für VMs
in einer bestimmten Zone anzeigen. Sie könnten
einen dauerhaften Filter für das Label zone
mit dem Standardsatz
für alle Zonen, *
. Im Dashboard können Sie den
im Filter zone
, um eine bestimmte Zone auszuwählen.
Sie können einen dauerhaften Filter auf bestimmte Widgets beschränken. Stellen Sie sich ein Szenario vor, in dem Sie Messwerte nebeneinander anzeigen möchten. für VMs in zwei verschiedenen Zonen. Sie erstellen zwei Sammlungen von Diagrammen und und erstellen Sie für jede Sammlung einen Filter. Ihre Standardkonfiguration die Ihr ursprüngliches Ziel erfüllt. Beim Anzeigen des Dashboards werden in der Symbolleiste Ihre Variablen aufgelistet und enthalten Menüs, über die Sie verschiedene Werte. Mit diesen Menüs können Sie Daten für verschiedene Zonen anzeigen.
Dauerhafte Filter, die nur für bestimmte Widgets gelten, werden manchmal als Vorlagenvariablen verwenden. Nachdem Sie einen Filter dieses Typs erstellt haben, um ein Widget zu Ihrem Dashboard hinzuzufügen, können Sie den Filter auch auf dieses Widget anwenden. Weitere Informationen Weitere Informationen
So erstellen Sie einen dauerhaften Filter:
-
Rufen Sie in der Google Cloud Console die Seite
Dashboards auf.
Wenn Sie diese Seite über die Suchleiste suchen, wählen Sie das Ergebnis aus, dessen Zwischenüberschrift Monitoring ist.
- Klicken Sie in der Dashboard-Symbolleiste auf settings Einstellungen. und wählen Sie dann Filter verwalten aus.
- Klicken Sie auf arrow_drop_down Label und wählen Sie ein Label aus. Beispiel:
können Sie
zone
auswählen. Klicken Sie auf arrow_drop_down Standardwert und wählen Sie dann den Standardwert aus. Wert für das Label. Wählen Sie
*
aus, um alle Werte abzugleichen.Nachdem der Filter erstellt wurde, wird er der Dashboard-Symbolleiste hinzugefügt. Bis den Filterwert vorübergehend ändern, wählen Sie den Filter aus und Auswahl aus dem Menü.
Führen Sie einen der folgenden Schritte aus:
Um den Filter auf alle Widgets im Dashboard anzuwenden, wählen Sie Auf alle anwenden aus. und wählen Sie dann Übernehmen aus.
So wenden Sie den Filter auf einige Widgets im Dashboard an:
- Entfernen Sie das Häkchen bei Auf alle anwenden.
- Geben Sie im Feld Variablenname einen Anzeigenamen für die .
Maximieren Sie das Menü Auf Diagramme anwenden und wählen Sie die Widgets aus, die vom für den der Filter gilt, und wählen Sie dann OK aus.
Klicken Sie auf Anwenden.
Dauerhaften Filter auf ein Widget anwenden
Wenn du einen dauerhaften Filter auf ein Widget anwenden möchtest, musst du das Widget verknüpfen durch die Variable:
Für Diagramme, die Sie mithilfe von Menüs konfigurieren, haben Sie folgende Möglichkeiten: diese Verknüpfung beim Erstellen oder Bearbeiten des Filters ausführen.
Bearbeiten Sie im Logbereich das Widget und konfigurieren Sie die Standardabfrage. Befolgen Sie unbedingt die Anleitung im Abschnitt Syntax zum Anwenden eines permanenten Filters.
Für MQL- oder PromQL-definierte Diagramme und Tabellen: Diagramm oder Tabelle und ändern Sie dann die MQL oder PromQL. Folgen Sie der Anleitung im Abschnitt Syntax zum Anwenden eines permanenten Filters.
Syntax zum Anwenden eines dauerhaften Filters
Das folgende Beispiel zeigt die JSON-Teildarstellung eines Dashboards. definiert eine Vorlagenvariable und einen Dashboard-weiten Filter:
{ "dashboardFilters": [ { "filterType": "RESOURCE_LABEL", "labelKey": "instance_id", "stringValue": "3133577226154888113", "templateVariable": "iid" }, { "filterType": "RESOURCE_LABEL", "labelKey": "zone" } ], "displayName": "Illustrate Template Variables", ...
In der angezeigten JSON-Datei ist der erste Eintrag in der dashboardFilters
-Struktur
ist für eine Vorlagenvariable mit dem Namen iid
und einen Dashboard-weiten Filter mit
Labelschlüssel zone
Die Vorlagenvariable ist
Alias des Labels instance_id
.
In der Datenstruktur einer Vorlagenvariablen sind die Widgets nicht aufgeführt, angewandt wird. Stattdessen verknüpfen Sie ein Widget mit einer Vorlagenvariablen, indem Sie die Abfrage des Widgets ändern, sodass sie einen Verweis auf die Variable enthält. Wenn das Widget auf dem Dashboard angezeigt wird, wird der Wert der Vorlagenvariablen aufgelöst.
In den folgenden Abschnitten erfahren Sie, wie Sie Logbereiche und Diagramme mit Anmerkungen versehen:
- Logbereich
- MQL-definierte Diagramme und Tabellen
- PromQL-definierte Diagramme und Tabellen
- Mit Zeitreihenfiltern definierte Diagramme und Tabellen
Logbereich
So konfigurieren Sie einen Logbereich, um die Anzeige anhand des Werts eines
Vorlagenvariablen hinzufügen, fügen Sie sie im Abfragebereich hinzu. Im folgenden Beispiel
stellt eine Abfrage dar, die nach dem Wert der Vorlagenvariablen iid
filtert:
${iid}
Bevor das Logfeld die anzuzeigenden Logs abfragt,
gelöst wird. Wenn in diesem Beispiel der Wert der Vorlagenvariablen
ist "12345"
, dann wird ${iid}
durch die Anweisung ersetzt
resource.labels."instance_id"="12345"
Sie können auch nur den Wert einer Vorlagenvariablen in eine Abfrage einbeziehen. Wir empfehlen, den Wert nur als Teil eines Filters zu verwenden, der mit einem regulärer Ausdruck. Die folgende Abfrage verwendet beispielsweise einen regulären Ausdruck um Logeinträge mit einer JSON-Nutzlast abzugleichen, die die beschriebenen String:
jsonPayload.message=~"Connected to instance: ${iid.value}"
Wenn Sie eine Abfrage für das Logfeld konfiguriert haben und dann auf die Schaltfläche um den Log-Explorer zu öffnen, werden die Vorlagenvariablen aufgelöst, bevor wird der Log-Explorer geöffnet.
Die folgende Tabelle zeigt, wie die Vorlagenvariable vom Logfeld:
Syntax | Selected Value |
Ausdruck im Bereich „Logs“ aufgelöst |
---|---|---|
${iid} |
12345 |
resource.labels."instance_id"="12345" |
${iid} |
* |
"" |
${iid.value} |
12345 |
12345 |
${iid.value} |
* |
.* |
MQL-definierte Diagramme und Tabellen
Wenn Sie mit Monitoring Query Language (MQL) ein Diagramm konfigurieren, hängen Sie eine Pipe und den in die Abfragezeichenfolge ein:
fetch gce_instance | metric 'compute.googleapis.com/instance/cpu/utilization' | every 1m | ${iid}
Bevor das Diagramm die anzuzeigende Zeitreihe abfragt, wird die Vorlagenvariable
gelöst wird. Wenn in diesem Beispiel der Wert der Vorlagenvariablen
ist "12345"
, dann wird ${iid}
durch die Anweisung ersetzt
filter (resource.instance_id == '12345')
Dieser Filter entspricht der Zeit
mit dem Label resource.instance_id
und nur wenn der Wert
dieses Labels ist genau 12345
.
Wenn Sie Zeitreihen mithilfe eines regulären Ausdrucks filtern möchten, dann:
konfigurieren Sie die Abfrage so, dass sie nur den Wert der Vorlagenvariablen enthält.
Um die Syntax zu veranschaulichen, wird Folgendes dargestellt:
zeigt, wie mit einem regulären Ausdruck festgestellt wird, ob der Wert des
Das Label resource.instance_id
enthält den Wert der Vorlagenvariablen iid
:
fetch gce_instance | metric 'compute.googleapis.com/instance/cpu/utilization' | filter resource.instance_id=~"${iid.value}" | group_by 1m, [value_utilization_mean: mean(value.utilization)] | every 1m
Die folgende Tabelle zeigt, wie die Vorlagenvariable für MQL aufgelöst wird Suchanfragen:
Syntax | Selected Value |
Aufgelöster MQL-Ausdruck |
---|---|---|
${iid} |
12345 |
filter (resource.instance_id == '12345') |
${iid} |
* |
filter (true) |
${iid.value} |
12345 |
12345 |
${iid.value} |
* |
.* |
PromQL-definierte Diagramme und Tabellen
Wenn Sie ein Diagramm mit PromQL definieren, hängen Sie an den Abfragestring den Variable in geschweiften Klammern:
compute_googleapis_com:instance_cpu_utilization { project_id="my-project", ${iid} }
Bevor das Diagramm die anzuzeigende Zeitreihe abfragt, wird die Vorlagenvariable
gelöst wird. Wenn in diesem Beispiel der Wert der Vorlagenvariablen
ist "12345"
, dann wird ${iid}
durch die Anweisung ersetzt
instance_id == '12345'
Ähnlich wie bei MQL wird die Abfrage, wenn Sie ein Widget mit PromQL definieren,
nur den Wert der Vorlagenvariablen extrahieren kann. Wir empfehlen Ihnen,
Verwenden Sie den Wert nur als Teil eines Filters, der mit einem regulären Ausdruck definiert ist. Bis
um die Syntax zu veranschaulichen. Im Folgenden wird gezeigt, wie Sie mit einem regulären Ausdruck
Ermittelt, ob der Wert des Labels instance_id
den Wert des Attributs
Vorlagenvariable iid
:
compute_googleapis_com:instance_cpu_utilization{ instance_id=~"${iid.value}" }
Die folgende Tabelle zeigt, wie die Vorlagenvariable für PromQL aufgelöst wird Suchanfragen:
Syntax | Selected Value |
PromQL-Ausdruck aufgelöst |
---|---|---|
${iid} |
12345 |
instance_id == '12345' |
${iid} |
* |
noop_filter=~".*" |
${iid.value} |
12345 |
12345 |
${iid.value} |
* |
.+ |
Mit Zeitreihenfiltern definierte Diagramme und Tabellen
Wenn Sie ein Diagramm mit Zeitreihenfiltern definieren, hängen Sie die Variable zum Filterstring an:
"filter": "metric.type=\"compute.googleapis.com/instance/cpu/utilization\" resource.type=\"gce_instance\" ${iid}"
Im Gegensatz zu MQL- und PromQL-definierten Diagrammen können Sie den Wert einer Vorlagenvariablen in einem Zeitreihenfilter.
Die folgende Tabelle zeigt, wie die Vorlagenvariable aufgelöst wird:
Syntax | Selected Value |
Aufgelöster Filterausdruck |
---|---|---|
${iid} |
12345 |
resource.instance_id == "12345" |
${iid} |
* |
Ausgelassen |
${iid.value} |
12345 |
Nicht unterstützt |
${iid.value} |
* |
Nicht unterstützt |
Permanenten Filter ändern
Um vorübergehend den Wert eines beliebigen Filters zu ändern, der auf dem Dashboard angezeigt wird auf den Filternamen und geben Sie entweder einen Wert ein oder Auswahl aus dem Menü.
So ändern Sie die Konfiguration eines permanenten Filters:
-
Rufen Sie in der Google Cloud Console die Seite
Dashboards auf.
Wenn Sie diese Seite über die Suchleiste suchen, wählen Sie das Ergebnis aus, dessen Zwischenüberschrift Monitoring ist.
- Klicken Sie in der Dashboard-Symbolleiste auf settings Einstellungen. und wählen Sie dann Filter verwalten aus.
- Suchen Sie den Filter, den Sie ändern möchten, und verwenden Sie die Menüs, um Ihre Änderungen vornehmen.
- Klicken Sie auf Anwenden.
Permanenten Filter löschen
-
Rufen Sie in der Google Cloud Console die Seite
Dashboards auf.
Wenn Sie diese Seite über die Suchleiste suchen, wählen Sie das Ergebnis aus, dessen Zwischenüberschrift Monitoring ist.
- Klicken Sie in der Dashboard-Symbolleiste auf settings Einstellungen. und wählen Sie dann Filter verwalten aus.
- Suchen Sie den Filter, den Sie entfernen möchten, und klicken Sie auf Löschen.
- Klicken Sie auf Anwenden.