Las postergaciones en Cloud Monitoring te permiten evitar que las políticas de alertas creen alertas y envíen notificaciones durante un período específico, como un período de mantenimiento planificado. Puedes crear y administrar aplazamientos con la consola de Google Cloud , Google Cloud CLI o la API de Cloud Monitoring.
Para obtener una descripción general conceptual, consulta Posponer notificaciones y alertas.
Esta función solo es compatible con proyectos de Google Cloud . Para las configuraciones de App Hub, selecciona el proyecto host o el proyecto de administración de App Hub.
Antes de comenzar
Completa lo siguiente en el proyecto de Google Cloud que almacena tu política de alertas:
Asegúrate de tener los permisos necesarios:
-
Para obtener los permisos que necesitas para ver y editar las postergaciones 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 a través de roles personalizados o cualquier otro rol predefinido.
-
Para obtener los permisos que necesitas para ver y editar las posposiciones con la API de Cloud Monitoring, pídele a tu administrador que te otorgue el rol de IAM de Editor de posposiciones de Monitoring (
roles/monitoring.snoozeEditor) 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 a través de 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.
-
Si deseas usar los ejemplos de la API de Cloud Monitoring que se incluyen en este documento, haz lo siguiente:
Crea una variable de entorno,
PROJECT_ID, para almacenar el ID de tu proyecto deGoogle Cloud :PROJECT_ID=PROJECT_ID
Autentícate en Google Cloud CLI:
gcloud auth login
Configura el proyecto de Google Cloud predeterminado:
gcloud config set project ${PROJECT_ID}
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 alertas y envíen notificaciones, crea una función de posponer. Cuando restringes una postergación a una política de alertas, la postergación puede incluir filtros basados en etiquetas. Si agregas filtros basados en etiquetas, la posposición se aplicará solo a las alertas que coincidan con los filtros. Después de crear una postergación, no puedes modificar el filtro basado en etiquetas ni la lista de políticas a las que se aplica la postergación.
Console
La consola de Google Cloud proporciona dos formas de crear una postergación:
Si comienzas desde la página Detalles de la alerta de una alerta abierta, el diálogo que completas para crear la postergación se preconfigura para enumerar tu política de alertas. El diálogo también te permite seleccionar etiquetas, que se adjuntan a la posposición como filtros basados en etiquetas.
Si comienzas desde la página Alertas, puedes crear una postergación cuyos criterios incluyan hasta 16 políticas de alertas. Sin embargo, no puedes adjuntar filtros basados en etiquetas a tu posposición, incluso cuando los criterios de posposición incluyen una política de alertas.
Para crear una postergación a partir de una alerta abierta, sigue estos pasos:
-
En la consola de Google Cloud , ve a la página Alertas notifications:
Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuyo subtítulo es Monitoring.
- En la barra de herramientas de la consola de Google Cloud , selecciona tu proyecto de Google Cloud . Para las configuraciones de App Hub, selecciona el proyecto host o el proyecto de administración de App Hub.
- En el panel Alertas de la página Alertas, busca tu alerta y haz clic en Resumen de la alerta.
- En la página Detalles de la alerta, haz clic en Posponer y, luego, selecciona la duración de la posposición.
Opcional: Para agregar un filtro basado en etiquetas a la suspensión, ve a la sección Etiquetas y selecciona una o más etiquetas. Un filtro basado en etiquetas puede incluir etiquetas de recursos y de 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 todas las alertas creadas por una política de alertas. Los filtros te permiten aplicar la postergación a las alertas cuyas etiquetas coincidan con las etiquetas del filtro.
Haz clic en Posponer. La postergación ahora se aplica a la política de alertas que creó la alerta.
Para crear una postergación desde la página Alertas, haz lo siguiente:
-
En la consola de Google Cloud , ve a la página Alertas notifications:
Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuyo subtítulo es Monitoring.
- En la barra de herramientas de la consola de Google Cloud , selecciona tu proyecto de Google Cloud . Para las configuraciones de App Hub, selecciona el proyecto host o el proyecto de administración de App Hub.
- En la página Alertas, haz clic en Crear una postergación.
- Ingresa un nombre descriptivo para la alerta pospuesta. Este nombre se muestra en la página Alertas.
- Selecciona una Hora de inicio. Puedes ingresar una hora específica o iniciar la pausa cuando se crea.
- Ingresa la Duración. El valor de este campo determina cuánto dura la pausa.
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 postergación.
Puedes agregar hasta 16 políticas de alertas a una pausa.
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 las alertas pospuestas, en el panel Crear alerta pospuesta, se enumeran las alertas pasadas que coinciden con los criterios.
Haz clic en Crear.
gcloud
La gcloud CLI te permite crear una postergación cuyos criterios enumeran hasta 16 políticas de alertas. Si la pausa se aplica a una política de alertas, también puedes incluir filtros basados en etiquetas.
Para crear una posposició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 postergación. 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 o el proyecto de administración de App Hub.
- 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 posterior a la hora de inicio.
Para las horas de inicio y finalización, debes seguir las reglas de formato de la norma ISO 8601. Sin embargo, puedes especificar horas absolutas o relativas. En el siguiente ejemplo, se especifican horas absolutas. 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 las alertas 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, con el siguiente comando, se crea una postergación para una política de alertas con el ID "12345". El intervalo de tiempo de la postergación es del 1 de marzo de 2025 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 de forma correcta, 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 monitoring policies list. Los datos de respuesta de este comando incluyen el nombre de tus políticas de alertas. - Visualiza la representación JSON de una política de alertas. Puedes descargar la representación JSON en tu sistema local con una opción de la página Detalles de la política.
REST
La API de Cloud Monitoring te permite crear una postergación cuyos criterios enumeran hasta 16 políticas de alertas. Si la pausa se aplica a una política de alertas, también puedes incluir filtros basados en etiquetas.
Para crear una postergación, invoca el método snoozes.create
emitiendo 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 tu ID del proyecto. Para las configuraciones de App Hub, selecciona el proyecto host o el proyecto de administración de App Hub.
El método devuelve un objeto snooze. El campo "name",
que incluye el ID de la postergación que genera Monitoring,
es la única diferencia entre el objeto que se muestra 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"
}
Crea alertas pospuestas recurrentes
Para crear postergaciones que se produzcan en intervalos recurrentes, puedes escribir una secuencia de comandos
que cree una postergación 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.
Enumera las alertas pospuestas
Cuando creas una posposición, se agrega al registro histórico de posposiciones de tu proyecto. En este registro, se muestran 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 de una suspensión y realizar acciones, como editar o copiar la suspensión.
Console
Para ver una lista de las posposiciones, haz lo siguiente:
-
En la consola de Google Cloud , ve a la página Alertas notifications:
Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuyo subtítulo es Monitoring.
- En la barra de herramientas de la consola de Google Cloud , selecciona tu proyecto de Google Cloud . Para las configuraciones de App Hub, selecciona el proyecto host o el proyecto de administración de App Hub.
Haz clic en Ver todas las posposiciones en el panel Posponer.
En la página Posponer, se muestra una lista de las posposiciones y un cronograma que muestra de forma gráfica las posposiciones pasadas, próximas y activas.
- Para editar, copiar, cancelar o finalizar una posposición, usa el menú more_vert Más opciones de la posposición. El estado de posposición determina qué opciones están disponibles.
- Para ver una lista de todas las alertas pospuestas, habilita Mostrar alertas pospuestas anteriores. De forma predeterminada, solo se muestran las suspensiones activas y próximas.
- Para cambiar el período de visualización de la tabla Cronograma, usa el menú Período. 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 posposiciones 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 posposiciones activas, coloca el puntero en el área sombreada de la fila Activo de la tabla Cronograma. La información sobre herramientas 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.
gcloud
Para enumerar las repeticiones 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 o el proyecto de administración de App Hub.
- 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 las suspensiones en el proyecto,
con formato YAML. Por ejemplo, la respuesta a este comando para el proyectoGoogle Cloud con el 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 postergació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 postergación 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.
REST
Para enumerar todas las suspensiones que pertenecen a un proyecto de 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 tu ID del proyecto. Para las configuraciones de App Hub, selecciona el proyecto host o el proyecto de administración de App Hub.
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 postergación específica, invoca el
método snoozes.get
y especifica el ID del proyecto y el ID de la postergación. En la respuesta anterior, el ID 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"
}
Cómo editar una alerta pospuesta
Puedes editar el nombre y el período de una próxima postergación, y puedes editar el nombre y la hora de finalización de una postergación activa. Por ejemplo, cuando se reprograma un período de mantenimiento, es posible que debas editar una alerta para posponer.
No puedes editar una alerta pospuesta anterior, los criterios de ninguna alerta pospuesta ni los filtros basados en etiquetas adjuntos a una alerta pospuesta.
Si quieres programar una postergación anterior para un período futuro, copia la postergación y aplica los cambios a la copia antes de seleccionar Crear.
Console
Para editar una posposición, haz lo siguiente:
-
En la consola de Google Cloud , ve a la página Alertas notifications:
Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuyo subtítulo es Monitoring.
- En la barra de herramientas de la consola de Google Cloud , selecciona tu proyecto de Google Cloud . Para las configuraciones de App Hub, selecciona el proyecto host o el proyecto de administración de App Hub.
- Haz clic en Ver todas las posposiciones en el panel Posponer.
- En la lista de aplazamientos, busca el que quieras editar y, luego, selecciona Editar aplazamiento en el menú more_vert Más opciones.
- Haz clic en Guardar después de completar los cambios.
gcloud
Para editar una postergació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 o el proyecto de administración de App Hub.
- 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 posposición 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
REST
Para modificar una posposición existente, invoca el método snoozes.patch enviando una solicitud PATCH al extremo Snooze.
Debes proporcionar el objeto snooze revisado y, además, incluir 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 próximas suspensiones, 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 posposiciones anteriores.
Para actualizar el displayName de una suspensión, crea un archivo JSON,
my-updated-snooze.json, que describa el objeto de suspensió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 dan las siguientes situaciones:
PROJECT_IDes una variable de entorno que almacena el ID de tu proyecto. Para las configuraciones de App Hub, selecciona el proyecto host o el proyecto de administración de App Hub.SNOOZE_IDes una variable de entorno que almacena el ID de la suspensión.
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"
}
Cómo finalizar o cancelar la función de posponer
Si quieres recibir notificaciones de los recursos que coinciden con los criterios especificados en una postergación activa, finalízala. Por ejemplo, cuando el mantenimiento planificado se completa más rápido de lo previsto, es posible que desees finalizar una postergación.
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 postergación pase al estado Anterior.
Console
Para finalizar una repetición activa o cancelar una próxima, haz lo siguiente:
-
En la consola de Google Cloud , ve a la página Alertas notifications:
Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuyo subtítulo es Monitoring.
- En la barra de herramientas de la consola de Google Cloud , selecciona tu proyecto de Google Cloud . Para las configuraciones de App Hub, selecciona el proyecto host o el proyecto de administración de App Hub.
- Haz clic en Ver todas las posposiciones en el panel Posponer.
En la lista de posposiciones, busca la que deseas finalizar o cancelar y, luego, realiza una de las siguientes acciones:
- Para finalizar una posposición activa, selecciona Finalizar ahora en el menú Más opciones de more_vert.
- Para cancelar una próxima postergación, selecciona Cancelar postergación en el menú Más opciones de more_vert.
gcloud
Para finalizar una postergación activa o cancelar una 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 o el proyecto de administración de App Hub.
Por ejemplo, para cancelar la postergación con el nombre
projects/my-project/snoozes/778899, ejecuta el siguiente comando:
gcloud monitoring snoozes cancel projects/my-project/snoozes/778899 --project=PROJECT_ID
REST
Para finalizar una postergación activa, edítala y establece la hora de finalización en la hora actual. Para obtener más información, consulta Cómo editar una repetición.
Para cancelar una alerta pospuesta próxima, edítala y establece la hora de finalización en la hora de inicio de la alerta pospuesta. La hora de inicio debe ser posterior a la hora actual. Para obtener más información, consulta Cómo editar una repetición.
Cómo copiar una alerta para posponer
Cuando quieras usar una repetición existente como plantilla para otra, haz una copia. Cuando copias una postergación, se abre el editor de postergaciones con todos los campos, excepto la hora de inicio, establecidos en los valores de la postergación original. Puedes modificar todos los campos antes de hacer clic en Crear.
Para copiar una repetición con la consola, haz lo siguiente:
-
En la consola de Google Cloud , ve a la página Alertas notifications:
Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuyo subtítulo es Monitoring.
- En la barra de herramientas de la consola de Google Cloud , selecciona tu proyecto de Google Cloud . Para las configuraciones de App Hub, selecciona el proyecto host o el proyecto de administración de App Hub.
- Haz clic en Ver todas las posposiciones en el panel Posponer.
- En la lista de suspensiones, busca la que deseas editar y, luego, selecciona Copiar suspensión en el menú more_vert Más opciones.
- Aplica las modificaciones a la copia y, luego, haz clic en Crear.
¿Qué sigue?
Para obtener una descripción general de las alertas, consulta Descripción general de las alertas.
Para obtener información sobre la latencia de las notificaciones y cómo las opciones de los parámetros de una política de alertas afectan el momento en que se envían las notificaciones, consulta Comportamiento de las políticas de alertas basadas en métricas.
Para obtener información sobre las alertas, consulta los siguientes documentos: