Cloud Logging – Übersicht

Dieses Dokument bietet einen Überblick über Cloud Logging, ein Echtzeit- Protokollverwaltungssystems mit Unterstützung für Speicher, Suche, Analyse und Monitoring. Cloud Logging erfasst automatisch Logdaten aus Google Cloud-Ressourcen. Ihre Anwendungen, lokalen Ressourcen und Ressourcen von anderen Cloud-Anbietern können Logdaten an Cloud Logging senden. Sie können auch Benachrichtigungsrichtlinien konfigurieren, damit Cloud Monitoring wenn bestimmte Arten von Ereignissen in Ihren Protokolldaten gemeldet werden. Für regulatorische oder aus Sicherheitsgründen können Sie festlegen, wo Ihre Protokolldaten gespeichert sind.

Logs aus Anwendungen und Drittanbieter-Software erfassen

Sie können Logs von Anwendungen erfassen, die Sie schreiben, indem Sie Ihre mithilfe eines Clientbibliothek verwenden. Es ist jedoch nicht immer erforderlich, Ihre Anwendung zu instrumentieren. Bei einigen Konfigurationen, die Sie mit dem Ops-Agent verwenden können zum Senden von Protokollen, stdout oder stderr zu Ihrem Google Cloud-Projekt.

Sie können auch Logdaten von Drittanbieteranwendungen wie nginx erfassen. Dazu müssen Sie den Ops-Agent installieren und so konfigurieren, dass er Logs aus dieser Anwendung in Ihr Google Cloud-Projekt schreibt.

Weitere Informationen finden Sie unter Was sollten Sie verwenden: Logging-Agent oder Clientbibliothek? finden Sie Informationen, die Ihnen bei der Entscheidung helfen können, Anforderungen.

Fehler beheben und Protokolle analysieren

Sie können Ihre Logdaten in der Google Cloud Console auf zwei Arten aufrufen und analysieren: mit dem Log-Explorer oder den Loganalysen. Sie können Abfragen und Logs mit beiden Schnittstellen ansehen Sie verwenden jedoch unterschiedliche Abfragesprachen und haben unterschiedliche Funktionen.

Wenn Sie Probleme beheben und die Leistung Ihrer Dienste und Anwendungen analysieren möchten, empfehlen wir Ihnen, den Log-Explorer zu verwenden. Auf dieser Oberfläche können Sie sich einzelne Logeinträge ansehen und zugehörige Logeinträge finden. Wenn ein Logeintrag beispielsweise zu einer Fehlergruppe gehört, wird er mit einem Optionsmenü versehen, über das Sie weitere Informationen zum Fehler abrufen können.

Wenn Sie daran interessiert sind, zusammengefasste Vorgänge für Ihre Logs erstellen, um beispielsweise die durchschnittliche Latenz für HTTP-Anfragen, die im Zeitverlauf an eine bestimmte URL gesendet werden, verwenden Sie der Loganalysenoberfläche. Bei dieser Benutzeroberfläche werden Ihre Protokolldaten mit SQL abgefragt. So können Sie die Funktionen von SQL nutzen, um Ihre Protokolldaten besser zu verstehen.

Wenn Sie Ihre Protokolldaten lieber programmatisch abfragen möchten, können Sie den Cloud Logging API oder die Google Cloud CLI, um Logdaten aus Ihrem Google Cloud-Projekt

Weitere Informationen finden Sie unter Logs abfragen und ansehen.

Ihre Logs überwachen

Sie können Cloud Logging so konfigurieren, dass Sie benachrichtigt werden, wenn bestimmte Arten von Ereignissen in Ihren Logs auftreten. Diese Benachrichtigungen werden möglicherweise gesendet, in einem Logeintrag oder in Ihren Logdaten, wenn ein Trend erkannt wird. Wenn Sie die Fehlerraten Ihrer Google Cloud-Dienste sehen möchten, können Sie das vorkonfigurierte Cloud Logging-Dashboard aufrufen.

Wenn Sie zum Beispiel über eine bestimmte wenn ein kritisches sicherheitsrelevantes Ereignis eintritt, können Sie Logbasierte Benachrichtigungsrichtlinie erstellen Mit einer logbasierten Benachrichtigungsrichtlinie werden Ihre Logs auf ein bestimmtes Muster überwacht. Wenn dieses Muster gefunden wird, sendet Monitoring eine Benachrichtigung und erstellt einen Vorfall. Logbasierte Benachrichtigungsrichtlinien sind nützlich für wichtige, aber seltene Ereignisse, wie zum Beispiel so:

  • Sie möchten benachrichtigt werden, wenn ein Ereignis in einem Audit-Log angezeigt wird. Beispiel: Ein Nutzer greift auf den Sicherheitsschlüssel eines Dienstkontos zu.
  • Ihre Anwendung schreibt Nachrichten zu Bereitstellung in Logs. Sie wollen informiert werden, wenn eine Änderung an der Bereitstellung protokolliert wird.

Alternativ können Sie auch Trends oder Ereignisse im Laufe der Zeit. In diesen Fällen können Sie einen logbasierten Messwert erstellen. Mit einem logbasierten Messwert können Sie die Anzahl der Logeinträge zählen, die einem bestimmten Kriterium entsprechen, oder Informationen wie Reaktionszeiten in Histogramme extrahieren und organisieren. Sie können auch Benachrichtigungsrichtlinien konfigurieren, die Sie benachrichtigen, Leistungsänderungen auftreten, dass die Antwortzeit beispielsweise auf ein inakzeptables Maß steigt. Logbasierte Messwerte eignen sich, um eine der folgenden Aktionen auszuführen:

  • Zählen Sie, wie oft eine Nachricht, z. B. Warnungen oder Fehler, und erhalten eine Benachrichtigung, wenn die Anzahl der Vorkommnisse einen Grenzwert überschreitet.
  • Beobachten von Trends in Ihren Daten, z. B. von Latenzwerte in Ihren Logs. Sie können sich benachrichtigen lassen, wenn sich die Werte auf inakzeptable Weise ändern.
  • Erstellen von Diagrammen, um die aus Logs extrahierten numerischen Daten darzustellen.

Weitere Informationen finden Sie unter Logs überwachen.

Logspeicher

Sie müssen den Speicherort der Logs nicht konfigurieren. Standardmäßig werden die Das Google Cloud-Projekt speichert automatisch alle empfangenen Logs in Einen Cloud Logging-Log-Bucket Wenn zum Beispiel Das Google Cloud-Projekt enthält eine Compute Engine-Instanz, dann werden alle Logs Von Compute Engine generierte Inhalte werden automatisch für Sie gespeichert. Bei Bedarf können Sie jedoch eine Reihe von Aspekten Ihren Logspeicher, z. B. welche Logs gespeichert werden, welche verworfen werden und wo die Logs gespeichert sind.

