Google Cloud te proporciona las herramientas para monitorear la confiabilidad de tus proyectos con Google Cloud Monitoring y depurar problemas con Google Cloud Logging registros de errores. Siempre que se produce un fallo al satisfacer las intenciones del usuario, el pipeline de Google Home Analytics registra ese fallo en tus métricas y publica un registro de errores en los registros de tu proyecto.
Para solucionar tus errores, sigue estos dos pasos:
- Supervisa el estado de tus proyectos con métricas de casa inteligente.
- Investigue los problemas consultando las descripciones detalladas de los errores en los registros de errores.

Opcionalmente, puedes probar tu Acción compartiéndola con otros usuarios. Asegúrese de manejar los errores y excepciones adecuadamente.
Errores de monitoreo
Puedes usar Google Cloud Monitoring dashboards para acceder a las métricas de tu proyecto. Existen algunos gráficos clave que resultan especialmente útiles para el control de calidad y la depuración:
- 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 de cómo se está desempeñando su integración Cloud-to-cloud para sus usuarios. Las fluctuaciones repentinas en este gráfico podrían indicar que sus sistemas no pueden procesar todas las solicitudes. Se recomienda revisar este gráfico periódicamente para detectar cualquier comportamiento inesperado.
- Los diagramas de Desglose de errores son muy útiles a la hora de solucionar problemas en sus integraciones. Por cada error resaltado en su gráfico de porcentaje de éxito, se muestra un código de error en su desglose de errores. Puedes ver los errores señalados por Google Home platform y cómo solucionarlos en la tabla siguiente.
Códigos de error de la plataforma
Aquí hay algunos códigos de error comunes que puede ver en los registros de su proyecto para identificar 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 ha recibido un código de error HTTP 4xx distinto de 401 de su servicio.
Utilice requestId en GCP Logging para consultar los registros de su servicio de hogar inteligente.
|
BACKEND_FAILURE_URL_TIMEOUT |
La solicitud de Google para conectarse a su servicio expiró.
Verifica que tu servicio esté en línea, acepte conexiones y no esté sobrecargado. Además, verifica que el dispositivo objetivo esté encendido, en línea y sincronizado. |
BACKEND_FAILURE_URL_UNREACHABLE |
Google ha recibido un código de error HTTP 5xx de su servicio.
Usa requestId en GCP Logging 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 se 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 se 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 necesita volver a vincular su cuenta para continuar utilizando su 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 intercambio de tokens.
Si observa una mayor frecuencia de este error en los registros de GCP, contáctenos para obtener más información. |
GAL_REFRESH_IN_PROGRESS |
El token de acceso del usuario ha caducado y ya está en marcha otro intento simultáneo de actualizarlo.
Esto no es un problema y no se necesita ninguna acción. |
INVALID_AUTH_TOKEN |
Google ha recibido un código de error HTTP 401 de su servicio.
El token de acceso no ha caducado, pero su servicio lo ha invalidado. Utilice requestId en GCP Logging para consultar los registros de su servicio de hogar inteligente.
|
INVALID_JSON |
La respuesta JSON no se puede analizar ni comprender.
Verifique la estructura de su respuesta JSON para detectar sintaxis no válida, como corchetes que no coinciden, comas faltantes o caracteres no válidos. |
OPEN_AUTH_FAILURE |
El token de acceso del usuario ha caducado y Google no puede actualizarlo, o Google ha recibido un código de error HTTP 401 de su servicio.
Si observa una tasa más alta de este código, verifique si también observa una tasa más alta de errores relacionados con intenciones de hogar inteligente o solicitudes de token de actualización. |
PARTNER_RESPONSE_INVALID_ERROR_CODE |
La respuesta indica un código de error no reconocido.
Si la respuesta a su solicitud indica un error, asegúrese de utilizar uno de nuestros códigos de error compatibles. |
PARTNER_RESPONSE_INVALID_PAYLOAD |
El campo de respuesta payload no se puede analizar como un objeto JSON.
Compruebe si el campo de carga útil en la respuesta de su 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 intención deben indicar un estado con SUCCESS, OFFLINE, ERROR, EXCEPTIONS. Puedes encontrar más información sobre
manejo de errores y excepciones.
|
PARTNER_RESPONSE_MISSING_COMMANDS_AND_DEVICES |
En la respuesta falta una o más intenciones presentes en la solicitud.
Verifique que su respuesta de ejecución esté estructurada correctamente y que los resultados para todos los propósitos de la solicitud estén presentes en su respuesta. |
PARTNER_RESPONSE_MISSING_DEVICE |
En la respuesta falta uno o más dispositivos presentes en la solicitud.
Verifique que su respuesta de ejecución esté estructurada correctamente y que todos los identificadores de dispositivo de la solicitud estén presentes en su respuesta. |
PARTNER_RESPONSE_MISSING_PAYLOAD |
La respuesta no contiene un campo payload.
Asegúrese de incluir un campo de carga útil en la respuesta de su solicitud. Puedes obtener más información sobre cómo construir correctamente una respuesta de ejecución . |
PARTNER_RESPONSE_NOT_OBJECT |
No se puede analizar la respuesta como un objeto JSON.
Revise todos los campos de la respuesta de su solicitud para detectar caracteres no deseados, corchetes que no coincidan 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 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 los documentos 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 monitoreando tus integraciones usando métricas, el siguiente paso es solucionar errores específicos usando 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 relacionados con la intención de casa inteligente original.
Hay varios sistemas dentro de Google Cloud que envían registros a tu proyecto en todo momento. Necesitas 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 búsqueda que usa este campo admite tanto búsquedas básicas, como la coincidencia de cadenas, como tipos de búsquedas más avanzadas, incluidos comparadores (<, >=, !=) y operadores booleanos (AND, OR, NOT).
Por ejemplo, la entrada personalizada que aparece a continuación devolvería errores que se originan en un dispositivo de tipo LIGHT:
resource.type = "assistant_action_project" AND severity = ERROR AND jsonPayload.executionLog.executionResults.actionResults.device.deviceType = "LIGHT"
Visite la Biblioteca de consultas para encontrar más ejemplos de cómo consultar registros de manera efectiva.
Prueba de correcciones
Una vez que identifique los errores y aplique las actualizaciones para corregirlos, le recomendamos que pruebe exhaustivamente sus correcciones 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 relacionados con 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.