Einem benutzerdefinierten Dashboard dauerhafte Filter hinzufügen

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 Label instance_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 Label instance_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:

  1. Rufen Sie in der Google Cloud Console die Seite Dashboards auf.

    Dashboards aufrufen

    Wenn Sie diese Seite über die Suchleiste suchen, wählen Sie das Ergebnis aus, dessen Zwischenüberschrift Monitoring ist.

  2. Klicken Sie in der Dashboard-Symbolleiste auf Einstellungen. und wählen Sie dann Filter verwalten aus.
  3. Klicken Sie auf Label und wählen Sie ein Label aus. Beispiel: können Sie zone auswählen.
  4. Klicken Sie auf 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ü.

  5. 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:

      1. Entfernen Sie das Häkchen bei Auf alle anwenden.
      2. Geben Sie im Feld Variablenname einen Anzeigenamen für die .
      3. 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.

      4. 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

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:

  1. Rufen Sie in der Google Cloud Console die Seite Dashboards auf.

    Dashboards aufrufen

    Wenn Sie diese Seite über die Suchleiste suchen, wählen Sie das Ergebnis aus, dessen Zwischenüberschrift Monitoring ist.

  2. Klicken Sie in der Dashboard-Symbolleiste auf Einstellungen. und wählen Sie dann Filter verwalten aus.
  3. Suchen Sie den Filter, den Sie ändern möchten, und verwenden Sie die Menüs, um Ihre Änderungen vornehmen.
  4. Klicken Sie auf Anwenden.

Permanenten Filter löschen

  1. Rufen Sie in der Google Cloud Console die Seite Dashboards auf.

    Dashboards aufrufen

    Wenn Sie diese Seite über die Suchleiste suchen, wählen Sie das Ergebnis aus, dessen Zwischenüberschrift Monitoring ist.

  2. Klicken Sie in der Dashboard-Symbolleiste auf Einstellungen. und wählen Sie dann Filter verwalten aus.
  3. Suchen Sie den Filter, den Sie entfernen möchten, und klicken Sie auf Löschen.
  4. Klicken Sie auf Anwenden.

Nächste Schritte