Crea políticas de alertas basadas en métricas

En este documento, se describe cómo usar Google Cloud Console para crear una política de alertas que supervise una métrica. Por ejemplo, una política de alertas que supervisa el uso de CPU de una máquina virtual (VM) puede notificar a un equipo de guardia cuando se activa la política. Como alternativa, una política que supervisa una verificación de tiempo de actividad puede notificar a los equipos de guardia y de desarrollo.

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 aparece un mensaje en particular en tus registros, consulta Supervisar tus registros.

Este documento no describe lo siguiente:

Antes de comenzar

  1. Asegúrate de que la función de administración de identidades y accesos incluya los permisos en la función roles/monitoring.alertPolicyEditor. Para obtener más información sobre las funciones, consulta Control de acceso.

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

  3. Configura los canales de notificaciones que deseas usar para recibir alertas. Para obtener información sobre estos pasos, consulta Administra canales de notificaciones.

    Para fines de redundancia, te recomendamos que crees varios tipos de canales de notificación. Para obtener más información, consulta Administra canales de notificaciones.

Crea políticas de alertas

En esta sección, se describe cómo crear una política de alertas.

De forma predeterminada, cuando comienzas el flujo de alerta de creación con la consola, aparece una interfaz basada en menús. Usa estos menús para seleccionar el tipo de métrica que deseas supervisar y configurar la política. En el menú de selección de métricas, se enumeran todos los tipos de métricas generados por los servicios de Google Cloud y los tipos personalizados que definiste, siempre que haya datos para el tipo de métrica. Para obtener más información sobre los pasos en el cuadro de diálogo predeterminado, consulta Crea un flujo de política de alertas predeterminado.

Para crear una alerta sobre algo que no sea un tipo de métrica generado por un servicio de Google Cloud o tipos de métricas personalizadas que definiste, usa uno de los flujos de alerta de creación especializados. Por ejemplo, la página Servicios de la consola contiene un flujo de alerta de creación guiada que es específico para supervisar los objetivos de nivel de servicio (SLO). Para obtener información sobre los tipos especializados de políticas de alertas que podrían interesarte, consulta lo siguiente:

Flujo predeterminado de la política de alertas de creación

En esta sección, se describe cómo crear una política de alertas que supervise un tipo de métrica integrado o uno personalizado que crees. Las políticas que se describen en esta sección te notifican cuando una métrica está ausente o cuando una métrica es mayor o menor que un umbral estático. Para crear una política que compare el valor de una serie temporal con un umbral dinámico, debes usar MQL.

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 aparece un mensaje en particular en tus registros, consulta Supervisar tus registros.

Para crear una política de alertas que supervise una métrica, haz lo siguiente:

  1. En la consola, selecciona Monitoring o haz clic en el siguiente botón:
    Ir a Monitoring

  2. En el panel de navegación, selecciona Alertas y, luego, haz clic en Crear política.

  3. Selecciona la serie temporal que se supervisará:

    1. Haz clic en Seleccionar una métrica y, luego, ingresa en la barra de filtros el nombre del tipo de métrica o recurso que te interesa. Por ejemplo, si ingresas “VM instance” (Instancia de VM) en la barra de filtros, solo se mostrarán los tipos de métricas para las instancias de VM. Si ingresas “CPU”, los menús solo mostrarán los tipos de métricas que contengan “CPU” en su nombre.

    2. Navega por los menús para seleccionar una métrica y, luego, haz clic en Apply.

      Si el tipo de métrica que deseas supervisar no aparece en la lista, inhabilita Show only active resources & amp; metrics en el menú Seleccionar una métrica. Para obtener más información, consulta Solución de problemas: La métrica no aparece en el menú.

    3. Opcional: Para supervisar un subconjunto de las series temporales que coinciden con los tipos de métrica y recursos que seleccionaste en el paso anterior, haz clic en Agregar filtro. En el cuadro de diálogo de 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 serie temporal cuyo nombre de zona comienza con us y termina con a. Para obtener más información, consulta Filtra los datos seleccionados.

  4. Opcional: Para cambiar cómo se alinean los puntos en una serie temporal, configura la Ventana progresiva y la Función de ventana progresiva en la sección Datos de transformación.

    Estos campos especifican cómo se combinan los puntos que se registran en una ventana. Por ejemplo, supongamos que la ventana es de 15 minutos y la función de la ventana es max. El punto alineado es el valor máximo de todas las muestras registradas en los 15 minutos más recientes. Para obtener más información, consulta Alinea series temporales.

  5. Combina las series temporales cuando desees reducir la cantidad de series temporales supervisadas por una política o cuando desees supervisar solo una colección de series temporales. Por ejemplo, es posible que desees supervisar el uso de CPU de tus instancias de VM en promedio por zona.

    Para combinar las series temporales, haz clic en Expandir en el encabezado Across time series. De forma predeterminada, las series temporales no se combinan.

    Para combinar todas las series temporales, haz lo siguiente:

    1. Establece el campo Agregación de serie temporal en un valor distinto de none. Por ejemplo, cuando seleccionas mean, cada punto de la serie temporal que se muestra es el promedio de puntos de la serie temporal individual.

    2. Asegúrate de que el campo Grupo de series temporales por esté vacío.

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

    1. Establece el campo Agregación de serie temporal en un valor distinto de none.
    2. En el campo Series temporales por, selecciona una o más etiquetas por las que agrupar.

    Por ejemplo, si agrupas por zone y, luego, estableces el campo de agregación en mean, el gráfico muestra una serie temporal para cada zona. La serie temporal que se muestra para una zona específica es el promedio de todas las series temporales con esa zona.

    Los campos Transformación de datos secundarios están inhabilitados de forma predeterminada. Cuando se habilitan, estas operaciones se aplican después de la transformación de datos principal

    Para obtener más información, consulta Cómo combinar series temporales.

  6. Haz clic en Siguiente y configura el activador de la condición:

    1. Deja el campo Condition type (Tipo de condición) en el valor predeterminado Threshold (Umbral), a menos que desees recibir una notificación cuando dejen de llegar los datos. En ese caso, selecciona Ausencia de métrica. La configuración predeterminada compara el valor de una métrica con un umbral.

    2. Para las condiciones de Ausencia de métricas, haz lo siguiente:

      1. Selecciona un valor para el menú Activador de alerta. Este menú te permite especificar el subconjunto de series temporales que deben satisfacerse antes de que se active la condición.
      2. Especifica cuánto tiempo deben faltar los datos de métricas para que las alertas te notifiquen mediante el campo Tiempo de ausencia del activador.
    3. Para las condiciones de Threshold (Umbral), haz lo siguiente:

      1. Selecciona un valor para el menú Activador de alerta. Este menú te permite especificar el subconjunto de series temporales que deben satisfacerse antes de que se active la condición.

      2. Ingresa el valor de una métrica que incumple el umbral mediante los campos Posición del umbral y Valor del umbral. Por ejemplo, si estableces estos valores en Superior al umbral y en 0.3, cualquier medición superior a 0.3 infringe el límite.

      3. Opcional: Para seleccionar por cuánto tiempo las mediciones deben infringir el umbral antes de que las alertas generen un incidente, expande Opciones avanzadas y usa el menú Volver a probar.

        El valor predeterminado es Sin volver a probar. Con esta configuración, una sola medición puede generar una notificación. Para obtener más información y un ejemplo, consulta El período de alineación y la duración.

      4. Opcional: Para especificar cómo Monitoring evalúa la condición cuando dejan de llegar los datos, expande las Opciones avanzadas y usa el menú Datos faltantes de evaluación. Para habilitar este menú, debes configurar Retest window como un valor distinto de No retest.

        console
        Campo "Datos faltantes en la evaluación"
        Resumen Detalles
        Faltan datos vacíos Los incidentes abiertos permanecen abiertos.
        No se abren incidentes nuevos.

        Para las condiciones que se cumplen, la condición aún se cumple cuando dejan de llegar los datos. Si un incidente está abierto para esta condición, el incidente permanece abierto. Cuando un incidente está abierto y no llegan datos, el temporizador de cierre automático comienza después de un retraso de al menos 15 minutos. Si el temporizador vence, el incidente se cierra.

        Para las condiciones que no se cumplen, la condición continúa sin cumplirse cuando los datos dejan de llegar.

        Faltan datos tratados como valores que infringen la condición de la política Los incidentes abiertos permanecen abiertos.
        Se pueden abrir incidentes nuevos.

        Para las condiciones que se cumplen, la condición aún se cumple cuando dejan de llegar los datos. Si un incidente está abierto para esta condición, el incidente permanece abierto. Cuando un incidente está abierto y no llegan datos para la duración de cierre automático más 24 horas, el incidente se cierra.

        Para las condiciones que no se cumplen, esta configuración hace que la condición del umbral de la métrica se comporte como un metric-absence condition. Si los datos no llegan a la hora especificada en el período de nueva prueba, la condición se evalúa como cumplida. Para una política de alertas con una condición, la condición que se cumple genera un incidente.

        Faltan datos tratados como valores que no infringen 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 los datos dejan de llegar. Si un incidente está abierto para esta condición, se cierra.

        Para las condiciones que no se cumplen, la condición continúa sin cumplirse cuando los datos dejan de llegar.

  7. Crea una política de alertas con varias condiciones (opcional).

    La mayoría de las políticas supervisan un solo tipo de métrica, por ejemplo, una política puede 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, debes especificar cómo se combinan. Para obtener más 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 y, luego, configura esa condición con los pasos anteriores.
    2. Después de agregar todas las condiciones, selecciona cómo se combinan en el paso Activador de varias condiciones.
  8. Haz clic en Siguiente para avanzar a la página Notificaciones y nombres.

  9. Expande el menú Canales de notificaciones y selecciona tus canales de notificaciones.

    Para fines de redundancia, recomendamos que agregues a una política de alertas varios tipos de canales de notificación. Para obtener más información sobre estas recomendaciones, consulta Administra canales de notificaciones.

  10. Opcional: Para recibir una notificación cuando se cierre un incidente, selecciona Notificar cuando se cierre un incidente.

    De forma predeterminada, cuando creas una política de alertas con Google Cloud Console, se envía una notificación solo cuando se crea un incidente.

  11. Opcional: Para cambiar el tiempo que Monitoring espera antes de cerrar un incidente después de que dejan de llegar los datos, selecciona una opción del menú Duración del cierre automático de incidentes.

    De forma predeterminada, cuando los datos dejan de llegar, Monitoring espera siete días antes de cerrar un incidente abierto.

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

    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 minúsculas, números, guiones bajos y guiones. Por ejemplo, ingresa severity.
    2. Haga clic en Valor y, luego, ingrese un valor para su etiqueta. Los valores de las etiquetas pueden contener letras minúsculas, números, guiones bajos y guiones. Por ejemplo, ingresa critical.

    Si deseas obtener información sobre cómo puedes usar las etiquetas de política para ayudarte a administrar tus alertas, consulta Agrega niveles de gravedad a una política de alertas.

  13. Opcional: Para incluir documentación personalizada con una notificación, ingresa ese contenido en la sección Documentación.

    Para dar formato a la documentación, puedes usar Markdown. Para extraer información de la política a fin de adaptar el contenido de tu documentación, puedes usar variables. Por ejemplo, la documentación puede incluir un título como Addressing High CPU Usage y detalles que identifiquen el proyecto:

    ## Addressing High CPU Usage
    
    This note contains information about high CPU Usage.
    
    You can include variables in the documentation. For example:
    
    This alert originated from the project ${project}, using
    the variable $${project}.
    

    Cuando se crean notificaciones, Monitoring reemplaza las variables con sus valores. Los valores reemplazan las variables solo en las notificaciones. En el panel de vista previa y en otros lugares de la consola, solo se muestra el formato de Markdown:

    Ejemplo de escritura de una nota de documentación con Markdown.

    Para obtener información sobre Markdown y variables, consulta Usa Markdown y variables en plantillas de documentación.

    Si quieres obtener información sobre cómo incluir el etiquetado específico del canal para controlar las notificaciones, consulta Usa los controles del canal.

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

  15. Haga clic en Crear política.

Crea una política de alertas de tasa de cambio

Para recibir una notificación cuando la tasa de cambio de una métrica supere un umbral, crea una política de alertas de tasa de cambio. Por ejemplo, para recibir una notificación cuando el uso de CPU aumente demasiado rápido, crea este tipo de política.

Para crear este tipo de política, sigue los pasos descritos en Flujo predeterminado de la política de alertas de creación. Sin embargo, asegúrate de configurar el campo Función de ventana progresiva en porcentaje de cambio.

Cuando seleccionas la función percent change, Monitoring hace lo siguiente:

  1. Si la serie temporal tiene una categoría de métrica DELTA o CUMULATIVE, 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 Tipos, tipos y conversiones.
  2. El porcentaje de procesamiento cambió mediante la comparación del valor promedio de la ventana de 10 minutos más reciente con el valor promedio de la ventana de 10 minutos antes del período de prueba.

    La ventana de visualización de 10 minutos es un valor fijo; no se puede cambiar. Sin embargo, debes especificar el período de nueva prueba cuando creas una condición.

Crea una política de alertas del estado del proceso

Para supervisar la cantidad de procesos que se ejecutan en tus VM y que cumplen con las condiciones que especificaste, crea una política de alertas de estado del proceso. Por ejemplo, puedes contar la cantidad de procesos que inició el usuario raíz. También puedes contar la cantidad de procesos cuyo comando de invocación contiene una string específica. Una política de alertas puede notificarte cuando la cantidad de procesos es mayor o menor que un umbral. Para obtener información sobre qué procesos se pueden supervisar, consulta Procesos que se supervisan.

Las métricas del estado del proceso están disponibles cuando el agente de operaciones o el agente de supervisión se ejecutan en los recursos supervisados. Para obtener más información sobre los agentes, consulta Agentes de Google Cloud's operations suite.

Para supervisar el recuento de procesos que se ejecutan en una VM, haz lo siguiente:

  1. En la consola, selecciona Monitoring o haz clic en el siguiente botón:
    Ir a Monitoring

  2. En el panel de navegación, selecciona Alertas y, luego, haz clic en Crear política.

  3. Selecciona ? en el encabezado de sección Seleccionar métrica y, luego, selecciona Modo de filtro directo en la información sobre la herramienta.

  4. Ingresa un filtro de Monitoring.

    Por ejemplo, para contar la cantidad de procesos que se ejecutan en instancias de VM de Compute Engine cuyo nombre incluye nginx, ingresa lo siguiente:

    select_process_count("monitoring.regex.full_match(\".*nginx.*\")")
    resource.type="gce_instance"
    

    Para obtener más información, consulta los siguientes recursos:

  5. Completa el cuadro de diálogo de la política de alertas. Estos pasos solo se describen en esta sección. Para obtener más información, consulta Flujo predeterminado de la política de alertas de creación:

    1. Revisar y actualizar la configuración de transformación de datos (opcional)
    2. Haz clic en Siguiente y configura el activador de la condición.
    3. Haz clic en Siguiente y completa los pasos de notificación y documentación.
    4. Haz clic en Nombre de la alerta y, luego, ingresa un nombre para la política de alertas.
    5. Haga clic en Crear política.

Procesos que se supervisan

Una condición de estado del proceso no puede supervisar todos los procesos que se ejecutan en tu sistema. Esta condición selecciona los procesos que se supervisarán mediante una expresión regular que se aplica a la línea de comandos que invocó el proceso. Cuando el campo de la línea de comandos no está disponible, el proceso no se puede supervisar.

Una forma de determinar si un proceso puede supervisarse mediante una condición de estado del proceso es observar los procesos activos. Por ejemplo, en un sistema Linux, puedes usar el comando ps:

    ps aux | grep nfs
    USER      PID  %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
    root      1598  0.0  0.0      0     0 ?        S<   Oct25   0:00 [nfsd4]
    root      1639  0.0  0.0      0     0 ?        S    Oct25   2:33 [nfsd]
    root      1640  0.0  0.0      0     0 ?        S    Oct25   2:36 [nfsd]

Cuando una entrada COMMAND se une con corchetes, por ejemplo, [nfsd], la información de la línea de comandos del proceso no está disponible. En este caso, no puedes usar Cloud Monitoring para supervisar el proceso.

Crea una política de alertas de SLO

Para recibir una notificación cuando un sistema esté en riesgo de infringir un objetivo de nivel de servicio (SLO) definido, crea una política de alertas. Por ejemplo, un SLO para algún sistema puede ser que tenga una disponibilidad del 99% durante una semana calendario. Un SLO diferente podría especificar que la latencia pueda superar los 300 ms en solo el 5% de las solicitudes durante un período progresivo de 30 días.

A fin de obtener información sobre cómo crear una alerta para un SLO, consulta los siguientes documentos:

Para crear una política de alertas de SLO cuando usas la API de Cloud Monitoring, los datos que proporcionas a la API incluyen el selector de series temporales. Para obtener información sobre estos selectores, consulta Recupera datos de SLO.

Puedes crear una política de alertas de SLO mediante la interfaz de alertas en Google Cloud Console. Para hacerlo, sigue los pasos que se describen en Crea una política de alertas del estado del proceso. Sin embargo, cuando llegues al paso para ingresar un filtro de Monitoring, ingresa un selector de series temporales en lugar de una expresión de estado del proceso.

Crea una política de alertas de grupo de recursos

Si deseas supervisar una colección de recursos, en la que la membresía del grupo se define según algunos criterios, crea un grupo de recursos y supervisa el grupo. Por ejemplo, puedes definir un grupo de recursos para las instancias de VM de Compute Engine que usas en la producción. Después de crear ese grupo, puedes crear una política de alertas que supervise solo ese grupo de instancias. Cuando agregas una VM que coincide con los criterios del grupo, la política de alertas la supervisa de forma automática.

Puedes crear una política de alertas de grupo de recursos mediante Google Cloud Console. Para hacerlo, sigue los pasos que se describen en Crea una política de alertas del estado del proceso. Sin embargo, después de seleccionar la métrica, agrega un filtro que restrinja las series temporales a aquellas que coincidan con los criterios del grupo.

Para crear una política de alertas que supervise un grupo de recursos, haz lo siguiente:

  1. En la consola, selecciona Monitoring o haz clic en el siguiente botón:
    Ir a Monitoring

  2. En el panel de navegación, selecciona Alertas y, luego, haz clic en Crear política.

  3. Selecciona la serie temporal que se supervisará:

    1. Haz clic en Seleccionar una métrica y, luego, ingresa en la barra de filtros el nombre del tipo de métrica o recurso que te interesa. Por ejemplo, si ingresas “VM instance” (Instancia de VM) en la barra de filtros, solo se mostrarán los tipos de métricas para las instancias de VM. Si ingresas “CPU”, los menús solo mostrarán los tipos de métricas que contengan “CPU” en su nombre.

    2. Navega por los menús para seleccionar una métrica y, luego, haz clic en Apply.

      Si el tipo de métrica que deseas supervisar no aparece en la lista, inhabilita Show only active resources & amp; metrics en el menú Seleccionar una métrica. Para obtener más información, consulta Solución de problemas: La métrica no aparece en el menú.

    3. Haz clic en Agregar filtro y selecciona Grupo.

    4. Expande Valor y selecciona el nombre del grupo.

    5. Haga clic en Listo.

  4. Completa los pasos para configurar la política de alertas como se describe en Flujo predeterminado de la creación de políticas de alertas.

Crea una política de alertas de verificaciones de tiempo de actividad

Te recomendamos que crees una política de alertas para notificarte cuando una verificación de tiempo de actividad falla. La infraestructura de verificación de tiempo de actividad incluye un flujo guiado de creación de alertas. Para obtener detalles sobre estos pasos, consulta Alertas de verificaciones de tiempo de actividad.

Solución de problemas: La métrica no aparece en el menú

De forma predeterminada, los menús Seleccionar una métrica enumeran todos los tipos de métricas para los que hay datos. Por ejemplo, si no usas Pub/Sub, estos menús no mostrarán ninguna métrica de Pub/Sub.

Puedes configurar una alerta incluso cuando los datos que deseas que la alerta no existan todavía:

  • Para crear una alerta que supervise una métrica de Google Cloud, sigue los pasos descritos en Flujo predeterminado de la política de alertas de creación. Sin embargo, en el paso en el que seleccionas una métrica, inhabilita Mostrar solo recursos activos en el menú Seleccionar una métrica. Cuando está inhabilitado, el menú enumera todas las métricas de los servicios de Google Cloud y todas las métricas con datos.

  • A fin de configurar una alerta para un tipo de métrica personalizado antes de que genere datos, sigue los pasos que se describen en Crea una política de alertas del estado del proceso. Cuando llegues al paso para ingresar un filtro de Monitoring, ingresa un filtro que especifique el tipo de métrica y el recurso. El siguiente es un ejemplo de un filtro de Monitoring que especifica un tipo de métrica:

    metric.type="compute.googleapis.com/instance/disk/write_bytes_count"
    resource.type="gce_instance"