In diesem Dokument wird das Konzept des strukturierten Loggings und die Methoden zum Hinzufügen von Struktur zu Nutzlastfeldern für Logeinträge beschrieben. Wenn die Log-Nutzlast als JSON-Objekt formatiert ist und dieses Objekt im Feld jsonPayload gespeichert wird, wird der Logeintrag als strukturierter Log bezeichnet. Für diese Logs können Sie Abfragen erstellen, mit denen Sie nach bestimmten JSON-Pfaden suchen, und bestimmte Felder in der Log-Nutzlast indexieren. Wenn die Lognutzlast dagegen als String formatiert und im Feld textPayload gespeichert ist, ist der Logeintrag unstrukturiert.
Sie können das Textfeld durchsuchen, aber seinen Inhalt nicht indexieren.
Sie haben folgende Möglichkeiten, um strukturierte Logeinträge zu erstellen:
- Rufen Sie die API-Methode
entries.writeauf und geben Sie eine vollständig formatierteLogEntryan. - Führen Sie den Befehl
gcloud logging writeaus.
- Verwenden Sie eine Cloud Logging-Clientbibliothek, die strukturierte Logs schreibt.
- BindPlane-Dienst verwenden
Agent zum Schreiben von Logs verwenden:
.- Einige Google Cloud Dienste enthalten einen integrierten Logging-Agent, der die in
stdoutoderstderrgeschriebenen Daten als Logs an Cloud Logging sendet. Sie können diesen Ansatz für Google Cloud Dienste wie Google Kubernetes Engine, die flexible App Engine-Umgebung und Cloud Run Functions verwenden. - Für Compute Engine-VMs empfehlen wir, den Ops-Agent zu installieren und zu konfigurieren, um strukturierte Logs an Cloud Logging zu senden. Wenn Ihre vorhandenen VMs den alten Logging-Agent verwenden, beachten Sie, dass der Support für den Agent eingestellt wurde. Informationen zu Migrationsalternativen für den Legacy-Logging-Agent finden Sie im Migrationsleitfaden. Informationen zum Schreiben strukturierter Logs mit dem Legacy-Logging-Agent finden Sie unter Strukturiertes Logging mit dem Legacy-Logging-Agent.
- Einige Google Cloud Dienste enthalten einen integrierten Logging-Agent, der die in
Codebeispiele finden Sie unter Strukturierte Logs schreiben.
Logs mit der gcloud CLI schreiben
Sie können Logdaten mit der gcloud CLI schreiben. Die Schnittstelle unterstützt unstrukturierte und strukturierte Logs. Wenn Sie ein strukturiertes Log schreiben möchten, stellen Sie dem Befehl ein serialisiertes JSON-Objekt zur Verfügung.
Eine Kurzanleitung finden Sie unter Logeinträge mit der Google Cloud CLI schreiben und abfragen.
Codebeispiele finden Sie in der gcloud logging write-Referenz.
Logs mit BindPlane schreiben
Mit dem BindPlane-Dienst können Sie Logs an Logging senden. Die Nutzlasten für diese Logs sind im JSON-Format und entsprechend dem Quellsystem strukturiert. Informationen zum Suchen und Ansehen von Logs, die mit BindPlane aufgenommen wurden, finden Sie in der Kurzanleitung zu BindPlane.
Logs mit dem Ops-Agent schreiben
Wenn Sie Logs von Ihren Compute Engine-Instanzen abrufen möchten, können Sie den Ops-Agenten verwenden. Der Ops-Agent kombiniert Logging und Messwerte in einem einzigen Agent, bietet eine YAML-basierte Konfiguration und unterstützt Logging mit hohem Durchsatz.
Informationen zum Konfigurieren des Ops-Agenten zur Unterstützung des strukturierten Loggings oder zum Anpassen der Form eines strukturierten Logs finden Sie unter Ops-Agent konfigurieren.
Probleme beheben
Informationen zur Behebung häufiger Probleme bei der Installation des Ops-Agent und bei der Interaktion mit diesem finden Sie unter Fehlerbehebung beim Agent.
Nächste Schritte
Informationen zum Abfragen und Ansehen von Logeinträgen finden Sie unter Logs mit dem Log-Explorer ansehen.
Informationen zum Lesen von Logeinträgen mit der Google Cloud CLI finden Sie unter Logeinträge lesen.
Informationen zum Lesen von Logeinträgen über die Logging API finden Sie unter der Methode
entries.list.