Sie können Logeinträge an die folgenden Ziele weiterleiten oder weiterleiten. kann sich im selben Google Cloud-Projekt oder in einem anderen Google Cloud-Projekt befinden:

  • Cloud Logging-Bucket: Stellt Speicher in Cloud Logging bereit. In einem Log-Bucket können Logeinträge gespeichert werden, die von mehreren Google Cloud-Projekten empfangen werden. Der Log-Bucket kann sich in dem Projekt befinden, aus dem die Logeinträge stammen, oder die sich in einem anderen Projekt befinden. Informationen zum Ansehen von Logeinträgen, die in Log-Buckets gespeichert sind, finden Sie unter Logs abfragen und ansehen und An Cloud Logging-Buckets weitergeleitete Logs ansehen.

    Sie können Ihre Cloud Logging-Daten mit anderen Daten kombinieren, indem Sie einen Log-Bucket auf Log Analytics umstellen und dann einen verknüpften Datenpool erstellen. Das ist ein schreibgeschützter Datenpool, der auf den Seiten BigQuery Studio und Looker Studio abgefragt werden kann.

  • BigQuery-Dataset: Ermöglicht das Speichern von Logeinträgen in einem beschreibbaren BigQuery-Dataset. Das BigQuery-Dataset kann sich im selben Projekt befinden, aus dem die Logeinträge stammen, oder aus einem anderen Projekt arbeiten. Sie können Big-Data-Analysefunktionen auf die gespeicherten Logeinträge anwenden. Informationen zum Aufrufen von zu BigQuery weitergeleiteten Logeinträgen finden Sie unter Zu BigQuery weitergeleitete Logs ansehen.

  • Cloud Storage-Bucket: Bietet die Speicherung von Logeinträgen in Cloud Storage. Der Cloud Storage-Bucket kann sich in demselben Projekt befinden, in dem Logeinträge enthalten sind aus einem anderen Projekt stammen. Logeinträge werden als JSON-Dateien gespeichert. Informationen zum Ansehen von Logeinträgen, die an Cloud Storage weitergeleitet wurden, finden Sie unter An Cloud Storage weitergeleitete Logs ansehen.
  • Pub/Sub-Thema: Bietet Unterstützung für Integrationen von Drittanbietern. Logeinträge werden in JSON formatiert und dann an ein Pub/Sub-Thema weitergeleitet. Das Thema kann sich im selben Projekt befinden, in dem Logeinträge enthalten sind aus einem anderen Projekt stammen. Informationen zum Ansehen von Logeinträgen, die an Pub/Sub weitergeleitet werden, finden Sie unter An Pub/Sub weitergeleitete Logs ansehen.

  • Google Cloud-Projekt: Sie können Protokolleinträge an ein anderes Google Cloud-Projekt weiterleiten. Bei dieser Konfiguration werden die Logeinträge von den Senken im Zielprojekt verarbeitet.

Weitere Informationen, einschließlich zur Unterstützung der Regionalität von Daten, finden Sie unter Routing und Speicher

Logkategorien

Logkategorien sollen die verfügbaren Logging-Informationen beschreiben an Sie; Die Kategorien schließen sich nicht gegenseitig aus:

  • Plattformlogs sind Logs, die von Ihren Google Cloud-Diensten geschrieben werden. Diese Logs können Ihnen dabei helfen, Fehler und Probleme zu beheben sowie die von Ihnen verwendeten Google Cloud-Dienste besser zu verstehen.

  • Komponentenprotokolle ähneln Plattformprotokollen, werden aber von von Google bereitgestellten Softwarekomponenten generiert, die auf Ihren Systemen ausgeführt werden. Für Beispiel: GKE bietet Softwarekomponenten, die Nutzer auf ihrer eigenen VM oder in ihrem eigenen Rechenzentrum ausführen. Logs werden von den GKE-Instanzen des Nutzers generiert und an sein Google Cloud-Projekt gesendet. GKE verwendet die Logs oder deren Metadaten um Nutzer-Support zu bieten.

  • Sicherheitsprotokolle helfen Ihnen bei der Beantwortung der Frage „Wer hat was, wo und wann getan?“:

    • Cloud-Audit-Logs enthalten Informationen zu Verwaltungsaktivitäten und Zugriffen in Ihren Google Cloud-Ressourcen. Das Aktivieren von Audit-Logs trägt zu Sicherheit, Auditing und Compliance bei Entitäten überwachen Google Cloud-Daten und -Systeme auf mögliche oder der Missbrauch externer Daten. Eine Liste der von Google Cloud unterstützten Dienste finden Sie unter Google-Dienste mit Audit-Logs.
    • Access Transparency erhalten Sie Protokolle von Aktionen, die von Google-Mitarbeitern Zugriff auf Ihre Google Cloud-Inhalte. Access Transparency-Logs können Sie die Einhaltung Ihrer rechtlichen und gesetzlichen Vorschriften für Ihre Organisation. Eine Liste der von Google Cloud unterstützten Dienste finden Sie unter Google-Dienste mit Access Transparency-Logs
  • Nutzergeschriebene Logs sind Logs, die von benutzerdefinierten Anwendungen und Diensten geschrieben werden. Normalerweise werden diese Logs mit einer der folgenden Methoden in Cloud Logging geschrieben:

Datenmodell für Protokolle

Das Datenmodell, das in Cloud Logging zum Organisieren Ihrer Protokolldaten verwendet wird, bestimmt die Dimensionen, über die Sie diese Daten abfragen können. Beispiel: Da ein log eine benannte Sammlung einzelner Einträge ist, können Sie mit dem Namen des Protokolls. Da jedes Log aus einem von Logeinträgen, die als LogEntry-Objekte formatiert sind, können Abfragen schreiben, mit denen nur die Logeinträge abgerufen werden, bei denen der Wert eines ein LogEntry-Feld einigen Kriterien entspricht. So können Sie beispielsweise nur die Logeinträge anzeigen, deren severity-Feld den Wert ERROR hat.

In jedem Logeintrag wird der Status aufgezeichnet oder ein bestimmtes Ereignis beschrieben, z. B. die Erstellung einer VM-Instanz. Sie besteht im Wesentlichen aus Folgendem:

  • Einem Zeitstempel, der angibt, wann das Ereignis eingetreten ist oder wann es von Cloud Logging empfangen wurde.
  • Informationen zur Quelle des Logeintrags. Diese Quelle wird als überwachte Ressource bezeichnet. Beispiele für überwachte Ressourcen sind einzelne Compute Engine-VM-Instanzen und Google Kubernetes Engine-Container Eine vollständige Liste der überwachten Ressourcentypen finden Sie unter Überwachte Ressourcen und Dienste.
  • Einer Nutzlast, die auch als Nachricht bezeichnet wird, die entweder als unstrukturierte Textdaten oder als strukturierte Textdaten im JSON-Format bereitgestellt wird.
  • Dem Name des Logs, zu dem es gehört. Der Name eines Logs enthält den vollständigen Pfad der Ressource, zu der die Logeinträge gehören, gefolgt von einer Kennung. Im Folgenden finden Sie Beispiele für Lognamen:

    • projects/my-project/logs/stderr
    • projects/my-project/logs/stdout
    • projects/my-project/compute.googleapis.com/activity

Zugriffssteuerung

Mithilfe von IAM-Rollen (Identity and Access Management) wird festgelegt, ob ein Hauptkonto auf Protokolle zugreifen kann. Sie können Hauptpersonen vordefinierte Rollen zuweisen oder benutzerdefinierte Rollen erstellen. Weitere Informationen zu erforderlichen Berechtigungen finden Sie unter Zugriffssteuerung:

Aufbewahrung

Log-Einträge werden für einen bestimmten Zeitraum in Log-Buckets gespeichert und dann gelöscht. Weitere Informationen finden Sie unter Routing und Speicherübersicht: Aufbewahrung

Preise

Für das Weiterleiten von Logs an ein unterstütztes Ziel fallen in Cloud Logging keine Gebühren an. Es können jedoch Gebühren am Ziel erhoben werden. Mit Ausnahme des _Required-Log-Buckets fallen in Cloud Logging Kosten für das Streamen von Logs in Log-Buckets und für die Speicherung über die standardmäßige Aufbewahrungsdauer des Log-Buckets hinaus an.

Für das Kopieren von Logs, das Definieren von Log-Bereichen oder das Ausführen von Abfragen über die Seiten Log-Explorer oder Log Analytics fallen in Cloud Logging keine Gebühren an.

Weitere Informationen finden Sie in folgenden Dokumenten: