Cómo crear y administrar posposiciones

En este documento, se describe cómo crear y administrar tus repeticiones. Si pospones la alerta, Cloud Monitoring no creará incidentes ni emitirá notificaciones durante un período específico. Cada aplazamiento especifica los recursos a los que se aplica.

Para obtener una descripción general conceptual, consulta Cómo posponer notificaciones e incidentes.

Para crear y administrar tus aplazamientos, usa la consola de Google Cloud o la API de Cloud Monitoring.

Esta función solo se admite para proyectos de Google Cloud . Para las configuraciones de App Hub, selecciona el proyecto host de App Hub o el proyecto de administración de la carpeta habilitada para apps.

Antes de comenzar

Completa lo siguiente en el proyecto de Google Cloud que almacena tu política de alertas:

  1. Asegúrate de tener los permisos necesarios:

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

  2. Si deseas usar los ejemplos de la API de Cloud Monitoring que se incluyen en este documento, haz lo siguiente:

    1. Crea una variable de entorno, PROJECT_ID, para contener el ID de tu proyecto deGoogle Cloud :

      PROJECT_ID=PROJECT_ID
    2. Autentícate en Google Cloud CLI:

      gcloud auth login
    3. Configura el proyecto Google Cloud predeterminado:

      gcloud config set project ${PROJECT_ID}
    4. Crea un token de autorización:

      ACCESS_TOKEN=`gcloud auth print-access-token`

      Deberás actualizar el token de acceso de forma periódica. Si los comandos que funcionaban de repente informan que no estás autenticado, vuelve a emitir este comando.

Cómo crear una alerta pospuesta

Para evitar que las políticas de alertas creen incidentes y envíen notificaciones, crea una alerta pospuesta. Si quieres agregar un filtro basado en etiquetas a una postergación, esta debe aplicarse a una sola política de alertas. Después de crear una alerta pospuesta, no puedes modificar el filtro basado en etiquetas ni la lista de políticas a las que se aplica la alerta pospuesta.

Puedes crear un aplazamiento con la consola de Google Cloud , gcloud CLI o la API de Cloud Monitoring.

Console

En la consola de Google Cloud , puedes crear una posposición desde un incidente abierto o desde la página Alertas. Solo puedes crear una función de posponer con un filtro desde la página de detalles del incidente.

Para crear un aplazamiento desde un incidente abierto, 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. En la barra de herramientas de la consola de Google Cloud , selecciona tu proyecto Google Cloud . Para las configuraciones de App Hub, selecciona el proyecto host de App Hub o el proyecto de administración de la carpeta habilitada para apps.
  3. En el panel Incidentes de la página Alertas, busca tu incidente y haz clic en Resumen del incidente.
  4. En la página Detalles del incidente, haz clic en Posponer y, luego, selecciona la duración del aplazamiento.
  5. Opcional: Para agregar un filtro basado en etiquetas a la función de posponer, ve a la sección Etiquetas y selecciona una o más etiquetas. Un filtro basado en etiquetas puede incluir etiquetas de recursos y métricas. Cuando la política de alertas no se basa en PromQL, el filtro también puede incluir etiquetas de metadatos.

    Por lo general, las posposiciones se aplican a todos los incidentes creados por una política de alertas. Los filtros te permiten aplicar la función de posponer a los incidentes cuyas etiquetas coincidan con las etiquetas del filtro.

  6. Haz clic en Posponer. La postergación ahora se aplica a la política de alertas que creó el incidente.

Para crear una repetición desde la página Alerting, 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. En la barra de herramientas de la consola de Google Cloud , selecciona tu proyecto Google Cloud . Para las configuraciones de App Hub, selecciona el proyecto host de App Hub o el proyecto de administración de la carpeta habilitada para apps.
  3. En la página Alertas, haz clic en Crear aplazamiento.
  4. Ingresa un nombre descriptivo para la alerta pospuesta. Este nombre se muestra en la página Alertas.
  5. Selecciona una Hora de inicio. Puedes ingresar una hora específica o iniciar la función de posponer cuando se cree.
  6. Ingresa la Duración. El valor de este campo determina la duración de la postergación.
  7. Completa la sección Criterios de posposición. Puedes usar el menú Políticas de alertas para seleccionar las políticas de alertas a las que se aplica la función de posponer.

    Puedes agregar hasta 16 políticas de alertas a una posposición.

    Una vez que se crea una opción para posponer, no se pueden modificar sus criterios.

    Después de completar la sección Criterios de posposición, en el panel Crear posposición, se enumeran los incidentes pasados que coinciden con los criterios.

  8. Haz clic en Crear.

