In diesem Dokument wird beschrieben, wie Sie die Ergebnisse Ihrer Log Analytics-Abfragen in Diagrammen darstellen, um Muster und Trends in Ihren Protokolldaten zu erkennen. Mit Log Analytics können Sie Logs mithilfe von SQL durchsuchen und aggregieren, um nützliche Informationen zu generieren.
Nachdem Sie eine Abfrage ausgeführt haben, können Sie die Abfrageergebnisse in einer Tabelle ansehen oder in ein Diagramm umwandeln. Außerdem können Sie die Abfrage und ihre Visualisierung in einem Dashboard speichern.
Wenn Sie beispielsweise sehen möchten, welche Schweregrade Ihre Protokolle generieren, erstellen Sie ein Diagramm, in dem die Anzahl der Protokolle in den letzten 12 Stunden angezeigt wird, und unterteilen Sie die Protokolle nach severity
. Im folgenden Screenshot sind Datenpunkte nach Schweregrad aufgeschlüsselt:
Hinweise
In diesem Abschnitt werden die Schritte beschrieben, die Sie ausführen müssen, bevor Sie Log Analytics verwenden können.
Log-Buckets konfigurieren
Prüfen Sie, ob Ihre Log-Buckets für die Verwendung von Log Analytics aktualisiert wurden:
-
Rufen Sie in der Google Cloud Console die Seite Logspeicher auf.
Wenn Sie diese Seite über die Suchleiste suchen, wählen Sie das Ergebnis aus, dessen Zwischenüberschrift Logging ist.
- Achten Sie für jeden Log-Bucket, der eine Logansicht enthält, die Sie abfragen möchten, darauf, dass in der Spalte Log Analytics verfügbar der Wert Offen angezeigt wird. Wenn Upgrade durchführen angezeigt wird, klicken Sie auf Upgrade durchführen und schließen Sie das Dialogfeld ab.
IAM-Rollen und -Berechtigungen konfigurieren
In diesem Abschnitt werden die IAM-Rollen oder -Berechtigungen beschrieben, die für die Verwendung von Log Analytics erforderlich sind:
-
Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen für Ihr Projekt zuzuweisen, um die Berechtigungen zu erhalten, die Sie zur Verwendung von Log Analytics und zum Abfragen von Protokollansichten benötigen:
-
So rufen Sie die Log-Buckets
_Required
und_Default
ab: Loganzeige (roles/logging.viewer
) -
So rufen Sie alle Logansichten in einem Projekt ab:
Zugriffsberechtigter für Logbetrachtung (
roles/logging.viewAccessor
)
Sie können ein Hauptkonto auf eine bestimmte Protokollansicht beschränken, indem Sie der Rolle „Zugriffsberechtigter für Protokollansicht“ auf Projektebene eine IAM-Bedingung hinzufügen oder der Richtliniendatei der Protokollansicht eine IAM-Bindung hinzufügen. Weitere Informationen finden Sie unter Zugriff auf eine Logansicht steuern.
Dies sind dieselben Berechtigungen, die Sie zum Aufrufen von Logeinträgen auf der Seite Log-Explorer benötigen. Informationen zu zusätzlichen Rollen, die Sie benötigen, um Ansichten in benutzerdefinierten Buckets abzufragen oder die
_AllLogs
-Ansicht des_Default
-Log-Buckets abzufragen, finden Sie unter Cloud Logging-Rollen. -
So rufen Sie die Log-Buckets
-
Bitten Sie Ihren Administrator, Ihnen die IAM-Rolle Monitoring Editor (
roles/monitoring.editor
) für das Projekt zu zuweisen, um die Berechtigungen zu erhalten, die Sie zum Erstellen von Diagrammen benötigen.
Daten für Diagramm auswählen
Wenn Sie konfigurieren möchten, welche Daten in einem Diagramm angezeigt werden sollen, erstellen Sie eine Abfrage mit SQL. Wenn Sie den Tab Diagramm auswählen, wird in der Protokollierung automatisch ein Diagramm basierend auf den Abfrageergebnissen generiert. Nachdem die Abfrage ausgeführt und ein Diagramm generiert wurde, können Sie die Diagrammkonfiguration anpassen, indem Sie den Diagrammtyp ändern und Spalten auswählen, um sich andere Daten anzusehen.
So rufen Sie die Abfrageergebnisse als Diagramm auf:
-
Rufen Sie in der Google Cloud Console die Seite Log Analytics auf.
Wenn Sie diese Seite über die Suchleiste suchen, wählen Sie das Ergebnis aus, dessen Zwischenüberschrift Logging ist.
Geben Sie im Bereich Abfrage eine Abfrage ein und klicken Sie auf Ausführen.
Wählen Sie nach Abschluss der Abfrage auf dem Tab Ergebnisse aus, wie Sie die Abfrageergebnisse anzeigen möchten:
Tabelle: Nur tabellarisches Format.
Diagramm: Nur Diagrammformat
Sowohl als Diagramm als auch in Tabellenform
Nachdem Sie ausgewählt haben, wie die Abfrageergebnisse angezeigt werden sollen, können Sie beliebige Felder für die ausgewählte Visualisierung konfigurieren und die Abfrage und die Ergebnisse in einem benutzerdefinierten Dashboard speichern. Wenn Sie die Option Tabelle ausgewählt haben, wird das Format als Tabelle gespeichert. Andernfalls ist das Format ein Diagramm.
Bei Diagrammen können Sie mit den Visualisierungsoptionen den Diagrammtyp und die Zeilen und Spalten auswählen, die dargestellt werden sollen. Weitere Informationen zur Diagrammkonfiguration finden Sie unter Diagrammkonfiguration anpassen.
Diagrammkonfiguration anpassen
Sie können die Diagrammkonfiguration anpassen, indem Sie den Diagrammtyp ändern, die Dimension und den Messwert für das Diagramm auswählen und eine Aufschlüsselung anwenden. Die Dimension wird verwendet, um Zeilen zu gruppieren oder zu kategorisieren. Sie ist der Wert der X-Achse. Der Messwert oder der Wert der y-Achse ist eine Datenreihe, die auf der y-Achse dargestellt wird.
Diagrammtyp ändern
Je nachdem, welche Zeilen und Spalten Sie als Dimension und Messwert ausgewählt haben und wie diese Daten visualisiert werden sollen, stehen die folgenden Diagrammtypen zur Auswahl.
Balkendiagramm (Standard) In Balkendiagrammen werden Daten auf zwei Achsen dargestellt. Wenn in Ihrem Diagramm eine Kategorie oder ein String als Dimension verwendet wird, können Sie die Diagrammkonfiguration für ein Balkendiagramm auf „horizontal“ oder „vertikal“ festlegen. Dabei werden die Dimension und die Messachse vertauscht.
Liniendiagramm: Mit Liniendiagrammen lassen sich Datenänderungen im Zeitverlauf darstellen. Bei einem Liniendiagramm wird jede Zeitreihe durch eine andere Linie dargestellt, die den ausgewählten Messwerten entspricht.
Wenn die x-Achse zeitbasiert ist, wird jeder Datenpunkt am Anfang eines Zeitintervalls platziert. Die einzelnen Datenpunkte sind durch lineare Interpolation verbunden.
Gestapeltes Flächendiagramm: Ein Flächendiagramm basiert auf einem Liniendiagramm. Der Bereich unter jeder Linie ist schattiert. In Flächendiagrammen werden die Datenreihen gestapelt. Wenn Sie beispielsweise zwei identische Reihen haben, überschneiden sich diese in einem Liniendiagramm, während der schattierte Bereich in einem Flächendiagramm gestapelt wird.
Kreis- oder Donutdiagramm: Mit einem Kreisdiagramm wird dargestellt, in welchem Verhältnis die Kategorien in einem Datensatz zum gesamten Datensatz stehen. Dabei steht der Kreis für den gesamten Datensatz und die Segmente im Kreis für die Kategorien im Datensatz. Die Größe eines Keils gibt an, wie viel, oft in Prozent, die Kategorie zum Ganzen beiträgt.
Tabelle: In einer Tabelle wird für jede Zeile im Abfrageergebnis eine Zeile angezeigt. Die Spalten in der Tabelle werden durch die
SELECT
-Klausel definiert. Wenn Sie Daten in tabellarischer Form in einem Dashboard anzeigen möchten, verwenden Sie eineLIMIT
-Klausel, um die Anzahl der Zeilen im Ergebnis auf weniger als ein paar hundert einzuschränken.Messgerät oder Kurzübersicht: Messgeräte und Kurzübersichten enthalten den aktuellen Wert sowie eine grüne, gelbe oder rote Kennzeichnung, die darauf hinweist, ob der Wert im Vergleich zu einer Reihe von Schwellenwerten niedrig, mittel oder hoch ist. Im Gegensatz zu Messwerten, die nur Informationen zum jeweils aktuellen Wert enthalten, können Kurzübersichten auch Informationen zu vergangenen Werten enthalten.
In Messinstrumenten und Kurzübersichten kann das Abfrageergebnis nur angezeigt werden, wenn es mindestens eine Zeile enthält und diese Zeile eine Spalte mit einem Zeitstempel und eine Spalte mit numerischen Daten enthält. Das Abfrageergebnis kann mehrere Zeilen und mehr als zwei Spalten enthalten.
Wenn Sie die zeitbasierte Aggregation als Teil Ihrer Abfrage ausführen möchten, gehen Sie so vor:
Konfigurieren Sie die Abfrage so, dass Daten über ein bestimmtes Zeitintervall aggregiert, die Ergebnisse nach absteigenden Zeitstempeln sortiert und die Anzahl der Zeilen in den Ergebnissen begrenzt werden. Sie können die
LIMIT
-Klausel oder die Auswahl für den Zeitraum verwenden, um die Anzahl der Zeilen im Abfrageergebnis einzuschränken.In der folgenden Abfrage werden beispielsweise Daten nach der Stunde zusammengefasst, ein Limit angewendet und die Ergebnisse sortiert:
SELECT TIMESTAMP_TRUNC(timestamp, HOUR) AS hour, severity, COUNT(*) AS count FROM `TABLE_NAME_OF_LOG_VIEW` WHERE severity IS NOT NULL AND severity = "DEFAULT" GROUP BY hour,severity ORDER BY hour DESC LIMIT 10
Legen Sie die Dimension so fest, dass sie der Spalte entspricht, in der die Zeiteinheit angegeben ist. Wenn Ihre Abfrage beispielsweise Daten nach einer Stunde aggregiert und eine Spalte mit dem Namen
hour
erstellt, setzen Sie das Menü Dimension aufhour
.Wählen Sie Intervall deaktivieren aus, da das Aggregationsintervall bereits in der Abfrage angegeben ist. Im Beispiel beträgt dieses Intervall eine Stunde.
Wählen Sie als Messwert die numerische Spalte und als Funktion keine aus.
Wenn Sie die zeitbasierte Aggregation in Log Analytics ausführen lassen möchten, gehen Sie so vor:
- Konfigurieren Sie die Zeitraumauswahl. Dies wirkt sich auf die Anzahl der Zeilen im Abfrageergebnis aus.
- Legen Sie die Dimension so fest, dass sie der Spalte entspricht, in der die Zeiteinheit angegeben ist.
Sie können dieses Menü beispielsweise auf
timestamp
festlegen. - Legen Sie im Menü Intervall ein bestimmtes Aggregationsintervall fest. Legen Sie beispielsweise den Wert dieses Felds auf
1 hour
fest. Wählen Sie nicht Automatisches Intervall aus. - Legen Sie als Messwert die numerische Spalte fest und wählen Sie eine Funktion wie Summe aus.
Dimension und Messwert ändern
Sie können auswählen, welche Zeilen und Spalten in das Diagramm aufgenommen werden sollen, indem Sie die entsprechenden Dimensions- und Messwertfelder auswählen.
Dimension
Die Dimension muss eine Zeitstempel-, eine numerische oder eine String-Spalte sein. Standardmäßig ist die Dimension auf die erste zeitstempelbasierte Spalte im Schema festgelegt. Wenn in der Abfrage kein Zeitstempel vorhanden ist, wird die erste Stringspalte als Dimension ausgewählt. Sie können die Dimension auch im Bereich Diagrammdarstellung anpassen. Wenn eine Zeitstempelspalte als Dimension ausgewählt ist, zeigt das Diagramm, wie sich die Daten im Zeitverlauf ändern.
Standardmäßig wird das Intervall für Zeitstempel automatisch festgelegt. Sie können aber auch ein benutzerdefiniertes Intervall auswählen. Bei automatischen Intervallen werden die Werte basierend auf der Auswahl des Zeitraums geändert, um Gruppen mit ähnlicher Größe beizubehalten.
Sie können das Intervall auch deaktivieren. So können Sie für eine komplexere Analyse eigene Aggregationen und Zeiträume in der Abfrage angeben. Wenn Sie das Intervall deaktivieren, wird die Aggregationsfunktion der Messwerte auf
none
festgelegt. Wenn das Dimensionsintervall deaktiviert ist, sind nur numerische Messwerte zulässig.Messung
Im Bereich Diagrammansicht können Sie mehrere Messwerte auswählen. Wenn Sie einen Messwert auswählen, müssen Sie auch die Aggregationsfunktion auswählen, die auf die gruppierten Werte angewendet werden soll, z. B.
count
,sum
,average
undpercentile-99
.count-distinct
gibt beispielsweise die Anzahl der eindeutigen Werte in einer bestimmten Spalte zurück.Wenn Sie für die Dimension das Kästchen Intervall deaktivieren anklicken, ist die Option für die Aggregationsfunktion
none
verfügbar. Wenn die Dimension ein Stringwert ist, wird das Kästchen Intervall deaktivieren nicht angezeigt. Wenn Sie die Aggregationsfunktionen eines Messwerts jedoch aufnone
festlegen, wird auch das Intervall deaktiviert.
Aufschlüsselung hinzufügen
Wenn Sie eine einzelne Datenreihe anhand einer anderen Spalte in mehrere Datenreihen aufteilen möchten, fügen Sie eine Aufschlüsselung hinzu.
Wählen Sie für die Aufschlüsselung Spalten mit einer kleinen Anzahl kurzer und aussagekräftiger Labels wie region_name
aus, anstatt Felder mit einer großen Anzahl von Strings oder langen Strings wie textPayload
.
In der folgenden Diagrammkonfiguration ist beispielsweise das Feld Dimension auf type, das Feld Messwert auf Zeilen zählen und das Feld Aufschlüsselung auf Schweregrad festgelegt:
Das folgende Diagramm ist ein Beispiel für ein Diagramm mit einer hinzugefügten Aufschlüsselung:
Im vorherigen Screenshot sehen Sie eine gestapelte Datenreihe, in der der Ressourcentyp k8s_container
in verschiedene severity
-Typen unterteilt ist. So können Sie ermitteln, wie viele Protokolle mit welchem Schweregrad von einer bestimmten Ressource generiert wurden.
Diagramm in einem benutzerdefinierten Dashboard speichern
Nachdem ein Diagramm aus Ihrer Abfrage generiert wurde, können Sie es in einem benutzerdefinierten Dashboard speichern. Mit benutzerdefinierten Dashboards können Sie mithilfe verschiedener Widget-Typen nützliche Informationen anzeigen und organisieren. In diesen Dashboards können Sie auch Variablen definieren. Das sind Filter auf Dashboardebene, die nur auf bestimmte Widgets angewendet werden. Wenn Sie eine Variable auf ein Widget anwenden möchten, müssen Sie die Abfrage ändern. Weitere Informationen finden Sie unter Variable auf ein Widget anwenden.
Sie können beispielsweise ein Dashboard erstellen, das Details zur Nutzung Ihrer Cloud Storage-Buckets enthält:
So speichern Sie das Diagramm in einem Dashboard:
-
Rufen Sie in der Google Cloud Console die Seite Log Analytics auf.
Wenn Sie diese Seite über die Suchleiste suchen, wählen Sie das Ergebnis aus, dessen Zwischenüberschrift Logging ist.
Führen Sie eine Abfrage aus, um ein Diagramm zu generieren, und klicken Sie dann auf dem Tab Diagramm auf Diagramm speichern.
Geben Sie im Dialogfeld Im Dashboard speichern einen Titel für das Diagramm ein und wählen Sie das Dashboard aus, in dem Sie es speichern möchten.
Optional: Wenn Sie das benutzerdefinierte Dashboard aufrufen möchten, klicken Sie in der Benachrichtigung auf Dashboard ansehen.
Wenn Sie eine Liste der benutzerdefinierten Dashboards mit Diagrammen aufrufen möchten, die mit Log Analytics-SQL-Abfragen generiert wurden, klicken Sie auf die Schaltfläche Diagramm speichern und dann auf das Dreistrich-Menü arrow_drop_down.
In einem benutzerdefinierten Dashboard gespeichertes Diagramm bearbeiten
Informationen zum Bearbeiten von Diagrammen, die mit Log Analytics-SQL-Abfragen generiert und in einem Dashboard gespeichert wurden, finden Sie unter Konfiguration eines Widgets ändern. Im Dialogfeld Widget konfigurieren können Sie die Abfrage bearbeiten, mit der ein Diagramm generiert wird, oder die Diagrammkonfiguration anpassen, um andere Daten zu visualisieren.
Beschränkungen
Wenn sich Ihr Google Cloud-Projekt in einem Ordner befindet, in dem Assured Workloads verwendet wird, können die von Ihnen generierten Diagramme nicht in einem benutzerdefinierten Dashboard angezeigt werden.
Filter auf Dashboardebene werden nicht auf Diagramme angewendet, die aus einer Log Analytics-SQL-Abfrage generiert wurden.
Beispielabfragen
Dieser Abschnitt enthält Beispiel-SQL-Abfragen zum Darstellen von Abfrageergebnissen in Diagrammen. Passen Sie die Diagrammkonfiguration an, um aus Ihren Protokollen nützlichere Informationen zu gewinnen. So verwenden Sie die Beispielabfragen:
-
Rufen Sie in der Google Cloud Console die Seite Log Analytics auf.
Wenn Sie diese Seite über die Suchleiste suchen, wählen Sie das Ergebnis aus, dessen Zwischenüberschrift Logging ist.
Geben Sie den Tabellennamen für die Protokollansicht an, die Sie abfragen möchten.
Rufen Sie dazu die Liste Logansichten auf, suchen Sie die gewünschte Ansicht und wählen Sie Abfragen aus. Der Bereich Abfrage enthält eine Standardabfrage, die den Tabellennamen der abgefragten Protokollansicht enthält. Der Tabellenname hat das Format
project_ID.region.bucket_ID.view_ID
.Weitere Informationen zum Zugriff auf die Standardabfrage finden Sie unter Logdatenansicht abfragen.
Ersetzen Sie TABLE_NAME_OF_LOG_VIEW durch den Tabellennamen der Protokollansicht, die Sie abfragen möchten, und kopieren Sie dann die Abfrage.
Fügen Sie die Abfrage in den Bereich Abfrage ein und klicken Sie dann auf Abfrage ausführen.
Logeinträge nach Standort und Schweregrad in Diagrammen darstellen
Mit der folgenden Abfrage werden location
und severity
ausgewählt. Dabei wird der Standort als String gecastet:
SELECT
CAST(JSON_VALUE(resource.labels.location) AS STRING) AS location,
severity,
FROM
`TABLE_NAME_OF_LOG_VIEW`
Ein Beispiel für ein Diagramm und eine Diagrammkonfiguration sieht so aus:
Im vorherigen Screenshot hat das Diagramm die folgende Konfiguration:
- Diagrammtyp: Balkendiagramm, horizontal
- Dimension:
location
, maximal 10 - Messen: Anzahl der Zeilen
- Aufschlüsselung:
severity
, maximal fünf
Audit-Logs zum Datenzugriff für BigQuery in Diagrammen darstellen
Die folgende Abfrage filtert nach BigQuery-data_access
-Audit-Logs und wählt bestimmte Felder wie user_email
, ip
, auth_permission
und job_execution_project
aus. Sie können beispielsweise ein Diagramm erstellen, in dem die Häufigkeit der BigQuery API-Nutzung der einzelnen Hauptberechtigten im Zeitverlauf dargestellt wird.
SELECT
timestamp,
proto_payload.audit_log.authentication_info.principal_email as user_email,
proto_payload.audit_log.request_metadata.caller_ip as ip,
auth.permission as auth_permission,
auth.granted as auth_granted,
JSON_VALUE(data_access.resource.labels.project_id) AS job_execution_project,
SPLIT(proto_payload.audit_log.resource_name, '/')[SAFE_OFFSET(1)] AS referenced_project,
SPLIT(proto_payload.audit_log.resource_name, '/')[SAFE_OFFSET(3)] AS referenced_dataset,
SPLIT(proto_payload.audit_log.resource_name, '/')[SAFE_OFFSET(5)] AS referenced_table
FROM `TABLE_NAME_OF_LOG_VIEW` as data_access,
UNNEST(proto_payload.audit_log.authorization_info) AS auth
WHERE
log_id="cloudaudit.googleapis.com/data_access"
AND data_access.resource.type = 'bigquery_dataset'
Ein Beispiel für ein Diagramm und eine Diagrammkonfiguration sieht so aus:
Im vorherigen Screenshot hat das Diagramm die folgende Konfiguration:
- Diagrammtyp: Balkendiagramm, vertikal
- Dimension:
user_email
, maximal fünf - Messen: Anzahl der Zeilen
- Aufschlüsselung:
auth_permission
, maximal fünf
Beschränkungen
Die ausgewählten Spalten sollten mindestens eine Zeile mit einem nicht nullwertigen Wert haben.
Wenn Sie eine Abfrage speichern und die Diagrammkonfiguration anpassen, wird die benutzerdefinierte Diagrammkonfiguration nicht gespeichert.
Wenn Ihre Abfrage bereits Aggregationen enthält, kann sich das generierte Diagramm aufgrund einer zusätzlichen Aggregation unterscheiden, die automatisch von Log Analytics angewendet wird.
JSON-Pfade müssen in Strings und Zahlen umgewandelt werden, damit sie in Diagrammen dargestellt werden können.
Nächste Schritte
Eine Übersicht über Log Analytics finden Sie unter Logs abfragen und analysieren.
Beispielabfragen finden Sie unter Beispiel-SQL-Abfragen.
Informationen zum Analysieren mit Audit-Logs mithilfe von Log Analytics finden Sie unter SQL-Abfragen für Sicherheitserkenntnisse.