Integrationsfehler beheben

Google Cloud bietet Ihnen die Tools, mit denen Sie die Zuverlässigkeit Ihrer Projekte überwachen können mit Google Cloud Monitoring und Fehler beheben mit Google Cloud Logging Fehlerlogs. Wenn bei der Erfüllung von Nutzer-Intents ein Fehler auftritt, Die Google Home Analytics-Pipeline zeichnet diesen Fehler bei Ihren Messwerten auf. veröffentlicht ein Fehlerlog in Ihren Projektlogs.

Zur Fehlerbehebung sind zwei Schritte erforderlich:

  1. Behalte den Status deiner Projekte mit Smart-Home-Messwerten im Blick.
  2. Untersuchen Sie die Probleme, indem Sie die detaillierten Fehlerbeschreibungen in der Fehlerlogs.

Der Prozess ist ähnlich wie bei der lokalen Integration mithilfe des Local Home SDK Sobald Sie den Fehlerbehebungsablauf beherrschen, können Sie zwischen Messwerten und Logs hin und her wechseln, um Einblicke Fehler.

Monitoringfehler

Sie können Google Cloud Monitoring dashboards verwenden um auf Ihre Projektmetriken zuzugreifen. Einige wichtige Diagramme sind besonders nützlich für die Qualitätsüberwachung und das Debugging:

  • Das Diagramm Erfolgsquote ist das erste Diagramm, ab dem die Zuverlässigkeit Ihrer Projekte überwachen. Rückgänge in diesem Diagramm können auf einen Ausfall für einen Teil oder die gesamte Nutzerbasis hinweisen. Wir empfehlen, Sie überwachen dieses Diagramm nach jeder Änderung genau auf Unregelmäßigkeiten. oder ein Update für Ihr Projekt.
  • Das Diagramm zur 95. Perzentillatenz ist ein wichtiger Indikator dafür, die Leistung deiner Smart-Home-Aktion bei deinen Nutzern. Plötzliche Schwankungen in diesem Diagramm deutet das darauf hin, dass Ihre Systeme nicht auf dem neuesten Stand sind mit den Anfragen. Es empfiehlt sich, dieses Diagramm regelmäßig zu prüfen, unerwartetes Verhalten.
  • Die Diagramme zur Fehleraufschlüsselung sind am nützlichsten für: Fehlerbehebung bei deinen Integrationen. Für jeden Fehler wird im Diagramm für den Erfolgsprozentsatz markiert, wird ein Fehlercode Fehleraufschlüsselung. Sie können die gemeldeten Fehler sehen, vom Google Home platform und zur Fehlerbehebung in der Tabelle unten.

Plattformfehlercodes

Im Folgenden finden Sie einige häufige Fehlercodes, die Sie möglicherweise in Ihren Projektprotokollen sehen, um von der Google Home platform erfasste Probleme identifizieren. Weitere Informationen finden Sie in der folgenden Tabelle mit Informationen zur Fehlerbehebung.

Fehlercode Beschreibung
BACKEND_FAILURE_URL_ERROR Google hat von Ihrer Website einen anderen HTTP-Fehlercode 401 als 401 erhalten. .

Verwenden Sie die requestId in GCP Logging, um Ihre intelligente Protokolle von Haushaltsdienstleistungen.
BACKEND_FAILURE_URL_TIMEOUT Bei der Anfrage von Google kam es zu einer Zeitüberschreitung, als Sie versucht haben, Ihren Dienst zu erreichen.

Stellen Sie sicher, dass Ihr Dienst online ist und Verbindungen akzeptiert und nicht über der Kapazität liegt. Prüfen Sie außerdem, ob das Ziel das Gerät eingeschaltet, online und synchronisiert ist.
BACKEND_FAILURE_URL_UNREACHABLE Google hat von Ihrem Dienst einen HTTP-Fehlercode 5xx erhalten.

Verwenden Sie die requestId in GCP Logging, um Ihre intelligente Protokolle von Haushaltsdienstleistungen.
DEVICE_NOT_FOUND Das Gerät ist beim Partnerdienst nicht vorhanden.

Dies deutet in der Regel auf einen Fehler bei der Datensynchronisierung oder einen Race-Fehler hin. .
GAL_BAD_3P_RESPONSE Google kann die Antwort von deinem Kontoverknüpfungsdienst nicht parsen Format oder Werte in der Nutzlast ungültig.

Verwenden Sie requestId in GCP Logging, um Fehlerlogs zu prüfen in Ihrem Kontoverknüpfungsdienst.
GAL_INTERNAL Beim Abrufen eines Fehlers ist ein interner Google-Fehler aufgetreten. ein Zugriffstoken hinzufügen.