API de Cloud Monitoring

Para crear una posposición, invoca el método snoozes.create con una solicitud POST al extremo Snooze. Debes proporcionar un objeto snooze:

curl -d @my-snooze.json -H "Authorization: Bearer $ACCESS_TOKEN" \
-H 'Content-Type: application/json' \
-X POST https://monitoring.googleapis.com/v3/projects/${PROJECT_ID}/snoozes

En la expresión anterior, PROJECT_ID es una variable de entorno que almacena el ID de tu proyecto. Para las configuraciones de App Hub, selecciona el proyecto host de App Hub o el proyecto de administración de la carpeta habilitada para apps.

El método devuelve un objeto snooze. El campo "name", que incluye el ID de posposición que genera Monitoring, es la única diferencia entre el objeto devuelto y el contenido de my-snooze.json:

{
  "name": "projects/my-project/snoozes/778899",
  "criteria": {
    "policies": [
      "projects/my-project/alertPolicies/001122"
    ]
  },
  "interval": {
    "startTime": "2022-11-12T19:00:20Z",
    "endTime": "2022-11-12T19:05:20Z"
  },
  "displayName": "Snooze2"
}

gcloud CLI

Para crear una repetición, ejecuta el comando gcloud monitoring snoozes create:

gcloud monitoring snoozes create --criteria-policies=LIST_OF_POLICIES --display-name=DISPLAY_NAME --start-time=START_TIME --end-time=END_TIME --project=PROJECT_ID --criteria-filter=FILTER

Antes de ejecutar el comando anterior, reemplaza lo siguiente:

  • LIST_OF_POLICIES: Son las políticas a las que se aplica la función de posponer. Si especificas varios proyectos, sepáralos con una coma.
  • PROJECT_ID: Es el identificador del proyecto. Para las configuraciones de App Hub, selecciona el proyecto host de App Hub o el proyecto de administración de la carpeta habilitada para apps.
  • DISPLAY_NAME: Es el nombre que se mostrará en la consola de Google Cloud .
  • START_TIME: Es la hora de inicio.
  • END_TIME : Es la hora de finalización. El valor debe ser al menos un minuto después de la hora de inicio.

    Para las horas de inicio y finalización, debes seguir las reglas de formato ISO 8601. Sin embargo, puedes especificar horas absolutas o relativas. En el siguiente ejemplo, se especifican tiempos absolutos. Para iniciar una posposición 30 minutos después de la hora actual, usa --start-time="+PTM30M".

  • FILTER: Opcional Se puede definir un filtro basado en etiquetas cuando la función de posponer se aplica a una política de alertas. El filtro, que puede incluir etiquetas de recursos, métricas y metadatos, aplica la función de posponer a los incidentes con etiquetas coincidentes. Cuando la política de alertas se basa en PromQL, el filtro no puede usar etiquetas de metadatos. Para obtener más información, consulta la página de referencia de gcloud monitoring snoozes create.

Por ejemplo, el siguiente comando crea una función de posponer para una política de alertas con un ID de "12345". El período de posposición es el intervalo que va del 1 al 7 de marzo de 2025.

gcloud monitoring snoozes create --display-name="Maintenance Week" \
    --criteria-policies="projects/my-project/alertPolicies/12345" \
    --start-time="2025-03-01T03:00:00.0-0500" \
    --end-time="2025-03-07T23:59:59.5-0500" \
    --project=PROJECT_ID

En el ejemplo anterior, se crea el siguiente aplazamiento en my-project:

{
  "name": "projects/my-project/snoozes/778899",
  "criteria": {
    "policies": [
      "projects/my-project/alertPolicies/12345"
    ]
  },
  "interval": {
    "startTime": "2025-03-01T03:00:00.0-0500",
    "endTime": "2025-03-07T23:59:59.5-0500"
  },
  "displayName": "Maintenance Week"
}

Si se ejecuta correctamente, la respuesta a este comando será similar a la siguiente:

Created snooze [projects/my-project/snoozes/778899]

El nombre de una política de alertas no se muestra en la consola de Google Cloud . Para determinar el nombre de una política de alertas, realiza una de las siguientes acciones:

  • Ejecuta el comando gcloud alpha monitoring policies list. Los datos de respuesta de este comando incluyen el nombre de tus políticas de alertas.
  • Consulta la representación en JSON de una política de alertas. Puedes descargar la representación de JSON en tu sistema local con una opción de la página Detalles de la política.

Cómo crear alertas pospuestas recurrentes

Para crear aplazamientos que se produzcan en intervalos recurrentes, puedes escribir una secuencia de comandos que cree un aplazamiento para una política de alertas. Luego, usa un programador de trabajos, como cron o Cloud Scheduler, para ejecutar la secuencia de comandos según el programa que necesites.

Cómo ver las alertas pospuestas

Cuando creas una posposición, se agrega al registro histórico de posposiciones de tu proyecto. Este registro muestra las posposiciones vencidas, activas y próximas. No puedes quitar entradas de este registro, es decir, no puedes borrar una posposición. Sin embargo, desde esta vista, puedes mostrar los detalles sobre una posposición y realizar acciones como editar o copiar la posposición.

Console

Para ver una lista de las repeticiones, 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. En la barra de herramientas de la consola de Google Cloud , selecciona tu proyecto Google Cloud . Para las configuraciones de App Hub, selecciona el proyecto host de App Hub o el proyecto de administración de la carpeta habilitada para apps.
  3. Haz clic en Ver todos los aplazamientos en el panel Aplazar.

    En la página Posponer, se muestra una lista de las funciones para posponer y un cronograma que muestra gráficamente las funciones para posponer pasadas, próximas y activas.

    • Para editar, copiar, cancelar o finalizar una repetición, usa el menú Más opciones de la repetición. El estado de posponer determina qué opciones están disponibles.
    • Para ver todas las alertas pospuestas, habilita Mostrar alertas pospuestas anteriores. De forma predeterminada, solo se muestran las repeticiones activas y próximas.
    • Para cambiar el período de visualización de la tabla Cronograma, usa el menú Intervalo. De forma predeterminada, la tabla muestra los datos de la próxima hora. Sin embargo, puedes modificar este campo para especificar períodos pasados o futuros. Las repeticiones vencidas se conservan durante 13 meses.
    • Para ver los detalles de una repetición específica, haz clic en Ver detalles.
    • Para ver un resumen de las repeticiones activas, coloca el puntero sobre el área sombreada de la fila Activo en la tabla Cronograma. La información sobre la herramienta muestra la información de resumen.
    • Para ver una representación gráfica de las repeticiones activas, expande la fila Activas de la tabla Cronograma.

API de Cloud Monitoring

Para enumerar todas las posposiciones que pertenecen a un proyecto Google Cloud , invoca el método snoozes.list:

curl -H "Authorization: Bearer $ACCESS_TOKEN" \
https://monitoring.googleapis.com/v3/projects/${PROJECT_ID}/snoozes

En la expresión anterior, PROJECT_ID es una variable de entorno que almacena el ID de tu proyecto. Para las configuraciones de App Hub, selecciona el proyecto host de App Hub o el proyecto de administración de la carpeta habilitada para apps.

El método devuelve una lista de objetos snooze. Por ejemplo, cuando un proyecto tiene una sola posposición, la respuesta al comando snoozes.list es similar a la siguiente:

{
  "name": "projects/my-project/snoozes/778899",
  "criteria": {
    "policies": [
      "projects/my-project/alertPolicies/12345"
    ]
  },
  "interval": {
    "startTime": "2025-03-01T03:00:00.0-0500",
    "endTime": "2025-03-07T23:59:59.5-0500"
  },
  "displayName": "Snooze2"
}

Para obtener información sobre una posposición específica, invoca el método snoozes.get y especifica el ID del proyecto y el ID de la posposición. En la respuesta anterior, el ID de la función de posponer es 2986663705844383744:

curl -H "Authorization: Bearer $ACCESS_TOKEN" \
https://monitoring.googleapis.com/v3/projects/${PROJECT_ID}/snoozes/${SNOOZE_ID}

El método devuelve un solo objeto snooze:

{
  "name": "projects/my-project/snoozes/778899",
  "criteria": {
    "policies": [
      "projects/my-project/alertPolicies/12345"
    ]
  },
  "interval": {
    "startTime": "2025-03-01T03:00:00.0-0500",
    "endTime": "2025-03-07T23:59:59.5-0500"
  },
  "displayName": "Snooze2"
}

gcloud CLI

Para enumerar los aplazamientos en tu proyecto actual, ejecuta el comando gcloud monitoring snoozes list:

gcloud monitoring snoozes list --project=PROJECT_ID OPTIONAL_FLAGS

Antes de ejecutar el comando anterior, reemplaza lo siguiente:

  • PROJECT_ID: Es el identificador del proyecto. Para las configuraciones de App Hub, selecciona el proyecto host de App Hub o el proyecto de administración de la carpeta habilitada para apps.
  • OPTIONAL_FLAGS: Para obtener información sobre las marcas opcionales, consulta la página de referencia de gcloud monitoring snoozes list.

La respuesta a este comando es una lista de nombres de aplazamientos en el proyecto, con formato YAML. Por ejemplo, la respuesta a este comando para el proyectoGoogle Cloud con ID my-project es una sola entrada:

criteria:
  policies:
  - projects/my-project/alertPolicies/12345
  - projects/my-project/alertPolicies/23451
displayName: Maintenance Week
interval:
  endTime: '2023-03-08T04:59:59Z'
  startTime: '2023-03-01T08:00:00Z'
name: projects/my-project/snoozes/778899

Para enumerar los detalles de una posposición específica, ejecuta el comando gcloud monitoring snoozes describe:

gcloud monitoring snoozes describe NAME --project=PROJECT_ID

Por ejemplo, para mostrar los detalles sobre la función de posponer con el nombre projects/my-project/snoozes/778899, ejecuta el siguiente comando:

gcloud monitoring snoozes describe projects/my-project/snoozes/778899 --project=PROJECT_ID

Si proporcionas un NAME no válido para un comando describe, la respuesta contendrá un código de error 500 y el siguiente mensaje:

Internal error encountered. Please retry after a few seconds. If internal errors persist, contact support at https://cloud.google.com/support/docs.

Cómo editar una alerta pospuesta

Puedes editar el nombre y el período de una posposición próxima, y puedes editar el nombre y la hora de finalización de una posposición activa. Por ejemplo, cuando se reprograma un período de mantenimiento, es posible que debas editar una posposición.

No puedes editar una alerta pospuesta anterior ni los criterios de ninguna alerta pospuesta. Sin embargo, si quieres programar una repetición anterior para un período futuro, copia la repetición y aplica los cambios a la copia antes de seleccionar Crear.

Console

Para editar una posposición, 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. En la barra de herramientas de la consola de Google Cloud , selecciona tu proyecto Google Cloud . Para las configuraciones de App Hub, selecciona el proyecto host de App Hub o el proyecto de administración de la carpeta habilitada para apps.
  3. Haz clic en Ver todos los aplazamientos en el panel Aplazar.
  4. En la lista de aplazamientos, busca el que quieras editar y, luego, selecciona Editar aplazamiento en el menú Más opciones.
  5. Haz clic en Guardar después de completar los cambios.

API de Cloud Monitoring

Para modificar una posposición existente, invoca el método snoozes.patch con una solicitud PATCH al extremo Snooze. Debes proporcionar el objeto snooze revisado y agregar parámetros de consulta que identifiquen qué campos se modificaron. Cuando se usa curl, los parámetros de consulta deben estar codificados como URL.

En el caso de las posposiciones próximas, puedes modificar el nombre y el período. En el caso de las repeticiones activas, puedes modificar el nombre y la hora de finalización. No puedes modificar las repeticiones anteriores.

Para actualizar el displayName de una posposición, crea un archivo JSON, my-updated-snooze.json, que describa el objeto de posposición y actualice el nombre visible. Luego, ejecuta el comando siguiente:

curl -d @my-updated-snooze.json -H "Authorization: Bearer $ACCESS_TOKEN" \
-H 'Content-Type: application/json' \
-X PATCH https://monitoring.googleapis.com/v3/projects/${PROJECT_ID}/snoozes/${SNOOZE_ID}?updateMask=displayName

En la expresión anterior, se incluye lo siguiente:

  • PROJECT_ID es una variable de entorno que almacena el ID de tu proyecto. Para las configuraciones de App Hub, selecciona el proyecto host de App Hub o el proyecto de administración de la carpeta habilitada para apps.

  • SNOOZE_ID es una variable de entorno que almacena el ID de la función de posponer.

El método devuelve un objeto snooze que es idéntico al contenido del archivo my-updated-snooze.json:

{
  "name": "projects/my-project/snoozes/778899",
  "criteria": {
    "policies": [
      "projects/my-project/alertPolicies/12345"
    ]
  },
  "interval": {
    "startTime": "2025-03-01T03:00:00.0-0500",
    "endTime": "2025-03-07T23:59:59.5-0500"
  },
  "displayName": "Snooze2"
}

gcloud CLI

Para editar una posposición, ejecuta el comando gcloud monitoring snoozes update. Puedes actualizar el nombre visible, la hora de inicio y la hora de finalización:

gcloud monitoring snoozes update NAME --project=PROJECT_ID OPTIONAL_FLAGS

Antes de ejecutar el comando anterior, reemplaza lo siguiente:

  • NAME: Es el nombre de la función de posponer.
  • PROJECT_ID: Es el identificador del proyecto. Para las configuraciones de App Hub, selecciona el proyecto host de App Hub o el proyecto de administración de la carpeta habilitada para apps.
  • OPTIONAL_FLAGS: Para obtener información sobre las marcas opcionales, consulta la página de referencia de gcloud monitoring snoozes update.

Por ejemplo, para cambiar el nombre visible de la función de posponer con el nombre projects/my-project/snoozes/778899, ejecuta el siguiente comando:

gcloud monitoring snoozes update projects/my-project/snoozes/778899 --display-name="Maintenance Week" --project=PROJECT_ID

Cómo finalizar o cancelar la función de posponer

Si quieres recibir notificaciones sobre los recursos que coinciden con los criterios especificados en una posposición activa, finaliza la posposición. Por ejemplo, cuando el mantenimiento planificado se completa más rápido de lo previsto, es posible que desees finalizar la función de posponer.

Si tienes una posposición próxima que ya no quieres, cancélala. La operación de cancelación establece la duración en cero y hace que la función de posponer pase al estado Pasado.

Console

Para finalizar una repetición activa o cancelar una repetición próxima, 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. En la barra de herramientas de la consola de Google Cloud , selecciona tu proyecto Google Cloud . Para las configuraciones de App Hub, selecciona el proyecto host de App Hub o el proyecto de administración de la carpeta habilitada para apps.
  3. Haz clic en Ver todos los aplazamientos en el panel Aplazar.
  4. En la lista de aplazamientos, busca el que deseas finalizar o cancelar y, luego, realiza una de las siguientes acciones:

    • Para finalizar una repetición activa, selecciona Finalizar ahora en el menú Más opciones.
    • Para cancelar una postergación próxima, selecciona Cancelar postergación en el menú Más opciones .

API de Cloud Monitoring

Para finalizar una función de posponer activa, edita la función y configura la hora de finalización como la hora actual. Para obtener más información, consulta Cómo editar una repetición.

Para cancelar una alerta pospuesta próxima, edita la alerta y establece la hora de finalización en la hora de inicio de la alerta. La hora de inicio debe ser posterior a la hora actual. Para obtener más información, consulta Cómo editar una repetición.

gcloud CLI

Para finalizar una repetición activa o cancelar una repetición próxima, ejecuta el comando gcloud monitoring snoozes cancel:

gcloud monitoring snoozes cancel NAME --project=PROJECT_ID

Antes de ejecutar el comando anterior, reemplaza lo siguiente:

  • NAME: Es el nombre de la función de posponer.
  • PROJECT_ID: Es el identificador del proyecto. Para las configuraciones de App Hub, selecciona el proyecto host de App Hub o el proyecto de administración de la carpeta habilitada para apps.

Por ejemplo, para cancelar la función de posponer con el nombre projects/my-project/snoozes/778899, ejecuta el siguiente comando:

gcloud monitoring snoozes cancel projects/my-project/snoozes/778899 --project=PROJECT_ID

Cómo copiar una alerta para posponer

Cuando quieras usar una repetición existente como plantilla para otra, haz una copia. Cuando copias una repetición, se abre el editor de repeticiones con todos los campos, excepto la hora de inicio, configurados con los valores de la repetición original. Puedes modificar todos los campos antes de hacer clic en Crear.

Para copiar una repetición con la consola, 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. En la barra de herramientas de la consola de Google Cloud , selecciona tu proyecto Google Cloud . Para las configuraciones de App Hub, selecciona el proyecto host de App Hub o el proyecto de administración de la carpeta habilitada para apps.
  3. Haz clic en Ver todos los aplazamientos en el panel Aplazar.
  4. En la lista de aplazamientos, busca el que deseas editar y, luego, selecciona Copiar aplazamiento en el menú Más opciones.
  5. Aplica las modificaciones a la copia y, luego, haz clic en Crear.

¿Qué sigue?