Crea políticas de alertas de valores de métricas previstos

En este documento, se describe cómo usar la consola de Google Cloud para crear una política de alertas que envíe notificaciones cuando la política predique que se infringirá el umbral dentro de la próxima ventana de pronóstico. Un pronóstico predice si una serie temporal incumplirá o no un umbral dentro de un período de pronóstico, que es un período en el futuro. El período del pronóstico puede variar de 1 hora (3,600 segundos) a 2.5 días (216,000 segundos).

Este contenido no se aplica a las políticas de alertas basadas en registros. Para obtener información sobre las políticas de alertas basadas en registros, que te notifican cuando un un mensaje específico en tus registros, consulta Supervisa tus registros.

En este documento, no se describe lo siguiente:

Información acerca de las condiciones de la previsión

Puedes usar la previsión cuando supervises la mayoría de las métricas. Sin embargo, cuando supervisas un recurso limitado, como la cuota, el espacio en disco o el uso de memoria, una previsión puede notificarte antes de que se infrinja el umbral. Esa función te brinda más tiempo para responder a la forma en que se consume ese recurso limitado antes de que se incumpla el límite.

Para cada serie temporal que supervisa una condición de previsión, la condición una instancia de un algoritmo de decisión. Una vez que el algoritmo está entrenado, para generar una previsión cada vez que se evalúe la condición. Cada previsión una predicción de que su serie temporal incumplirá o no, el umbral dentro del período de previsión. Si una serie temporal supervisada tiene una periodicidad regular, el algoritmo de decisión de esa serie temporal incorpora el comportamiento periódico en sus pronósticos.

Se cumple una condición del pronóstico cuando ocurre una de las siguientes situaciones, o ambas:

  • Todos los valores de una serie temporal durante un período específico de nueva prueba si infringen el umbral.
  • Todos los pronósticos de una serie temporal específica que se realizan en un período de nueva prueba predicen que la serie temporal incumplirá el umbral dentro del período de pronóstico.

El tiempo de entrenamiento inicial de un algoritmo de decisión es el doble de la duración del período de previsión. Por ejemplo, si el período de previsión es de una hora, entonces se requieren dos horas de tiempo de entrenamiento. El algoritmo de decisión para cada series temporales se entrenan de forma independiente. Mientras se entrena un algoritmo de decisión, su serie temporal cumple con la condición solo cuando los valores de la serie temporal incumplen el umbral de la ventana de nueva prueba especificada.

Después de completar el entrenamiento inicial, cada algoritmo de decisión se entrena de forma continua con datos que abarcan hasta seis veces la duración de la ventana de previsión. Por ejemplo, cuando el período de previsión es de una hora, se usan las seis horas más recientes de datos durante el entrenamiento continuo.

Cuando configuras una condición de previsión y luego dejan de llegar los datos para obtener más de 10 minutos, la previsión está inhabilitada y la condición funciona como una condición de umbral de métrica.

Los incidentes se crean cuando la previsión predice que una serie temporal incumplirá el umbral de la condición dentro del período de previsión. La supervisión cierra automáticamente el incidente cuando el pronóstico predice que las series temporales no incumplirá el umbral dentro del período de pronóstico.

Antes de comenzar

  1. Para obtener los permisos que necesitas para crear y modificar políticas de alertas con la consola de Google Cloud, pídele a tu administrador que te otorgue el rol de IAM de editor de Monitoring (roles/monitoring.editor) en tu proyecto. Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.

    También puedes obtener los permisos necesarios mediante roles personalizados o cualquier otro rol predefinido.

    Para obtener más información sobre los roles de Cloud Monitoring, consulta Controla el acceso con Identity and Access Management.

  2. Asegúrate de estar familiarizado con los conceptos generales de las políticas de alertas. Para obtener información sobre estos temas, consulta Descripción general de alertas.

  3. Configura los canales de notificaciones que deseas usar para recibir notificaciones. Para fines de redundancia, te recomendamos crear varios tipos de canales de notificación. Para obtener más información, consulta Cómo crear y administrar canales de notificaciones.

