Integrationsfehler beheben

Cloud-zu-Cloud    Matter

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.

Es gibt zwei Schritte zur Fehlerbehebung:

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

Der Vorgang ist für die lokale Integration mit der Local Home SDK ähnlich. 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 um die Zuverlässigkeit Ihrer Projekte zu überwachen. Ein Rückgang in diesem Diagramm kann auf einen Ausfall für einen Teil oder alle Nutzer hinweisen. Wir empfehlen Ihnen, dieses Diagramm nach jeder Änderung oder Aktualisierung Ihres Projekts genau auf Unregelmäßigkeiten zu prüfen.
  • 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 können darauf hindeuten, dass Ihre Systeme die Anfragen nicht bewältigen können. 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. In der folgenden Tabelle finden Sie die mit dem Symbol Google Home platform gekennzeichneten Fehler und Informationen zur Fehlerbehebung.

Plattformfehlercodes

Im Folgenden finden Sie einige häufige Fehlercodes, die Sie in Ihren Projektprotokollen sehen können, 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. Service.

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 die requestId in GCP Logging, um Fehlerprotokolle in Ihrem Kontoverknüpfungsservice zu prüfen.
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 Zugriffstokens ist ein interner Fehler aufgetreten.

Wenn Sie eine erhöhte Fehlerrate in GCP Logging feststellen, wenden Sie sich an .
GAL_NOT_FOUND Die in Google gespeicherten Zugriffs- und Aktualisierungstokens des Nutzers werden ungültig und können 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 dieser Fehler in den GCP-Logs häufiger auftritt, kontaktiere uns bitte, um weitere Informationen zu erhalten.
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 die requestId in GCP Logging, um die Protokolle Ihres Smart-Home-Dienstes zu prüfen.
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 dieser Code häufiger auftritt, prüfen Sie, ob auch die Anzahl der Fehler im Zusammenhang mit Smart-Home-Intents oder Aktualisierungstokenanfragen zugenommen hat.
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 enthält keinen oder einen falschen Status.

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 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 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 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 bei der Verarbeitung 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. Sie müssen innerhalb dieses Zeitraums antworten.
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.

In den meisten Fällen äußern sich diese Fehler in Form einer unterbrochenen Verbindung zu einem Gerät oder Dienst. Auch wenn neue Verbindungen zu einem Server nicht geöffnet werden können.

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.

Wenn Sie eine Ressource angeben möchten, klicken Sie auf das Drop-down-Menü Ressource und wählen Sie Google Assistant-Aktionsprojekt aus. Dadurch wird ein Filter der Abfrage, um Logs anzuzeigen, 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.

Korrekturen testen

Sobald Sie Fehler gefunden 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 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: