An Pub/Sub weitergeleitete Logs ansehen

In diesem Dokument wird erläutert, wie Sie Logeinträge finden, die Sie von Cloud Logging an Pub/Sub-Themen weitergeleitet haben. Dies geschieht nahezu in Echtzeit. Wir empfehlen die Verwendung von Pub/Sub, wenn Sie Cloud Logging-Logs in Software von Drittanbietern einbinden möchten.

Wenn Sie Logeinträge an ein Pub/Sub-Thema weiterleiten, veröffentlicht Logging jeden Logeintrag sofort nach dem Empfang als Pub/Sub-Nachricht. Weitergeleitete Logeinträge sind in der Regel innerhalb von Sekunden nach ihrer Ankunft im Logging-System verfügbar. 99% der Logeinträge sind in weniger als 60 Sekunden verfügbar.

Hinweise

Eine konzeptionelle Diskussion der Senken finden Sie unter Routing- und Speichermodelle – Übersicht: Senken.

Eine Anleitung zum Weiterleiten von Logeinträgen finden Sie unter Logs an unterstützte Ziele weiterleiten.

Logs ansehen

So können Sie Logs anzeigen lassen, während sie über Pub/Sub gestreamt werden:

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

    Gehen Sie zu Themen.

    Wenn Sie diese Seite über die Suchleiste finden, wählen Sie das Ergebnis aus, dessen Zwischenüberschrift Pub/Sub lautet.

  2. Suchen oder erstellen Sie ein Abo für das Thema, das in der Logsenke verwendet wird, und rufen Sie einen Logeintrag daraus ab. Sie müssen möglicherweise warten, bis ein neuer Logeintrag veröffentlicht wird.

Logs organisieren

Das Feld data jeder Nachricht ist ein Base64-codiertes LogEntry-Objekt. Beispielsweise kann ein Pub/Sub-Abonnent das folgende Objekt aus einem Thema abrufen, das Logeinträge empfängt. Das angezeigte Objekt enthält eine einzelne Nachricht. Pub/Sub kann aber möglicherweise auch mehrere Nachrichten zurückgeben, wenn mehrere Logeinträge verfügbar sind. Der Wert data (ca. 600 Zeichen) und der Wert ackId (ca. 200 Zeichen) wurden gekürzt, um das Beispiel besser lesbar zu machen:

{
 "receivedMessages": [
  {
   "ackId": "dR1JHlAbEGEIBERNK0EPKVgUWQYyODM...QlVWBwY9HFELH3cOAjYYFlcGICIjIg",
   "message": {
    "data": "eyJtZXRhZGF0YSI6eyJzZXZ0eSI6Il...Dk0OTU2G9nIjoiaGVsbG93b3JsZC5sb2cifQ==",
    "attributes": {
     "compute.googleapis.com/resource_type": "instance",
     "compute.googleapis.com/resource_id": "123456"
    },
    "messageId": "43913662360"
   }
  }
 ]
}

Wenn Sie das Feld data decodieren und formatieren, erhalten Sie das folgende LogEntry-Objekt:

{
  "log": "helloworld.log",
  "insertId": "2015-04-15|11:41:00.577447-07|10.52.166.198|-1694494956",
  "textPayload": "Wed Apr 15 20:40:51 CEST 2015 Hello, world!",
  "timestamp": "2015-04-15T18:40:56Z",
  "labels": {
    "compute.googleapis.com\/resource_type": "instance",
    "compute.googleapis.com\/resource_id": "123456"
  },
  "severity": "WARNING"
  }
}

Drittanbieter in Pub/Sub einbinden

Sie leiten Ihre Logeinträge an ein Pub/Sub-Thema weiter. Der Drittanbieter empfängt Ihre Logeinträge, indem er das gleiche Thema abonniert. Logging unterstützt die Logging-Integration von Drittanbietern wie z. B. Splunk oder Datadog. Eine aktuelle Liste der Einbindungen für Google Cloud Observability finden Sie unter Partner.

Für die Integration führen Sie in der Regel die folgenden Schritte aus:

  1. Erstellen Sie in dem Projekt, aus dem Ihre Logeinträge stammen, ein Pub/Sub-Thema mit einem Standardabo:

    1. Aktivieren Sie die Pub/Sub API.

      Enable the API

    2. Rufen Sie in der Google Cloud Console die Seite Themen auf:

      Gehen Sie zu Themen.

      Wenn Sie diese Seite über die Suchleiste finden, wählen Sie das Ergebnis aus, dessen Zwischenüberschrift Pub/Sub lautet.

    3. Klicken Sie auf Thema erstellen.

    4. Geben Sie im Feld Themen-ID eine ID für das Thema ein. Beispiel: projects/my-project-id/topics/my-pubsub-topic

      Jede Nachricht, die an das Thema gesendet wird, enthält den Zeitstempel des weitergeleiteten Logeintrags in der Pub/Sub-Nachricht attributes; zum Beispiel:

      "attributes": {
        "logging.googleapis.com/timestamp": "2024-07-01T00:00:00Z"
      }
      
    5. Behalten Sie die Option Standardabo hinzufügen bei. Wählen Sie keine andere Option aus.

    6. Klicken Sie auf Thema erstellen.

  2. Konfigurieren Sie in dem Projekt, aus dem Ihre Logeinträge stammen, Logging so, dass Logeinträge an Ihr Thema weitergeleitet werden:

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

      Zum Logrouter

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

    2. Klicken Sie auf Senke erstellen, geben Sie einen Namen und eine Beschreibung für die Senke ein und klicken Sie auf Weiter.
    3. Wählen Sie im Menü Sink Service (Senkendienst) die Option Cloud Pub/Sub-Thema aus, wählen Sie das Pub/Sub-Thema aus und klicken Sie auf Weiter.
    4. Wählen Sie die Logeinträge aus, die in der Senke enthalten sein sollen, und klicken Sie dann auf Weiter.
    5. Optional: Wählen Sie die Logeinträge aus, die ausgeschlossen werden sollen.
    6. Klicken Sie auf Senke erstellen.

      Ein Dialogfeld mit der Meldung Senke erstellt wird angezeigt. Diese Nachricht zeigt an, dass Ihre Senke erfolgreich mit Berechtigungen erstellt wurde, um zukünftige übereinstimmende Logeinträge an das von Ihnen ausgewählte Ziel weiterzuleiten.

    7. Weisen Sie der Identität des Autors der Senke die Rolle Pub/Sub-Publisher (roles/pubsub.publisher) zu. Weitere Informationen zum Abrufen der Identität des Autors und zum Zuweisen einer Rolle finden Sie unter Zielberechtigungen festlegen.

    Cloud Logging sendet jetzt Logeinträge an Ihr Pub/Sub-Thema.

  3. Erstellen Sie das Abo.

    Wenn Sie beispielsweise Dataflow verwenden, um Daten aus Ihrem Pub/Sub-Thema abzurufen und an Datadog zu senden, müssen Sie zwei Schritte ausführen:

    1. Erstellen oder erhalten Sie ein Dienstkonto und weisen Sie ihm dann die IAM-Rollen zu, die zum Abonnieren Ihres Themas erforderlich sind. Das Dienstkonto benötigt mindestens die folgenden Rollen:

      Weitere Informationen finden Sie in folgenden Dokumenten:

    2. Erstellen Sie einen Job aus einer Vorlage und führen Sie ihn dann aus. Für dieses Beispiel verwenden Sie die Vorlage „Pub/Sub für Datadog“.

Der Drittanbieter sollte sofort Logeinträge erhalten.

Unter Szenarien zum Exportieren von Cloud Logging-Daten: Splunk finden Sie Informationen zu gängigen Logrouting-Szenarien mit Pub/Sub.

Fehlerbehebung

Wenn im Ziel der Senke Logeinträge fehlen oder Sie vermuten, dass die Senke Logeinträge nicht ordnungsgemäß weiterleitet, lesen Sie den Hilfeartikel Fehlerbehebung bei Routing-Logs.

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: