Google Cloud te proporciona las herramientas para supervisar la confiabilidad de tus proyectos con Google Cloud Monitoring y depurar problemas con los registros de errores de Google Cloud Logging. Cada vez que se produce un error al satisfacer las intenciones del usuario, la canalización de Google Home Analytics registra ese error en tus métricas y publica un registro de errores en los registros de tu proyecto.
Para solucionar los errores, sigue estos dos pasos:
- Supervisa el estado de tus proyectos con métricas de casa inteligente.
- Investiga los problemas verificando las descripciones detalladas de los errores en los registros de errores.
De manera opcional, puedes probar tu Acción compartiéndola con otros usuarios. Asegúrate de controlar los errores y las excepciones de forma adecuada.
Supervisa los errores
Puedes usar Google Cloud Monitoring dashboards para acceder a las métricas de tu proyecto. Hay algunos gráficos clave que son especialmente útiles para supervisar la calidad y depurar:
- El gráfico de Tasa de éxito es el primero que debes consultar cuando supervisas la confiabilidad de tus proyectos. Las disminuciones en este gráfico pueden indicar una interrupción para una parte o la totalidad de tu base de usuarios. Te recomendamos que supervises de cerca este gráfico para detectar cualquier irregularidad después de cada cambio o actualización en tu proyecto.
- El gráfico de latencia del percentil 95 es un indicador importante del rendimiento de la integración de Cloud-to-cloud para tus usuarios. Las fluctuaciones repentinas en este gráfico pueden indicar que es posible que tus sistemas no puedan satisfacer las solicitudes. Se recomienda revisar este gráfico periódicamente para detectar cualquier comportamiento inesperado.
- Los gráficos de Desglose de errores son más útiles cuando se trata de solucionar problemas en tus integraciones. Para cada error destacado en el gráfico de porcentaje de éxito, se muestra un código de error en el desglose de errores. En la siguiente tabla, puedes ver los errores marcados por Google Home platform y cómo solucionar los problemas relacionados.
Códigos de error de la plataforma
Estos son algunos códigos de error comunes que puedes ver en los registros de tu proyecto para identificar los problemas detectados por Google Home platform. Consulta la siguiente tabla para obtener información sobre la solución de problemas.
Código de error | Descripción |
---|---|
BACKEND_FAILURE_URL_ERROR |
Google recibió un código de error HTTP 4xx distinto de 401 de tu
servicio.
Usa requestId en Cloud Logging de GCP para consultar los registros de tu servicio de casa inteligente.
|
BACKEND_FAILURE_URL_TIMEOUT |
Se agotó el tiempo de espera de la solicitud de Google al intentar acceder a tu servicio.
Verifica que tu servicio esté en línea, acepte conexiones y no esté sobrecargado. Además, verifica que el dispositivo de destino esté encendido, en línea y sincronizado. |
BACKEND_FAILURE_URL_UNREACHABLE |
Google recibió un código de error HTTP 5xx de tu servicio.
Usa requestId en Cloud Logging de GCP para consultar los registros de tu servicio de casa inteligente.
|
DEVICE_NOT_FOUND |
El dispositivo no existe en el servicio del socio.
Por lo general, esto indica una falla en la sincronización de datos o una condición de carrera. |
GAL_BAD_3P_RESPONSE |
Google no puede analizar la respuesta de tu servicio de vinculación de cuentas
debido a un formato o valores no válidos en la carga útil.
Usa requestId en Cloud Logging de GCP para verificar los registros de errores
en tu servicio de vinculación de cuentas.
|
GAL_INTERNAL |
Se produjo un error interno de Google cuando intentó recuperar un token de acceso.
Si ves un aumento en la tasa de este error en Cloud Logging de GCP, comunícate con nosotros para obtener más información. |
GAL_INVALID_ARGUMENT |
Se produjo un error interno de Google cuando intentó recuperar un token de acceso.
Si ves un aumento en la tasa de este error en Cloud Logging de GCP, comunícate con nosotros para obtener más información. |
GAL_NOT_FOUND |
Los tokens de acceso y los tokens de actualización del usuario almacenados en Google se invalidan y ya no se pueden actualizar. El usuario debe volver a vincular su cuenta para seguir usando tu servicio.
Si ves un aumento en la tasa de este error en Cloud Logging de GCP, comunícate con nosotros para obtener más información. |
GAL_PERMISSION_DENIED |
Se produjo un error interno de Google cuando no se autorizó el uso compartido de tokens.
Si ves un aumento en la tasa de este error en Cloud Logging de GCP, comunícate con nosotros para obtener más información. |
GAL_REFRESH_IN_PROGRESS |
El token de acceso del usuario venció y ya se está realizando otro intento simultáneo para actualizarlo.
Esto no es un problema y no se requiere ninguna acción. |
INVALID_AUTH_TOKEN |
Google recibió un código de error HTTP 401 de tu servicio.
El token de acceso no venció, pero tu servicio lo invalidó. Usa requestId en GCP Logging para consultar los registros de tu servicio de casa inteligente.
|
INVALID_JSON |
No se puede analizar ni comprender la respuesta JSON.
Verifica la estructura de tu respuesta JSON para detectar sintaxis no válidas, como corchetes que no coinciden, comas faltantes o caracteres no válidos. |
OPEN_AUTH_FAILURE |
El token de acceso del usuario venció y Google no puede actualizarlo, o bien Google recibió un código de error HTTP 401 de tu servicio.
Si observas un aumento en la frecuencia de este código, verifica si también ves un aumento en la frecuencia de errores relacionados con intents de casa inteligente o solicitudes de tokens de actualización. |
PARTNER_RESPONSE_INVALID_ERROR_CODE |
La respuesta indica un código de error no reconocido.
Si la respuesta de tu solicitud indica un error, asegúrate de usar uno de los códigos de error compatibles que proporcionamos. |
PARTNER_RESPONSE_INVALID_PAYLOAD |
El campo de respuesta payload no se puede analizar como un objeto JSON.
Comprueba si el campo de carga útil de la respuesta de tu solicitud tiene corchetes coincidentes y está estructurado correctamente como un campo JSON. |
PARTNER_RESPONSE_INVALID_STATUS |
La respuesta no indica un estado o indica uno incorrecto.
Las respuestas a las solicitudes de cumplimiento de intents deben indicar un estado con SUCCESS, OFFLINE, ERROR, EXCEPTIONS . Puedes encontrar más información sobre el
control de errores y excepciones.
|
PARTNER_RESPONSE_MISSING_COMMANDS_AND_DEVICES |
Falta una o más de las intenciones presentes en la solicitud en la respuesta.
Verifica que tu respuesta de ejecución esté estructurada correctamente y que los resultados de todas las intenciones de la solicitud estén presentes en tu respuesta. |
PARTNER_RESPONSE_MISSING_DEVICE |
Falta uno o más dispositivos presentes en la solicitud en la respuesta.
Verifica que tu respuesta de ejecución esté estructurada correctamente y que todos los IDs de dispositivo de la solicitud estén presentes en tu respuesta. |
PARTNER_RESPONSE_MISSING_PAYLOAD |
La respuesta no contiene un campo payload .
Asegúrate de incluir un campo de carga útil en la respuesta de tu solicitud. Puedes obtener más información para crear correctamente una respuesta de ejecución. |
PARTNER_RESPONSE_NOT_OBJECT |
No se puede analizar la respuesta como un objeto JSON.
Verifica todos los campos de la respuesta de tu solicitud para detectar caracteres no deseados, corchetes que no coinciden o errores de formato. Es posible que algunos caracteres Unicode no sean compatibles. También asegúrate de que tu respuesta esté estructurada correctamente como un objeto JSON. |
PROTOCOL_ERROR |
Se produjo un error al procesar la solicitud.
Usa requestId en Cloud Logging de Google Cloud para verificar los registros de tu servicio de casa inteligente.
|
RELINK_REQUIRED |
La respuesta indicó un error de relinkRequired , que le solicita al usuario que vuelva a vincular sus cuentas de Google y del socio.
Consulta los códigos de error admitidos para obtener más información. |
RESPONSE_TIMEOUT |
Se agotó el tiempo de espera de la solicitud mientras se esperaba la respuesta.
El período de tiempo de espera para enviar una respuesta es de 9 segundos a partir del momento en que se envía la solicitud. Asegúrate de enviar una respuesta dentro de este período. |
RESPONSE_UNAVAILABLE |
No se recibe respuesta o la respuesta no indica el estado.
Las respuestas a las solicitudes de cumplimiento de intención deben estructurarse según la documentación de la casa inteligente y deben indicar el estado. |
TRANSIENT_ERROR |
Un error transitorio es un error que se resolverá por sí solo.
Por lo general, estos errores se manifiestan como una conexión a un dispositivo o servicio que se interrumpe. También si no se pueden abrir conexiones nuevas a un servidor. |
Registros de búsqueda
Una vez que te sientas cómodo supervisando tus integraciones con métricas, el siguiente paso es solucionar problemas específicos con Cloud Logging. Un registro de errores es una entrada similar a JSON con campos que contienen información útil, como la hora, el código de error y los detalles sobre la intención de casa inteligente original.
Hay varios sistemas dentro de Google Cloud que envían registros a tu proyecto en todo momento. Debes escribir consultas para filtrar tus registros y encontrar los que necesitas. Las consultas pueden basarse en un período, un recurso, la gravedad del registro o entradas personalizadas.

Puedes usar los botones de consulta para crear tus filtros personalizados.

Para especificar un intervalo de tiempo, haz clic en el botón de selección de intervalo de tiempo
y elige una de las opciones proporcionadas. Esto filtrará los registros y mostrará los que se originaron en el período seleccionado.Para especificar un Recurso, haz clic en el menú desplegable Recurso y, luego, elige Proyecto de acción de Google Assistant. Esto agrega un filtro a tu consulta para mostrar los registros que se originan en tu proyecto.
Usa el botón Gravedad para filtrar por Emergencia, Información, Depuración y otros niveles de gravedad de los registros.
También puedes usar el campo Query en Logs Explorer para ingresar entradas personalizadas. El motor de consultas que usa este campo admite tanto consultas básicas, como la coincidencia de cadenas, como tipos de consultas más avanzadas, incluidos comparadores (<, >=, !=
) y operadores booleanos (AND, OR, NOT
).
Por ejemplo, la siguiente entrada personalizada devolvería errores que se originan en un tipo de dispositivo LIGHT
:
resource.type = "assistant_action_project" AND severity = ERROR AND jsonPayload.executionLog.executionResults.actionResults.device.deviceType = "LIGHT"
Visita la biblioteca de consultas para encontrar más ejemplos para consultar registros de manera eficaz.
Prueba de correcciones
Una vez que identifiques los errores y apliques las actualizaciones para corregirlos, te recomendamos que pruebes las correcciones a fondo con Google Home Test Suite. Proporcionamos una guía del usuario sobre cómo usar Test Suite, que te explica cómo probar tus cambios de manera eficaz.
Recursos de aprendizaje
En este documento, se proporcionan los pasos para solucionar problemas en tu acción para la casa inteligente. También puedes consultar nuestros codelabs para obtener más información sobre la depuración:
- Codelab de depuración de casa inteligente: Guía de inicio rápido para depurar la integración en la nube de la casa inteligente.
- Codelab de depuración de Local Home: Guía de inicio rápido para depurar la integración local de la casa inteligente.