Sie können über Google Cloud Logging auf Ereignisprotokolle für Ihre Integrationen zugreifen. Mit Cloud Logging können Sie Logs analysieren, Messwerte und Benachrichtigungen erstellen oder Logs mithilfe von Google Cloud Pub/Sub in andere Anwendungen exportieren.
Zugriffsprotokollierung
Wenn Sie von Google Cloud Console auf Cloud Logging zugreifen möchten, klicken Sie auf Alle Produkte ansehen und dann auf Vorgänge > Logging.
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 für Cloud Logging 30 Tage lang aufbewahrt und dann zum Löschen geplant. Sie können Einträge auch bei Bedarf über die Benutzeroberfläche des Log-Explorers löschen.
Weitere Informationen zur effektiven Verwendung von Protokollen finden Sie im Abschnitt „Protokolle durchsuchen“ 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. |
|
Ereignisprotokolle
Für Cloud-to-cloud-Projekte werden die folgenden Ereignisse in Cloud Logging unterstützt:
Cloud Logging-Ressource | Ereignis |
---|---|
Google Assistant Action-Projekt | SYNC-Intent-Fehler |
Fehler bei der QUERY-Intention | |
Fehler bei der EXECUTE-Intent | |
Fehler bei Benachrichtigungen | |
Fehler bei der Kontoverknüpfung | |
Local Home SDK HandlerError |
Synchronisierungsprotokolle
In der folgenden Tabelle ist das Schema eines syncLog
-Eintrags aufgeführt:
Attribut | Beschreibung |
---|---|
requestId |
Smart-Home-Intent-Anfrage-ID. |
httpLatencyMsec |
Verstrichene Zeit, bevor eine Antwort eingegangen ist. |
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 |
Der für die Anfrage verwendete Transport, z. B. CLOUD oder MATTER , je nach Integration. |
actionType |
Optionaler Indikator für die vom Nutzer ausgeführte Aktion, z. B. QUERY oder EXECUTE .
Enthält für EXECUTE -Aktionen den Befehl, der für unterstützte Merkmale an die Auftragsausführung gesendet wird, z. B. ONOFF_OFF .
|
trait |
Optionale Eigenschaft, die 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 erfolgreich war. |
fallbackToCloud |
Gibt an, ob die Anfrage nach einem Fehler bei der lokalen Auftragsausführung an die Cloud-Auftragsausführung weitergeleitet wurde. |
statusType |
Gibt den Status der Antwort auf die Absicht an, z. B. SUCCESS , PENDING oder OFFLINE . Bei ERROR -Antworten enthält diese Property den errorCode , der von der Auftragsausführung bereitgestellt wird.
|
externalDebugString |
Optionale detaillierte Debugging-Nachricht, die mit dieser Nutzeraktion verknüpft ist. |
locale |
Der Sprachencode, der der Anfrage zugeordnet ist. |
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 die Protokollebene
Für Cloud-to-cloud-Projekte werden standardmäßig Fehlerprotokolle empfangen. Entwickler können auch festlegen, dass sie Erfolgsprotokolle erhalten. Das ist besonders nützlich während der Entwicklungsphase, wenn Sie alle Protokolle von einigen wenigen Kundenservicemitarbeitern erfassen möchten. Wenn Sie das Logging-Kontingent überschreiten, fallen für Ihr Projekt möglicherweise zusätzliche Kosten an.
So legen Sie die Protokollebene für Ihr Projekt fest:
Rufen Sie in der Actions on Google Console die Seite „Projekte“ auf.
Wählen Sie Ihr Smart-Home-Projekt aus.
Wählen Sie den Tab Entwickeln aus und klicken Sie in der Seitenleiste auf Aktionen.
Wählen Sie in der Drop-down-Liste Log control ingestion (Aufnahme von Steuerprotokollen) die Option Alle aus.
Logausschlüsse
Entwickler können Logausschlüsse mithilfe der Abfragesprache für Logging erstellen, um ihre Protokolle flexibler anzupassen. Die Logging Query Language wird auch vom Log-Explorer verwendet. Sie können den Log-Explorer also zum Erstellen von Abfragen verwenden.
Eine Anleitung zum Erstellen von Ausschlussfiltern finden Sie in diesem Leitfaden (Konfigurieren des Ausschlussfilters für die _Default
-Senke).
Logbasierte Messwerte
Entwickler können logbasierte Messwerte verwenden, um Muster in ihren Logs zu verfolgen und zu analysieren. Außerdem ist es möglich, benutzerdefinierte Diagramme zu erstellen und Benachrichtigungen für logbasierte Messwerte einzurichten.
Wenn Sie logbasierte Messwerte für Smart-Home-Geräte verwenden möchten, lesen Sie den Leitfaden zum Erstellen eines logbasierten Zählermesswerts.
Weitere Informationen
Weitere Informationen zur Verwendung von Cloud Logging in Ihrem Projekt finden Sie in der Dokumentation:
- Preise: Details zu Kontingenten und Kosten bei Überschreitung.
- Kontingente und Limits: Informationen zu Limits und Aufbewahrungsrichtlinien für die Protokollierung der Nutzung.
- Erweiterte Logabfragen: Leitfaden zur Verwendung erweiterter Ausdrücke zum Abfragen und Analysieren von Protokolldaten.