Cloud Logging für Cloud-zu-Cloud-Szenarien

Sie können über Google Cloud Logging auf Ereignisprotokolle für Ihre Integrationen zugreifen. Mit Cloud Logging können Sie Logs untersuchen, Messwerte und Benachrichtigungen erstellen oder Logs mit Google Cloud Pub/Sub in andere Anwendungen exportieren.

Zugriffs-Logging

Wenn Sie über die Google Cloud Console auf Cloud Logging zugreifen möchten, klicken Sie auf Alle Produkte ansehen und rufen Sie dann Beobachtbarkeit > Logging auf.

Zu Cloud Logging wechseln

Der Zugriff auf Logging-Daten wird für Nutzer Ihres Actions-Projekts über Identity and Access Management (IAM) verwaltet. Weitere Informationen zu Rollen und Berechtigungen für Logging-Daten finden Sie unter Zugriffssteuerung für Cloud Logging.

Logeinträge werden gemäß der Aufbewahrungsrichtlinie von Cloud Logging 30 Tage lang aufbewahrt und dann zum Löschen vorgemerkt. Sie können Einträge auch bei Bedarf über die Log-Explorer-Oberfläche löschen.

Weitere Informationen zur effektiven Verwendung von Logs finden Sie im Abschnitt „Logs suchen“ des Leitfadens zur Fehlerbehebung.

Cloud Logging bietet die folgenden Ressourcentypen:

Ressourcentyp Anzeigename Beschreibung Labels
assistant_action_project Google Assistant Action-Projekt Ein Container für das Google Cloud-Projekt, das mit einer Assistant-Aktion verknüpft ist.
  • project_id: Die Kennung Ihres aktuellen Projekts, das mit dieser Ressource verknüpft ist, z. B. my-project.

Ereignisprotokolle

Cloud-to-cloud-Projekte unterstützen die folgenden Ereignisse in Cloud Logging:

Cloud Logging-Ressource Ereignis
Google Assistant Action-Projekt SYNC-Intent-Fehler
QUERY-Intent-Fehler
EXECUTE-Intent-Fehler
Benachrichtigungsfehler
Fehler bei der Kontoverknüpfung
Local Home SDK HandlerError

Logs synchronisieren

In der folgenden Tabelle ist das Schema eines syncLog-Eintrags aufgeführt:

Attribut Beschreibung
requestId ID der Smart-Home-Intent-Anfrage.
httpLatencyMsec Verstrichene Zeit, bevor eine Antwort empfangen wurde.
status Gibt den Status der Intent-Antwort an.

Ausführungsprotokolle

In der folgenden Tabelle ist das Schema eines executionLog-Eintrags aufgeführt:

Attribut Beschreibung
requestId Eindeutige Anfrage-ID, z. B. 5325511189174727525.
latencyMsec Verstrichene Zeit, bevor eine Antwort empfangen wurde, z. B. 6000.
executionType Transport, der für die Anfrage verwendet wird, z. B. CLOUD oder MATTER, je nach Integration.
actionType Optionaler Indikator für die ausgeführte Nutzeraktion, z. B. QUERY oder EXECUTE. Enthält für EXECUTE-Aktionen den Befehl, der für die Ausführung für unterstützte Attribute ausgegeben wurde, z. B. ONOFF_OFF
trait Optionales Merkmal, das mit dieser Nutzeraktion verknüpft ist.
deviceTypes Liste der Gerätetypen, die vom Ereignis betroffen sind, z. B. LIGHT.
isSuccess Gibt an, ob die Anfrage eine erfolgreiche Antwort erhalten hat.
fallbackToCloud Gibt an, ob die Anfrage nach einem Fehler bei der lokalen Ausführung an die Cloud-Ausführung weitergeleitet wurde.
statusType Gibt den Status der Intent-Antwort an, z. B. SUCCESS, PENDING oder OFFLINE. Bei ERROR-Antworten enthält dieses Attribut die errorCode, die vom Fulfillment bereitgestellt wird.
externalDebugString Optionale detaillierte Debugging-Nachricht, die mit dieser Nutzeraktion verknüpft ist.
locale Der mit der Anfrage verknüpfte Sprachcode.

Benachrichtigungsprotokolle

In der folgenden Tabelle ist das Schema eines notificationLog-Eintrags aufgeführt:

Attribut Beschreibung
requestId ID der Benachrichtigungsanfrage.
structName Name der Benachrichtigungsstruktur, z. B. „ObjectDetection“.
status Gibt den Status der Benachrichtigung an.

Einstellung für Protokollebene

Cloud-to-cloud-Projekte sind standardmäßig so konfiguriert, dass sie Fehlerlogs erhalten. Entwickler können sich auch für den Erhalt von Erfolgslogs entscheiden. Dies ist besonders in der Entwicklungsphase nützlich, wenn Sie alle Logs von einigen Agents erfassen möchten. Wenn Sie das Logging-Kontingent überschreiten, können zusätzliche Gebühren für Ihr Projekt anfallen.

So können Sie die Logebene für Ihr Projekt steuern:

  1. Rufen Sie in der Actions on Google Console die Seite „Projekte“ auf.

    Zur Actions on Google Console

  2. Wähle dein Smart-Home-Projekt aus.

  3. Wählen Sie den Tab Entwickeln aus und klicken Sie in der Seitenleiste auf Aktionen.

  4. Wählen Sie in der Drop-down-Liste Logsteuerung für die Aufnahme die Option Alle aus.

Logausschlüsse

Entwickler können Logausschlüsse mithilfe der Logabfragesprache erstellen, um ihre Logs flexibler anzupassen. Die Logging-Abfragesprache wird auch vom Log-Explorer verwendet, sodass Sie mit dem Log-Explorer Abfragen erstellen können.

Folgen Sie der Anleitung zum Erstellen von Ausschlussfiltern in diesem Leitfaden (konfigurieren Sie den Ausschlussfilter für die Senke _Default).

Logbasierte Messwerte

Entwickler können logbasierte Messwerte verwenden, um Muster in ihren Logs zu verfolgen und zu analysieren. Sie können auch benutzerdefinierte Diagramme erstellen und Benachrichtigungen für logbasierte Messwerte einrichten.

Informationen zum Verwenden logbasierter Messwerte für Smart Home finden Sie im Leitfaden zum Erstellen eines logbasierten Zählermesswerts.

Weitere Informationen zur Verwendung von Cloud Logging in Ihrem Projekt finden Sie in der folgenden Dokumentation:

  • Preise: Details zu Kontingenten und Kosten für Überschreitungen.
  • Kontingente und Limits: Details zu Limits und Aufbewahrungsrichtlinien für die Logging-Nutzung.
  • Erweiterte Logabfragen: Anleitung zur Verwendung erweiterter Ausdrücke zum Abfragen und Analysieren von Logdaten.