Wenn Sie eine erhöhte Fehlerrate in GCP Logging feststellen, wenden Sie sich an .
GAL_INVALID_ARGUMENT Beim Abrufen eines Fehlers ist ein interner Google-Fehler aufgetreten. ein Zugriffstoken hinzufügen.

Wenn Sie eine erhöhte Fehlerrate in GCP Logging feststellen, wenden Sie sich an .
GAL_NOT_FOUND Die in Google gespeicherten Zugriffstokens und Aktualisierungstokens des Nutzers werden ungültig gemacht und kann nicht mehr aktualisiert werden. Die Nutzenden müssen Verknüpfen Sie das Konto wieder, um Ihren Dienst weiterhin nutzen zu können.

Wenn Sie eine erhöhte Fehlerrate in GCP Logging feststellen, wenden Sie sich an .
GAL_PERMISSION_DENIED Ein interner Google-Fehler ist aufgetreten, wenn die Tokenfreigabe nicht autorisiert wurde.

Wenn Sie eine erhöhte Fehlerrate in GCP Logging feststellen, wenden Sie sich an .
GAL_REFRESH_IN_PROGRESS Das Zugriffstoken des Nutzers ist abgelaufen und es wird ein weiterer gleichzeitiger Versuch unternommen, wird bereits aktualisiert.

Dies stellt kein Problem dar und Sie müssen nichts weiter tun.
INVALID_AUTH_TOKEN Google hat von Ihrem Dienst den HTTP-Fehlercode 401 erhalten.

Das Zugriffstoken ist nicht abgelaufen, aber Ihr Dienst hat es ungültig gemacht. Verwenden Sie requestId in GCP Logging, um Ihre intelligente Protokolle von Haushaltsdienstleistungen.
INVALID_JSON Die JSON-Antwort kann nicht geparst oder verstanden werden.

Prüfen Sie die Struktur Ihrer JSON-Antwort auf ungültige Syntax wie als nicht übereinstimmende Klammern, fehlende Kommas oder ungültige Zeichen.
OPEN_AUTH_FAILURE Das Zugriffstoken des Nutzers ist abgelaufen und Google kann es nicht aktualisieren. oder Google vom Dienst den HTTP-Fehlercode 401 erhalten hat.

Wenn Sie eine erhöhte Rate für diesen Code feststellen, prüfen Sie, ob Sie auch eine höhere Fehlerrate im Zusammenhang mit Smart-Home-Intents oder Aktualisierungen Token-Anfragen.
PARTNER_RESPONSE_INVALID_ERROR_CODE Die Antwort zeigt einen unbekannten Fehlercode an.

Wenn in Ihrer Antwort auf einen Fehler ein Fehler vorliegt, verwenden Sie zur Verfügung gestellt von unserem unterstützten Fehlercodes.
PARTNER_RESPONSE_INVALID_PAYLOAD Das Antwortfeld „payload“ kann nicht als JSON geparst werden Objekt.

Prüfen Sie, ob das Nutzlastfeld in Ihrer Antwort auf die Anfrage übereinstimmende Werte enthält. Klammern und ist korrekt als JSON-Feld strukturiert.
PARTNER_RESPONSE_INVALID_STATUS Die Antwort gibt keinen oder einen falschen Status an.

Antworten auf Anfragen zur Intent-Auftragsausführung sollten einen Status angeben entweder mit SUCCESS, OFFLINE, ERROR, EXCEPTIONS. Ich finden Sie weitere Informationen zu Umgang mit Fehlern und Ausnahmen.
PARTNER_RESPONSE_MISSING_COMMANDS_AND_DEVICES Mindestens ein Intent in der Anfrage fehlt im Antwort.

Prüfen Sie, ob Ihr <ph type="x-smartling-placeholder"></ph> Ausführungsantwort korrekt strukturiert und die Ergebnisse für alle Intents aus der Anfrage sind in Ihrer Antwort vorhanden.
PARTNER_RESPONSE_MISSING_DEVICE Mindestens ein in der Anfrage enthaltenes Gerät fehlt auf der Antwort.

Prüfen Sie, ob Ihr <ph type="x-smartling-placeholder"></ph> Ausführungsantwort korrekt strukturiert ist und alle Geräte IDs aus der Anfrage sind in Ihrer Antwort enthalten.
PARTNER_RESPONSE_MISSING_PAYLOAD Die Antwort enthält kein payload-Feld.

Achten Sie darauf, in Ihrer Antwort auf die Anfrage ein Nutzlastfeld anzugeben. Ich erfahren Sie mehr darüber, wie Sie <ph type="x-smartling-placeholder"></ph> Ausführungsantwort.
PARTNER_RESPONSE_NOT_OBJECT Die Antwort kann nicht als JSON-Objekt geparst werden.

Prüfen Sie alle Felder in Ihrer Antwortanfrage auf unbeabsichtigte Zeichen. nicht übereinstimmende Klammern oder Formatierungsfehler. Einige Unicode-Zeichen wird möglicherweise nicht unterstützt. Achten Sie außerdem darauf, dass Ihre Antwort richtig ist. die als JSON-Objekt strukturiert sind.
PROTOCOL_ERROR Fehler beim Verarbeiten der Anfrage.

Verwenden Sie die requestId in Google Cloud Logging, um Ihre Smart-Home-Dienstprotokolle.
RESPONSE_TIMEOUT Zeitüberschreitung bei der Anfrage, während auf die Antwort gewartet wurde.

Die Zeitüberschreitung beim Senden einer Antwort beträgt 9 Sekunden ab dem wird die Anfrage gesendet. Antworte bitte innerhalb dieses Zeitraums der Zeit.
RESPONSE_UNAVAILABLE Es wird keine Antwort empfangen oder die Antwort gibt keinen Status an.

Antworten auf Anfragen zur Intent-Auftragsausführung sollten strukturiert sein laut Smart-Home-Dokumente und den Status anzeigen.
TRANSIENT_ERROR Ein vorübergehender Fehler ist ein Fehler, der von selbst behoben wird.

Meistens werden diese Fehler durch eine Verbindung zu einem Gerät oder dass der Dienst unterbrochen wird. Wenn neue Verbindungen zu einem Server nicht geöffnet.

Suchprotokolle

Sobald Sie sich mit dem Monitoring Ihrer Integrationen mithilfe von Messwerten vertraut gemacht haben, bestimmte Fehler mithilfe Cloud Logging Ein Fehlerprotokoll ist Ein JSON-ähnlicher Eintrag mit Feldern, die nützliche Informationen wie Zeit, Fehler Code und Details zum ursprünglichen Smart-Home-Intent.

Mehrere Systeme in Google Cloud senden Protokolle an jederzeit und überall ein. Erforderliche Schritte Abfragen schreiben, um Logs zu filtern und die richtigen finden. Abfragen können auf einem Zeitraum basieren, Ressource, protokollieren Sie Schweregrad- oder benutzerdefinierte Einträge.

Cloud-Logs abfragen

Mithilfe der Abfrageschaltflächen können Sie Ihre benutzerdefinierten Filter erstellen.

Cloud-Logabfragen erstellen

Um einen Zeitraum festzulegen, klicken Sie auf die entsprechende Schaltfläche zur Auswahl des Zeitraums und wähle eine der verfügbaren Optionen. Dadurch werden die Logs gefiltert und nur diejenigen angezeigt, die aus dem ausgewählten Zeitraum.

Um eine Ressource anzugeben, klicken Sie auf das Drop-down-Menü Ressource. und wählen Sie Google Assistant Action Project aus. Dadurch wird ein Filter um Logs aufzurufen, die aus Ihrem Projekt stammen.

Verwenden Sie die Schaltfläche Schweregrad, um nach Notfall, Info, Fehlerbehebung, und andere Schweregrad-Logebenen.

Sie können auch das Abfragefeld im Logs Explorer verwenden. um benutzerdefinierte Einträge einzugeben. Die von diesem Feld verwendete Abfrage-Engine unterstützt sowohl einfache Abfragen wie String-Abgleiche und komplexere Abfragetypen, einschließlich Vergleichsoperatoren (<, >=, !=) und boolesche Operatoren (AND, OR, NOT) an.

Der benutzerdefinierte Eintrag unten würde beispielsweise Fehler zurückgeben, die von einem LIGHT-Gerätetyp stammen:

resource.type = "assistant_action_project" AND severity = ERROR AND jsonPayload.executionLog.executionResults.actionResults.device.deviceType = "LIGHT"

Abfragebibliothek finden Sie weitere Beispiele für effektive Abfragen von Logs.

Fehlerkorrekturen beim Testen

Nachdem Sie Fehler identifiziert und Aktualisierungen angewendet haben, um sie zu beheben, empfehlen wir, Tests durchzuführen. Ihre Korrekturen gründlich mit Google Home Test Suite Wir stellen Ihnen ein Nutzerhandbuch zur wie Sie Test Suite verwenden. Sie werden Schritt für Schritt durch das Testen Ihres effektiv ändern können.

Lernmaterialien

In diesem Dokument wird beschrieben, wie Sie Fehler in Ihrem Smart Home beheben. Action – Weitere Informationen zum Debugging finden Sie auch in unseren Codelabs: