Supervisión de interrupciones en casas inteligentes

1. Antes de comenzar

Como se explicó en el codelab Cómo depurar una casa inteligente, publicamos métricas y registros en tus proyectos de casa inteligente. Las métricas te ayudan a determinar dónde tienes problemas con tus acciones de casa inteligente, y los registros resultan útiles cuando realizas análisis detallados para resolverlos.

dd44868a4ff2df6e.png

Puedes configurar alertas con las métricas proporcionadas a tu proyecto para supervisar las interrupciones de forma automática y recibir notificaciones durante las interrupciones del servicio. Publicaremos una métrica de confianza para destacar las interrupciones en tu proyecto, que abordaremos en este codelab junto con todas las demás herramientas de alertas disponibles en Google Cloud.

Requisitos previos

Qué aprenderás

  • Cómo supervisar los problemas de rendimiento y las interrupciones del servicio en tu proyecto
  • Cómo crear una alerta basada en umbrales y recibir notificaciones durante las interrupciones
  • Cómo utilizar la métrica de confianza proporcionada a tu proyecto para detectar interrupciones

2. Supervisión del rendimiento

Supervisar el rendimiento es fundamental para lograr una integración exitosa con el ecosistema de Google Home. Proporcionamos un conjunto de herramientas de supervisión para los desarrolladores de casas inteligentes en Google Cloud. Puedes usar estas herramientas para tener una idea del rendimiento de tu proyecto.

Cómo acceder a los paneles

El primer paso para acceder a tus datos es consultar los paneles de Google Home. Para ello, accede a la consola de Google Cloud y navega a Operaciones > Monitoring > Paneles. Verás que hay varios paneles disponibles, y los paneles de la casa inteligente tienen el prefijo Google Home Analytics.

317697e52ced2437.png

Creamos paneles individuales para representar cada tipo de integración. Las integraciones de Cloud, Local y Matter tienen su propio panel, y los datos de los protocolos de transmisión de la cámara se proporcionan en el panel de calidad de la cámara. Estos paneles solo contendrán datos si tienes una integración del tipo correspondiente, junto con un proyecto en funcionamiento que satisfaga las solicitudes.

Cuando abras uno de estos paneles, la vista que obtendrás será similar a la siguiente:

f8bfd69286c569a4.png

Los paneles contienen varios gráficos que muestran los detalles de las solicitudes que maneja tu proyecto. En cada panel de integración, verás un gráfico que muestra la cantidad total de solicitudes que procesó tu proyecto, un gráfico que muestra la tasa de éxito de ese tipo de integración y varios gráficos que muestran los tipos y las características de los dispositivos involucrados.

Hay tres gráficos fundamentales para evaluar el rendimiento de tus acciones para la casa inteligente:

f511fafd3aaaa1eb.png

Durante las interrupciones, es común ver tendencias a la baja en el porcentaje de éxito y tendencias al alza en el gráfico de desglose de errores. Supervisar el porcentaje de éxito de la ejecución ayuda a detectar la interrupción, mientras que observar los principales errores en el desglose de errores puede ayudar con la depuración. También es posible que observes una tendencia ascendente en la latencia durante las interrupciones, lo que puedes ver en los gráficos de latencia de solicitudes.

Ten en cuenta que la vista predeterminada con gráficos que ves en los paneles de Google Home Analytics es solo una vista que creamos para tu proyecto con datos de métricas de la casa inteligente. También puedes usar el Explorador de métricas para crear tus propios gráficos a partir de las mismas métricas subyacentes y guardarlos en tus paneles personalizados.

Explorador de métricas

El Explorador de métricas es una herramienta para visualizar cortes transversales del conjunto de datos de tu proyecto. Puedes acceder a la herramienta en Google Cloud Console. Para ello, navega a Operaciones > Supervisión > Explorador de métricas.

Google Cloud proporciona muchas métricas diferentes listas para usar, incluidas algunas que no están relacionadas con la casa inteligente. Las métricas que proporcionamos para la casa inteligente se enumeran en el recurso "actions.googleapis.com/smarthome_action/..." y se pueden buscar fácilmente escribiendo "smarthome" en el cuadro de selección de métricas.

538d851edfd34764.png

Si buscas "smarthome", aparecerán todas las métricas de casa inteligente que proporcionamos a tu proyecto. Puedes obtener información detallada sobre cada una de nuestras métricas en las páginas Monitoring y Logging de nuestra documentación.

Cuando se trata de supervisar tu proyecto, la métrica más simple a la que puedes hacer referencia es la métrica Recuento de solicitudes (que es una métrica delta). Esta métrica registra una entrada para cada ejecución de casa inteligente que inician tus usuarios y registra campos como el tipo de dispositivo, el rasgo, el tipo de ejecución involucrado en la ejecución y el campo de estado que muestra el resultado.

Si seleccionas esta métrica, se mostrará una pantalla con cada bucket de datos, similar a la siguiente:

b1c18141d15a0e09.png

Básicamente, para cada combinación de etiquetas de datos presentes en esta métrica, existe un bucket que registra el cambio (delta) entre los intervalos de tiempo anteriores y actuales. Es posible agrupar o filtrar estos discretizaciones para obtener la segmentación de datos de vistas que deseas. Además, los datos se alinean en intervalos de tiempo seleccionados con una función de alineación (DELTA, MEAN, MEDIAN, SUM). A menos que sea necesario, por lo general, usarás la alineación Delta con una métrica delta.

Puedes crear la mayoría de los gráficos disponibles en los paneles de Google Home Analytics con el Explorador de métricas y guardar tus gráficos para acceder a ellos más tarde en un panel personalizado. Para lograr vistas más complejas, como un gráfico de proporción, deberás usar MQL, el lenguaje de consulta de Monitoring.

3. Índices de éxito

Cuando se trata de hacer un seguimiento del éxito de tu integración, puedes usar la tasa de éxito que calculamos a partir de la métrica de recuento de solicitudes como indicador de referencia o la confianza en el éxito para un enfoque más especializado.

Índice de éxito

La tasa de éxito se calcula para todas tus integraciones dividiendo la cantidad de solicitudes exitosas por la cantidad total de solicitudes. Puedes acceder a él desde el gráfico Tasa de éxito del cumplimiento en el panel de Google Home Analytics.

55ea8930fbf48d9e.png

El gráfico de porcentaje de cumplimiento es muy útil para supervisar el rendimiento de tu proyecto, pero no tanto cuando creas tus paneles personalizados o configuras alertas. Dado que la tasa de éxito se deriva de la métrica de recuento de solicitudes y no es una métrica por sí misma, deberás volver a crearla con MQL (lenguaje de consulta de Monitoring) en el Explorador de métricas para usarla con cualquiera de las funciones.

Además, creemos que se necesita un enfoque mucho más especializado para hacer un seguimiento de las interrupciones del rendimiento en tu proyecto. Por eso, creamos la métrica de confianza, que cambia según cuánto se desvíe tu tasa de éxito de cumplimiento actual de los valores históricos normales.

Métrica de confianza

Las interrupciones pueden tener diferentes formas y tamaños para los proyectos. Pueden durar varias horas o solo unos minutos, lo que puede dificultar su identificación. Para ello, creamos una métrica de confianza en tu proyecto, que proporciona un valor normalizado para predecir la confiabilidad en función del rendimiento anterior. Para acceder a la métrica de confianza, busca smarthome en el Explorador de métricas y, luego, selecciona Execution success confidence.

ab467a1777281526.png

Cuando tu integración de casa inteligente alcanza un rendimiento igual o superior al histórico (promedio de 7 días), esta métrica generará el valor máximo (1.0). Cuando el porcentaje de éxito se desvía en más de un factor de 4 desviaciones estándar (también calculado en 7 días), esta métrica genera el valor mínimo (0.0). En los casos en que las desviaciones estándar son demasiado pequeñas (menos del 2.5%), esta métrica basa el valor 0.0 en una disminución del 10% en el porcentaje de éxito.

Para todos los casos intermedios, esta métrica proporciona valores entre 1.0 (confianza perfecta de que no hay una interrupción) y 0.0 (confianza máxima de que hay una interrupción).

Por lo tanto, cuando configures una alerta (lo que se explicará en la próxima sección), te recomendamos que uses el valor 0.5 como umbral. Esto corresponderá a 2 desviaciones estándares o a una disminución del 5%, lo que sea mayor.

4. Configuración de alertas

El siguiente paso es usar todo lo que aprendiste en la sección anterior para configurar alertas en tu proyecto.

Cómo crear una política de alertas

Las alertas automatizadas en Google Cloud se configuran a través de las políticas de alertas. Puedes acceder a las políticas de alertas a través del menú lateral, en la pestaña Operaciones > Monitoring > Alertas. Para crear una política de alertas nueva, selecciona la opción + CREAR POLÍTICA, que te dirigirá a la pantalla de creación de políticas de alertas:

6e417d88c2274b3d.png

La creación de una política de alertas consta de tres partes. Primero, debes agregar una condición para determinar qué deseas hacer un seguimiento. Si presionas el botón AGREGAR CONDICIÓN, aparecerá una ventana similar al Explorador de métricas, con algunos controles adicionales para configurar la condición:

df1ccf7da741e1c7.png

Para el objetivo, selecciona la métrica de confianza que analizamos en la sección anterior. Asegúrate de que el alineador esté configurado como delta con esta métrica (Mostrar opciones avanzadas > Alineador). El siguiente paso es configurar la condición de alerta y usar los siguientes parámetros de configuración:

4192e0f4ea00dd28.png

La condición se activa si: Es el parámetro de configuración principal para determinar cuándo activar las alertas. Seleccionar Cualquier serie temporal tiene incumplimientos funcionará, ya que estableceremos un umbral en nuestra métrica y supervisaremos si se cruza el valor.

Condición: Queremos que se active la alerta cuando el valor caiga por debajo del umbral, por lo que estableceremos este parámetro en is below. Con nuestra métrica, 1.0 significa que la integración funciona correctamente y 0.0 indica una interrupción definitiva.

Umbral: Creamos la métrica de confianza para proporcionar los mejores resultados cuando este valor se establece en 0.5. Si deseas recibir alertas con más frecuencia y que se te notifique sobre incidentes menores, puedes intentar aumentar este valor (máximo 1.0). Posteriormente, si deseas recibir menos alertas, solo para los problemas más graves, puedes intentar disminuir este valor (mín. 0.0).

Por: Este es el parámetro de configuración para identificar cuánto tiempo debe durar la interrupción antes de que recibas una alerta. Te recomendamos que mantengas este parámetro de configuración en el valor más reciente para recibir alertas por cualquier punto que cruce el límite. Nuestra métrica de confianza se publica cada 15 minutos y analiza el éxito promedio en ese período.

Una vez que termines de agregar una condición, el siguiente paso es seleccionar el canal de notificaciones. El método de notificación más simple son las alertas por correo electrónico. Puedes elegir un correo electrónico que aparezca en el menú desplegable Notification Channels:

3cc10629830e7f13.png

Si marcas la opción Notificar el cierre de incidentes, se enviará otra notificación cuando el incidente se marque como cerrado. En ese caso, también debes seleccionar una Duración del cierre automático de incidentes, que se especifica como 7 días de forma predeterminada.

El último paso es darle un nombre a la alerta y agregar la documentación que desees incluir en las notificaciones.

686fb1c537fee10.png

Se recomienda proporcionar documentación, especialmente si no eres quien recibirá la alerta. Agregar pasos, como dónde verificar durante un incidente y cómo clasificar y depurar, puede ayudar durante una interrupción. Puedes consultar nuestra guía de solución de problemas según sea necesario.

Una vez guardada, tu política de alertas aparecerá en la sección Políticas de la página Alertas.

c71a001e4df035ee.png

5. Mitigación de interrupciones

Una vez que configures las alertas, recibirás notificaciones durante las interrupciones a través de los canales de notificación que proporcionaste, y se creará una entrada de incidente en la página Alertas.

Cómo recibir alertas

El canal de alertas que proporcionamos en este codelab fue un correo electrónico. Una vez que lo configures, esperamos que no recibas alertas (ni interrupciones), pero, si las recibes, la notificación se verá de la siguiente manera:

43217b0a145c2cd.png

Ten en cuenta que la notificación de alerta proporciona el valor observado que cruza el umbral que especificaste, así como una marca de tiempo que indica cuándo comenzó el incidente.

Supervisa incidentes

A medida que ocurran incidentes, también se contabilizarán en la sección de incidentes de la página Alertas.

fdd883a9604ed981.png

Puedes hacer clic en el incidente específico para ver los detalles sobre la interrupción, como su duración o gravedad.

Recuerda que, cuando recibas alertas, el mejor primer paso es consultar tus métricas y, luego, buscar en tus registros los errores que contribuyen a la interrupción. Puedes repasar cómo hacerlo en nuestro codelab Cómo depurar una casa inteligente.

6. Felicitaciones

17d485868a6771bc.png

¡Felicitaciones! Aprendiste a configurar alertas con las métricas proporcionadas a tu proyecto para supervisar las interrupciones de forma automatizada y recibir notificaciones durante las interrupciones del servicio.

Próximos pasos

A partir de este Codelab, prueba los siguientes ejercicios y explora recursos adicionales:

  • Puedes combinar lo que aprendiste en este codelab con otras métricas que se proporcionan a tu proyecto. Puedes ver la lista completa de las métricas disponibles en la sección Métricas admitidas de la página Monitoring.
  • Explora otros tipos de canales de notificación para las alertas que se explican en la página Opciones de notificación de la documentación de Google Cloud.