Crear política de alertas

Para crear una política de alertas que envíe una notificación según un pronóstico, haz lo siguiente:

  1. En la consola de Google Cloud, ve a la página  Alertas.

    Ir a las Alertas

    Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuyo subtítulo es Monitoring.

  2. Selecciona Crear política.
  3. Selecciona las series temporales que deseas supervisar:

    1. Haz clic en Seleccionar una métrica y navega por los menús para elegir una tipo de recurso y tipo de métrica y, luego, haz clic en Aplicar.

      El menú Seleccionar una métrica contiene funciones que te ayudan a encontrar los tipos de métricas disponibles:

      • Para encontrar un tipo de métrica específico, usa la Barra de filtros. Por ejemplo, si ingresas util, restringirás el menú a mostrar entradas que incluyan util. Las entradas se muestran cuando pasan una prueba de "contiene" que no distingue mayúsculas de minúsculas.
      • Para mostrar todos los tipos de métricas, incluso aquellos sin datos, haz clic en Activo. De forma predeterminada, los menús solo mostrar tipos de métricas con datos. Para obtener más información, consulta La métrica no aparece en el menú.

      Puedes supervisar cualquier métrica integrada o cualquier tipo de métrica definida por el usuario que tenga un tipo de valor de doble o int64, que sea una métrica de restricción y que no sea una métrica para una instancia de VM de Amazon.

      Si seleccionas un tipo de métrica que genera la supervisión de más de 64 series temporales, la supervisión realiza previsiones para las 64 series temporales cuyos valores están más cerca del umbral o que ya lo incumplen. En el caso de otras series temporales, sus valores se comparan con el umbral.

    2. Opcional: Para supervisar un subconjunto de las series temporales que coincidan con el los tipos de métricas y recursos que seleccionaste en el paso anterior Haz clic en Agregar filtro. En el diálogo del filtro, selecciona la etiqueta por la que deseas filtrar, un comparador y, luego, el valor del filtro. Por ejemplo, el filtro zone =~ ^us.*.a$ usa una expresión regular para hacer coincidir todos los datos de series temporales cuyo nombre de zona comienza con us y termina con a. Para obtener más información, consulta Filtra las series temporales seleccionadas.

    3. Opcional: Para cambiar la forma en que los puntos de una serie temporal están alineados, en la sección Transforma datos, configura los campos Ventana móvil y Función de ventana móvil.

      Si supervisas una métrica basada en registros, te recomendamos que el menú Ventana continua esté configurado en al menos 10 minutos.

      Estos campos especifican la forma en que se almacenan los puntos que se registran en una ventana de varias condiciones. Por ejemplo, supongamos que la ventana es de 15 minutos y que función analítica es max. El punto alineado es el valor máximo de todos los puntos en los 15 minutos más recientes. Para obtener más información, consulta Alineación: regularización dentro de la serie.

      También puedes supervisar la velocidad a la que cambia un valor de métrica con el campo Función de ventana móvil para el porcentaje de cambio. Para obtener más información, consulta Supervisa una tasa de cambio.

    4. Opcional: Combina series temporales cuando quieras reducir la cantidad de series temporales supervisadas por una política o cuando quieres supervisar una colección de series temporales. Por ejemplo, en lugar de supervisar de uso de CPU de cada instancia de VM, puedes calcular promedio del uso de CPU de todas las VMs en una zona y, luego, supervisar ese promedio. De forma predeterminada, series temporales no se combinan. Para obtener información general, consulta Reducción: combinación de series temporales.

      Para combinar todas las series temporales, haz lo siguiente:

      1. En la sección Serie temporal, haz clic en Expandir.
      2. Establece el campo Agregación de serie temporal en un valor distinto del none Por ejemplo, para mostrar el valor promedio de la series temporales, selecciona mean.
      3. Asegúrate de que el campo Agrupar por series temporales esté vacío.

      Para combinar o agrupar series temporales por valores de etiqueta, haz lo siguiente:

      1. En la sección Serie temporal, haz clic en Expandir.
      2. Establece el campo Agregación de series temporales en un valor distinto de none.
      3. En el campo Agrupar series temporales por, selecciona las etiquetas con las que deseas agruparlas.

      Por ejemplo, si agrupas por etiqueta zone y, luego, estableces a un valor de mean, el gráfico muestra una serie temporal para cada zona sobre la que hay datos. La serie temporal que se muestra para una zona específica es el promedio de todas las series temporales con esa zona.

    5. Haz clic en Siguiente.

  4. Configura el activador de la condición:

    1. Selecciona Pronóstico para el tipo de condición.

    2. Opcional: Actualiza el menú Activador de alertas, que tiene los siguientes valores:

      • Cualquier serie temporal es una infracción: es el parámetro de configuración predeterminado. Cualquier serie temporal que incumple el umbral o se prevé que lo hará durante todo el período para volver a probar, esto hace que se cumpla la condición.

      • El porcentaje de series temporales es una infracción: Un porcentaje de las series temporales debe incumplir el umbral o se debe pronosticar que incumplirá el umbral durante todo el período de nueva prueba antes de que se cumpla la condición. Por ejemplo, podrías recibir una notificación cuando el 50% de las series temporales supervisadas incumplan el umbral durante todo el período de nueva prueba.

      • Cantidad de series temporales es una infracción: Una cantidad específica de series temporales debe incumplir el umbral o se prevea que lo hará durante todo el período para volver a probar antes de que se cumpla la condición. Por ejemplo, podrías recibir una notificación cuando 32 de las series temporales supervisadas infringen el umbral para toda volver a probar.

      • Todas las series temporales son una infracción: Todas las series temporales deben incumplir el umbral o se debe pronosticar que incumplan el umbral durante todo el período de nueva prueba antes de que se cumpla la condición.

      Para obtener información sobre los intervalos para alinear y medir datos de series temporales, consulta Períodos de alineación y períodos de repetición de prueba.

    3. Selecciona un valor para la ventana de previsión. El valor que selecciones es la cantidad de tiempo en el futuro para la previsión. Debes establecer este valor en, al menos, 1 hora (3,600 segundos) y, como máximo, en 2.5 días (216,000 segundos).

    4. Ingrese cuándo el valor previsto de la métrica seleccionada incumple el umbral con el valor de Posición del umbral Campos Threshold value Por ejemplo, si estableces estos valores en Above threshold y 10, entonces cualquier valor previsto mayor que 10 infringe el umbral.

    5. De manera opcional, expande Opciones avanzadas y establece el valor del Período de nueva prueba. El valor predeterminado de este campo es No retest.

      Te recomendamos que establezcas este campo en 10 minutos como mínimo.

      Por ejemplo, supongamos que configuras la condición de previsión de modo que cualquier series temporales puede hacer que se cumpla la condición. También supón que el El período Volver a probar se establece en 15 minutos, y el Período de previsión está establecido. 1 hora, y se produce un incumplimiento cuando el valor de la serie temporal sea superior al Umbral, que está establecido en 10. La condición se cumple si ocurre alguna de las siguientes situaciones:

      • Todos los valores de una serie temporal son superiores a 10 y permanecen allí durante al menos 15 minutos.
      • En un intervalo de 15 minutos, cada previsión de una serie temporal predice que su valor aumentará por encima del umbral de 10 en algún momento de la próxima hora.
    6. Opcional: Para especificar cómo Monitoring evalúa la estado cuando los datos dejen de llegar, expande Opciones avanzadas y, luego, usa el menú Evaluación datos faltantes.

      El menú Evaluación faltan datos se inhabilita cuando el valor del atributo La ventana para volver a probar es No se debe volver a probar.

      Cuando faltan datos durante más de 10 minutos, una condición de pronóstico deja de realizar pronósticos y, en su lugar, usa el valor del campo Evaluation missing data para determinar cómo administrar los incidentes. Cuando se reinician las observaciones, también se reinician las previsiones.

      Consola de Google Cloud
      Campo "Evaluación de datos faltantes"
      Resumen Detalles
      Datos faltantes vacíos Los incidentes abiertos permanecen abiertos.
      No se abren los incidentes nuevos.

      Para las condiciones que se cumplen, la condición sigue siendo se cumplen cuando los datos dejan de llegar. Si hay un incidente abierto para esta condición, este permanecerá abierto. Cuando un incidente está abierto y no hay datos llega, el temporizador de cierre automático comienza luego de una demora de al menos 15 minutos. Si el temporizador expira, se cierra el incidente.

      En el caso de las condiciones que no se cumplen, la condición seguirá sin cumplirse cuando dejen de llegar datos.

      Los datos faltantes se tratan como valores que incumplen la condición de la política Los incidentes abiertos permanecen abiertos.
      Se pueden abrir incidentes nuevos.

      En el caso de las condiciones que se cumplen, estas se siguen cumpliendo cuando dejan de llegar datos. Si hay un incidente abierto para esta condición, el incidente permanece abierto. Cuando un incidente está abierto y no llegan datos durante la duración del cierre automático más 24 horas, el incidente se cierra.

      Para las condiciones que no se cumplen, este parámetro de configuración hace que la condición de umbral de métrica se comporte como una metric-absence condition. Si los datos no llegan en el tiempo especificado por la ventana de nueva prueba, la condición se evalúa como cumplida. Para una política de alertas con una condición, la condición de cumplirse y, como resultado, se abre un incidente.

      Datos faltantes que se consideran valores que no incumplen la condición de la política Los incidentes abiertos están cerrados.
      No se abren incidentes nuevos.

      Para las condiciones que se cumplen, la condición deja de cumplirse cuando dejan de llegar los datos. Si hay un incidente abierto para esta condición, se cerrará.

      En el caso de las condiciones que no se cumplen, la condición sigue cuando los datos dejen de llegar.

    7. Haz clic en Siguiente.

  5. Opcional: Crea una política de alertas con varias condiciones.

    La mayoría de las políticas supervisan un solo tipo de métrica. Por ejemplo, una política podría supervisar la cantidad de bytes escritos en una instancia de VM. Cuando desees supervisar varios tipos de métricas, crea una política con varias condiciones. Cada condición supervisa un tipo de métrica. Después de crear las condiciones, especificas cómo se combinan las condiciones. Para obtener información, consulta Políticas con varias condiciones.

    Para crear una política de alertas con varias condiciones, haz lo siguiente:

    1. Para cada condición adicional, haz clic en Agregar condición de alerta y, luego, configúrala.
    2. Haz clic en Siguiente y configura cómo se combinan las condiciones.
    3. Haz clic en Siguiente para avanzar a las notificaciones y la documentación. configurar.
  6. Configura las notificaciones:

    1. Expande el menú Notificaciones y nombre y selecciona tus canales de notificaciones. Para fines de redundancia, recomendamos que agregues a un política de alertas de varios tipos de canales de notificación. Para obtener más información, consulta Cómo administrar canales de notificaciones.

    2. Para recibir notificaciones cuando se cierre un incidente, selecciona Notificar cuando se cierre un incidente. De forma predeterminada, cuando creas una política de alertas con el en la consola de Google Cloud, se envía una notificación solo cuando crear.

    3. Opcional: Para cambiar el tiempo que espera Monitoring antes de cerrar un incidente después de que dejan de llegar datos, selecciona una opción del menú Duración del cierre automático de incidentes. De forma predeterminada, cuando dejan de llegar los datos, Monitoring espera siete días antes de cerrar un incidente abierto.

    4. Selecciona una opción del menú Nivel de gravedad de la política. Incidentes e las notificaciones muestran el nivel de gravedad.

    5. Opcional: Para agregar etiquetas personalizadas a la política de alertas, en En la sección Etiquetas de usuario de la política, haz lo siguiente:

      1. Haz clic en Agregar etiqueta y, en el campo Clave, ingresa un nombre para la etiqueta. Los nombres de las etiquetas deben comenzar con una letra minúscula y pueden contener letras en minúscula, números, guiones bajos y guiones. Por ejemplo, ingresa severity.
      2. Haz clic en Valor y, luego, ingresa un valor para tu etiqueta. Los valores de etiquetas pueden contener letras minúsculas, números, guiones bajos y guiones. Por ejemplo, ingresa critical.

      Si deseas obtener información para usar etiquetas de políticas que te ayuden a administrar tus notificaciones, consulta Cómo anotar incidentes con etiquetas.

  7. Opcional: En la sección Documentation, ingresa el contenido que quieras. que se incluye en la notificación.

    Para dar formato a tu documentación, puedes usar texto sin formato, Markdown y variables. También puedes incluir vínculos para ayudar a los usuarios a depurar el incidente, como vínculos a manuales internos, paneles de Google Cloud y páginas externas. Por ejemplo, en la siguiente plantilla de documentación, se describe una CPU de uso de un recurso gce_instance y, también, incluye varias variables para hacer referencia a la política de alertas y condicionar REST de Google Cloud. Luego, la plantilla de documentación dirige a los lectores a páginas externas para ayudar con la depuración.

    Cuando se crean las notificaciones, Monitoring reemplaza las variables de la documentación con sus valores. Los valores reemplazan las variables solo en las notificaciones. El panel de vista previa y otros lugares de la consola de Google Cloud solo muestran el formato de Markdown.

    Vista previa

    ## CPU utilization exceeded
    
    ### Summary
    
    The ${metric.display_name} of the ${resource.type}
    ${resource.label.instance_id} in the project ${resource.project} has
    exceeded 90% for over 15 minutes.
    
    ### Additional resource information
    
    Condition resource name: ${condition.name}  
    Alerting policy resource name: ${policy.name}  
    
    ### Troubleshooting and Debug References
    
    Repository with debug scripts: example.com  
    Internal troubleshooting guide: example.com  
    ${resource.type} dashboard: example.com
    

    Formato de las notificaciones

    Ejemplo de cómo se renderiza la documentación en una notificación.

    Para obtener más información, consulta Cómo anotar notificaciones con documentación definida por el usuario y Cómo usar los controles de canal.

  8. Haz clic en Nombre de la alerta y, luego, ingresa un nombre para la política de alertas.

  9. Haz clic en Crear política.

Cómo filtrar las series temporales seleccionadas

Los filtros garantizan que solo se muestren las series temporales que cumplen supervisar. Cuando aplicas filtros, puedes reducir la cantidad de líneas en el gráfico, lo que puede mejorar su rendimiento. También puedes reducir el de datos que se supervisan mediante la aplicación de agregación. Los filtros garantizan que solo se usen series temporales que cumplan con un conjunto de criterios. Cuando aplicas filtros, hay menos series temporales para evaluar, lo que puede mejorar el rendimiento de la alerta.

Un filtro consta de una etiqueta, un comparador y un valor. Por ejemplo: para que coincida con todas las series temporales cuya etiqueta zone comienza con "us-central1", podrías usar el filtro zone=~"us-central1.*", que usa una expresión regular para realizar la comparación.

Cuando filtras por el ID del proyecto o el contenedor de recursos, debes usar el operador de igualdad, (=). Cuando filtras por otras etiquetas, puedes usar cualquier comparador compatible. Por lo general, puedes filtrar las etiquetas de métricas y recursos, y grupo de recursos.

Cuando proporcionas varios criterios de filtrado, solo se supervisan las series temporales que cumplen con todos los criterios.

Para agregar un filtro, haz clic en Agregar filtro, completa el cuadro de diálogo y, luego, haz clic en Listo. En el cuadro de diálogo, utiliza el campo Filtro para seleccionar la criterio por el cual filtrar, selecciona el operador de comparación y, luego, seleccionar el valor. En cada fila de la siguiente tabla, se muestra un operador de comparación, su significado y un ejemplo:

OperadorSignificadoEjemplo
= Igualdad resource.labels.zone = "us-central1-a"
!= Desigualdad resource.labels.zone != "us-central1-a"
=~ Igualdad de expresión regular 2 monitoring.regex.full_match("^us.*")
!=~ Desigualdad de expresión regular 2 monitoring.regex.full_match("^us.*")
starts_with El valor comienza con resource.labels.zone = starts_with("us")
ends_with El valor termina con resource.labels.zone = ends_with("b")
has_substring El valor contiene resource.labels.zone = has_substring("east")
one_of Uno de resource.labels.zone = one_of("asia-east1-b", "europe-north1-a")
!starts_with El valor no comienza con resource.labels.zone != starts_with("us")
!ends_with El valor no termina con resource.labels.zone != ends_with("b")
!has_substring El valor no contiene resource.labels.zone != has_substring("east")
!one_of El valor no es uno de resource.labels.zone != one_of("asia-east1-b", "europe-north1-a")

Solucionar problemas

En esta sección, se proporcionan sugerencias para solucionar problemas.

La métrica no aparece en el menú de métricas disponibles

Para supervisar una métrica que no aparece en el menú Selecciona una métrica, una de las siguientes opciones:

  • Para crear una política de alertas que supervise una métrica de Google Cloud, expande el menú Seleccionar una métrica y, luego, haz clic en Activa. Cuando se inhabilita, el menú enumera todas las métricas de los servicios de Google Cloud y todas las métricas con datos.

  • Para configurar una condición para un tipo de métrica personalizada antes de que ese tipo de métrica genere datos, debes especificar el tipo de métrica con un filtro de supervisión:

    1. Selecciona ?. en el encabezado de la sección Seleccionar métrica y, luego, selecciona Modo de filtro directo en la información sobre herramientas.
    2. Ingresa un filtro de supervisión o un selector de series temporales. Para obtener información sobre la sintaxis, consulta los siguientes documentos:

Supervisar una tasa de cambio

Para supervisar la tasa de cambio de un valor de métrica, configura el campo Función de ventana móvil en porcentaje de cambio. Cuando se evalúa la condición, Monitoring calcula la tasa de cambio de la métrica como un porcentaje y, luego, compara ese porcentaje con el umbral de la condición. Este proceso de comparación sigue dos pasos:

  1. Si la serie temporal tiene un tipo de métrica DELTA o CUMULATIVE, entonces la serie temporal se convierte en una que tiene una categoría de métrica GAUGE. Para obtener información sobre la conversión, consulta Categorías, tipos y conversiones.
  2. La supervisión calcula el porcentaje de cambio comparando el valor promedio de la ventana deslizante de 10 minutos más reciente con el valor promedio de la ventana deslizante de 10 minutos anterior al comienzo del período de alineación.

No puedes cambiar la ventana deslizante de 10 minutos que se usa para las comparaciones en una política de alertas de tasa de cambio. Sin embargo, debes especificar el período de alineación cuando creas la condición.

Restricciones

  • Puedes configurar la condición usando la interfaz basada en menús de la la consola de Google Cloud o mediante filtros de Monitoring. No puedes configurar la condición con el lenguaje de consulta de Monitoring ni con PromQL.
  • Se admiten todas las métricas que tengan un tipo de valor de doble o int64, excepto las de instancias de VM de Amazon.

¿Qué sigue?