Le posticipazioni in Cloud Monitoring ti consentono di impedire alle policy di avviso di creare avvisi e inviare notifiche durante un periodo di tempo specifico, ad esempio un periodo di manutenzione pianificato. Puoi creare e gestire i posticipi utilizzando la console Google Cloud , Google Cloud CLI o l'API Cloud Monitoring.
Per una panoramica concettuale, vedi Posticipare notifiche e avvisi.
Questa funzionalità è supportata solo per i progetti Google Cloud . Per le configurazioni di App Hub, seleziona il progetto host di App Hub o il progetto di gestione.
Prima di iniziare
Completa quanto segue nel progetto Google Cloud che archivia la tua norma di avviso:
Assicurati di disporre delle autorizzazioni richieste:
-
Per ottenere le autorizzazioni necessarie per visualizzare e modificare i posticipi utilizzando la console Google Cloud , chiedi all'amministratore di concederti il ruolo IAM Monitoring Editor (
roles/monitoring.editor) nel progetto. Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.Potresti anche riuscire a ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.
-
Per ottenere le autorizzazioni necessarie per visualizzare e modificare i posticipi utilizzando l'API Cloud Monitoring, chiedi all'amministratore di concederti il ruolo IAM Monitoring Snooze Editor (
roles/monitoring.snoozeEditor) nel progetto. Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.Potresti anche riuscire a ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.
Per saperne di più sui ruoli di Cloud Monitoring, consulta Controllare l'accesso con Identity and Access Management.
-
Se vuoi utilizzare gli esempi dell'API Cloud Monitoring in questo documento, segui questi passaggi:
Crea una variabile di ambiente,
PROJECT_ID, per contenere l'ID del tuo progettoGoogle Cloud :PROJECT_ID=PROJECT_ID
Esegui l'autenticazione in Google Cloud CLI:
gcloud auth login
Imposta il progetto Google Cloud predefinito:
gcloud config set project ${PROJECT_ID}
Crea un token di autorizzazione:
ACCESS_TOKEN=`gcloud auth print-access-token`
Devi aggiornare periodicamente il token di accesso. Se i comandi che funzionavano segnalano improvvisamente che non hai eseguito l'autenticazione, esegui di nuovo questo comando.
Creare un posticipo
Per impedire alle policy di avviso di creare avvisi e inviare notifiche, crea una posticipazione. Quando limiti una posticipazione a una singola policy di avviso, la posticipazione può includere filtri basati su etichette. Se aggiungi filtri basati su etichette, la posticipazione si applica solo agli avvisi che corrispondono ai filtri. Dopo aver creato un posticipo, non puoi modificare il filtro basato su etichette o l'elenco di policy a cui si applica il posticipo.
Console
La console Google Cloud offre due modi per creare un posticipo:
Se inizi dalla pagina Dettagli avviso di un avviso aperto, la finestra di dialogo che compili per creare il posticipo è preconfigurata per elencare la criterio di avviso. La finestra di dialogo ti consente anche di selezionare le etichette, che vengono associate al posticipo come filtri basati sulle etichette.
Se inizi dalla pagina Avvisi, puoi creare un posticipo i cui criteri elencano fino a 16 policy di avviso. Tuttavia, non puoi allegare filtri basati su etichette al posticipo anche se i criteri di posticipo elencano un criterio di avviso.
Per posticipare un avviso aperto:
-
Nella Google Cloud console, vai alla pagina notifications Avvisi:
Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Monitoring.
- Nella barra degli strumenti della console Google Cloud , seleziona il tuo progetto Google Cloud . Per le configurazioni di App Hub, seleziona il progetto host o il progetto di gestione di App Hub.
- Nel riquadro Avvisi della pagina Avvisi, trova l'avviso e fai clic su Riepilogo avviso.
- Nella pagina Dettagli avviso, fai clic su Posticipa e seleziona la durata del posticipo.
(Facoltativo) Per aggiungere un filtro basato su etichette alla posticipazione, vai alla sezione Etichette e seleziona una o più etichette. Un filtro basato su etichette può includere etichette di risorse e metriche. Quando la criterio di avviso non è basata su PromQL, il filtro può includere anche le etichette dei metadati.
In genere, i posticipi si applicano a tutti gli avvisi creati da un criterio di avviso. I filtri ti consentono di applicare la sospensione agli avvisi le cui etichette corrispondono a quelle del filtro.
Fai clic su Posticipa. La posticipazione ora si applica alla criterio di avviso che ha creato l'avviso.
Per creare un rinvio dalla pagina Avvisi:
-
Nella Google Cloud console, vai alla pagina notifications Avvisi:
Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Monitoring.
- Nella barra degli strumenti della console Google Cloud , seleziona il tuo progetto Google Cloud . Per le configurazioni di App Hub, seleziona il progetto host di App Hub o il progetto di gestione.
- Nella pagina Avvisi, fai clic su Crea posticipo.
- Inserisci un nome descrittivo per la posticipazione. Questo nome viene visualizzato nella pagina Avvisi.
- Seleziona un'ora di inizio. Puoi inserire un'ora specifica o avviare la posticipazione quando viene creata.
- Inserisci la durata. Il valore di questo campo determina la durata della posticipazione.
Completa la sezione Criteri di posticipo. Puoi utilizzare il menu Policy di avviso per selezionare le policy di avviso a cui si applica il posticipo.
Puoi aggiungere fino a 16 policy di avviso a una posticipazione.
Una volta creata una posticipazione, i relativi criteri non possono essere modificati.
Dopo aver completato la sezione Criteri di posticipo, il riquadro Crea posticipo elenca gli avvisi precedenti che corrispondono ai criteri.
Fai clic su Crea.
gcloud
gcloud CLI ti consente di creare un posticipo i cui criteri elencano fino a 16 policy di avviso. Se la posticipazione si applica a una criterio di avviso, puoi includere anche filtri basati su etichette.
Per creare una posticipazione, esegui il 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
Prima di eseguire il comando precedente, sostituisci quanto segue:
- LIST_OF_POLICIES: le policy a cui si applica il posticipo. Se specifichi più progetti, separali con una virgola.
- PROJECT_ID: l'identificatore del progetto. Per le configurazioni di App Hub, seleziona il progetto host di App Hub o il progetto di gestione.
- DISPLAY_NAME: il nome da visualizzare nella console Google Cloud .
- START_TIME: l'ora di inizio.
END_TIME : l'ora di fine. Il valore deve essere successivo all'ora di inizio di almeno un minuto.
Per l'ora di inizio e di fine, devi rispettare le regole di formattazione ISO 8601. Tuttavia, puoi specificare tempi assoluti o relativi. L'esempio seguente specifica gli orari assoluti. Per avviare una posticipazione di 30 minuti dall'ora corrente, utilizza
--start-time="+PTM30M".FILTER: (Facoltativo) È possibile definire un filtro basato su etichette quando il rinvio si applica a un criterio di avviso. Il filtro, che può includere etichette di risorse, metriche e metadati, applica la sospensione agli avvisi con etichette corrispondenti. Quando la criterio di avviso è basata su PromQL, il filtro non può utilizzare le etichette dei metadati. Per saperne di più, consulta la pagina di riferimento di
gcloud monitoring snoozes create.
Ad esempio, il seguente comando crea una posticipazione per una criterio di avviso con ID "12345". L'intervallo di tempo della posticipazione va dal 1° marzo 2025 al 7 marzo 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
L'esempio precedente crea la seguente posticipazione in 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"
}
In caso di esito positivo, la risposta a questo comando è simile alla seguente:
Created snooze [projects/my-project/snoozes/778899]
Il nome di una criterio di avviso non viene visualizzato nella console Google Cloud . Per determinare il nome di una criterio di avviso, esegui una delle seguenti operazioni:
- Esegui il comando
gcloud monitoring policies list. I dati di risposta di questo comando includono il nome delle policy di avviso. - Visualizza la rappresentazione JSON di un criterio di avviso. Puoi scaricare la rappresentazione JSON nel tuo sistema locale utilizzando un'opzione nella pagina Dettagli policy.
REST
L'API Cloud Monitoring consente di creare un posticipo i cui criteri elencano fino a 16 policy di avviso. Se il posticipo si applica a unacriterio di avvisoo, puoi includere anche filtri basati su etichette.
Per creare un posticipo, richiama il metodo snoozes.create inviando una richiesta POST all'endpoint Snooze.
Devi fornire un oggetto 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
Nell'espressione precedente, PROJECT_ID è una variabile di ambiente che memorizza l'ID progetto. Per le configurazioni di App Hub, seleziona il progetto host o il progetto di gestione di App Hub.
Il metodo restituisce un oggetto snooze. Il campo "name", che include l'ID di posticipo generato da Monitoring, è l'unica differenza tra l'oggetto restituito e i contenuti di 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 posticipi ricorrenti
Per creare posticipi che si verificano a intervalli ricorrenti, puoi scrivere uno script che crea un posticipo per una criterio di avviso. Poi, utilizza un programma di pianificazione dei job come
cron o Cloud Scheduler per eseguire lo script in base alla pianificazione
richiesta.
Elenca posticipazioni
Quando crei un posticipo, questo viene aggiunto al record storico dei posticipi per il tuo progetto. Questo record mostra i posticipi scaduti, attivi e imminenti. Non puoi rimuovere voci da questo record, ovvero non puoi eliminare un posticipo. Tuttavia, da questa visualizzazione puoi mostrare i dettagli di un posticipo ed eseguire azioni come la modifica o la copia del posticipo.
Console
Per visualizzare un elenco di posticipi, segui questi passaggi:
-
Nella Google Cloud console, vai alla pagina notifications Avvisi:
Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Monitoring.
- Nella barra degli strumenti della console Google Cloud , seleziona il tuo progetto Google Cloud . Per le configurazioni di App Hub, seleziona il progetto host o il progetto di gestione di App Hub.
Fai clic su Visualizza tutte le sospensioni nel riquadro Sospensione.
La pagina Posticipa mostra un elenco dei posticipi e una sequenza temporale che mostra graficamente i posticipi passati, imminenti e attivi.
- Per modificare, copiare, annullare o terminare un posticipo, utilizza il menu more_vert Altre opzioni per il posticipo. Lo stato di sospensione determina le opzioni disponibili.
- Per elencare tutte le posticipazioni, attiva Mostra posticipazioni passate. Per impostazione predefinita, vengono elencati solo i posticipi attivi e imminenti.
- Per modificare il periodo di visualizzazione della tabella Cronologia, utilizza il menu Intervallo di tempo. Per impostazione predefinita, la tabella mostra i dati per l'ora successiva; tuttavia, puoi modificare questo campo per specificare intervalli di tempo passati o futuri. Le posticipazioni scadute vengono conservate per 13 mesi.
- Per visualizzare i dettagli di un posticipo specifico, fai clic su Visualizza dettagli.
- Per visualizzare un riepilogo dei rinvii attivi, posiziona il puntatore sull'area ombreggiata della riga Attivo nella tabella Cronologia. Il tooltip mostra le informazioni di riepilogo.
- Per visualizzare una rappresentazione grafica dei posticipi attivi, espandi la riga Attivo della tabella Cronologia.
gcloud
Per elencare i posticipi nel progetto corrente, esegui il comando gcloud monitoring snoozes list:
gcloud monitoring snoozes list --project=PROJECT_ID OPTIONAL_FLAGS
Prima di eseguire il comando precedente, sostituisci quanto segue:
- PROJECT_ID: l'identificatore del progetto. Per le configurazioni di App Hub, seleziona il progetto host di App Hub o il progetto di gestione.
- OPTIONAL_FLAGS: per informazioni sui flag facoltativi, consulta la pagina di riferimento
gcloud monitoring snoozes list.
La risposta a questo comando è un elenco di nomi di posticipi nel progetto,
formattato come YAML. Ad esempio, la risposta a questo comando per il progettoGoogle Cloud con ID my-project è una singola voce:
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
Per elencare i dettagli di una specifica sospensione, esegui il comando gcloud monitoring snoozes describe:
gcloud monitoring snoozes describe NAME --project=PROJECT_ID
Ad esempio, per visualizzare i dettagli del posticipo con il nome
projects/my-project/snoozes/778899, esegui questo comando:
gcloud monitoring snoozes describe projects/my-project/snoozes/778899 --project=PROJECT_ID
Se fornisci un NAME non valido a un comando describe, la risposta contiene un codice di errore 500 e il seguente messaggio:
Internal error encountered. Please retry after a few seconds. If internal errors persist, contact support at https://cloud.google.com/support/docs.
REST
Per elencare tutti i posticipi che appartengono a un progetto Google Cloud , richiama il metodo snoozes.list:
curl -H "Authorization: Bearer $ACCESS_TOKEN" \
https://monitoring.googleapis.com/v3/projects/${PROJECT_ID}/snoozes
Nell'espressione precedente, PROJECT_ID è una variabile di ambiente che memorizza l'ID progetto. Per le configurazioni di App Hub, seleziona il progetto host o il progetto di gestione di App Hub.
Il metodo restituisce un elenco di oggetti snooze. Ad esempio, quando un progetto ha un posticipo, la risposta al comando snoozes.list è simile alla seguente:
{
"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"
}
Per ottenere informazioni su una posticipazione specifica, richiama il metodo snoozes.get e specifica l'ID progetto e l'ID posticipazione. Nella risposta precedente,
l'ID di posticipo è 2986663705844383744:
curl -H "Authorization: Bearer $ACCESS_TOKEN" \
https://monitoring.googleapis.com/v3/projects/${PROJECT_ID}/snoozes/${SNOOZE_ID}
Il metodo restituisce un singolo oggetto 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"
}
Modificare un posticipo
Puoi modificare il nome e il periodo di un posticipo imminente, nonché il nome e l'ora di fine di un posticipo attivo. Ad esempio, quando un periodo di manutenzione viene riprogrammato, potresti dover modificare una posticipazione.
Non puoi modificare una posticipazione passata, i criteri di una posticipazione o i filtri basati su etichette allegati a una posticipazione.
Se vuoi programmare un posticipo passato per un periodo di tempo futuro, copia il posticipo e applica le modifiche alla copia prima di selezionare Crea.
Console
Per modificare un posticipo:
-
Nella Google Cloud console, vai alla pagina notifications Avvisi:
Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Monitoring.
- Nella barra degli strumenti della console Google Cloud , seleziona il tuo progetto Google Cloud . Per le configurazioni di App Hub, seleziona il progetto host o il progetto di gestione di App Hub.
- Fai clic su Visualizza tutti i posticipi nel riquadro Posticipa.
- Nell'elenco dei posticipi, trova quello che vuoi modificare e seleziona Modifica posticipo nel menu more_vert Altre opzioni.
- Fai clic su Salva dopo aver completato le modifiche.
gcloud
Per modificare una posticipazione, esegui il comando gcloud monitoring snoozes update. Puoi aggiornare il nome visualizzato, l'ora di inizio e l'ora di fine:
gcloud monitoring snoozes update NAME --project=PROJECT_ID OPTIONAL_FLAGS
Prima di eseguire il comando precedente, sostituisci quanto segue:
- NAME: il nome della posticipazione.
- PROJECT_ID: l'identificatore del progetto. Per le configurazioni di App Hub, seleziona il progetto host o il progetto di gestione di App Hub.
- OPTIONAL_FLAGS: per informazioni sui flag facoltativi, consulta la pagina di riferimento di
gcloud monitoring snoozes update.
Ad esempio, per modificare il nome visualizzato del posticipo con il nome
projects/my-project/snoozes/778899, esegui questo comando:
gcloud monitoring snoozes update projects/my-project/snoozes/778899 --display-name="Maintenance Week" --project=PROJECT_ID
REST
Per modificare una sospensione esistente, richiama il metodo snoozes.patch inviando una richiesta PATCH all'endpoint Snooze.
Devi fornire l'oggetto snooze modificato e includere parametri di ricerca che identificano i campi modificati. Quando utilizzi curl, parametri di ricerca devono essere codificati nell'URL.
Per i posticipi imminenti, puoi modificare il nome e il periodo. Per i posticipi attivi, puoi modificare il nome e l'ora di fine. Non puoi modificare i posticipi passati.
Per aggiornare displayName di un posticipo, crea un file JSON,
my-updated-snooze.json, che descrive l'oggetto posticipo e aggiorna il
nome visualizzato. Quindi, esegui il comando seguente:
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
Nell'espressione precedente:
PROJECT_IDè una variabile di ambiente che memorizza l'ID del tuo progetto. Per le configurazioni di App Hub, seleziona il progetto host o il progetto di gestione di App Hub.SNOOZE_IDè una variabile di ambiente che memorizza l'ID della posticipazione.
Il metodo restituisce un oggetto snooze identico al
contenuto del file 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"
}
Termina o annulla una ripetizione
Se vuoi ricevere notifiche per le risorse che corrispondono ai criteri specificati in una posticipazione attiva, termina la posticipazione. Ad esempio, quando la manutenzione pianificata viene completata più rapidamente del previsto, potresti voler terminare un posticipo.
Se hai una posticipazione imminente che non vuoi più, annullala. L'operazione di annullamento imposta la durata su zero e fa sì che la posticipazione passi allo stato Passato.
Console
Per terminare una posticipazione attiva o annullarne una imminente:
-
Nella Google Cloud console, vai alla pagina notifications Avvisi:
Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Monitoring.
- Nella barra degli strumenti della console Google Cloud , seleziona il tuo progetto Google Cloud . Per le configurazioni di App Hub, seleziona il progetto host o il progetto di gestione di App Hub.
- Fai clic su Visualizza tutti i posticipi nel riquadro Posticipa.
Nell'elenco delle posticipazioni, individua quella che vuoi terminare o annullare, quindi esegui una delle seguenti operazioni:
- Per terminare una posticipazione attiva, seleziona Termina ora nel menu more_vert Altre opzioni.
- Per annullare una posticipazione imminente, seleziona Annulla posticipo nel menu more_vert Altre opzioni.
gcloud
Per terminare una posticipazione attiva o annullarne una imminente, esegui il comando gcloud monitoring snoozes cancel:
gcloud monitoring snoozes cancel NAME --project=PROJECT_ID
Prima di eseguire il comando precedente, sostituisci quanto segue:
- NAME: il nome della posticipazione.
- PROJECT_ID: l'identificatore del progetto. Per le configurazioni di App Hub, seleziona il progetto host di App Hub o il progetto di gestione.
Ad esempio, per annullare la posticipazione con il nome
projects/my-project/snoozes/778899, esegui il seguente comando:
gcloud monitoring snoozes cancel projects/my-project/snoozes/778899 --project=PROJECT_ID
REST
Per terminare una posticipazione attiva, modificala e imposta l'ora di fine sull'ora attuale. Per saperne di più, vedi Modificare un posticipo.
Per annullare una posticipazione imminente, modifica la posticipazione e imposta l'ora di fine sull'ora di inizio della posticipazione. L'ora di inizio deve essere un orario futuro. Per saperne di più, vedi Modificare un posticipo.
Copia un posticipo
Quando vuoi utilizzare un posticipo esistente come template per un altro posticipo, creane una copia. Quando copi un posticipo, l'editor di posticipo si apre con tutti i campi, tranne l'ora di inizio, impostati sui valori del posticipo originale. Puoi modificare tutti i campi prima di fare clic su Crea.
Per copiare un posticipo utilizzando la console, segui questi passaggi:
-
Nella Google Cloud console, vai alla pagina notifications Avvisi:
Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Monitoring.
- Nella barra degli strumenti della console Google Cloud , seleziona il tuo progetto Google Cloud . Per le configurazioni di App Hub, seleziona il progetto host di App Hub o il progetto di gestione.
- Fai clic su Visualizza tutti i posticipi nel riquadro Posticipa.
- Nell'elenco dei posticipi, trova quello che vuoi modificare e poi seleziona Copia posticipo nel menu more_vert Altre opzioni.
- Applica le modifiche alla copia e poi fai clic su Crea.
Passaggi successivi
Per una panoramica degli avvisi, consulta Panoramica degli avvisi.
Per informazioni sulla latenza delle notifiche e su come le scelte dei parametri di una criterio di avviso influiscono sull'invio delle notifiche, consulta Comportamento delle policy di avviso basate su metriche.
Per informazioni sugli avvisi, consulta i seguenti documenti: