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, consulta Posticipa notifiche e avvisi.
Questa funzionalità è supportata solo per i progetti Google Cloud . Per le configurazioni di App Hub, seleziona il progetto host o il progetto di gestione di App Hub.
Prima di iniziare
Completa i seguenti passaggi nel progetto Google Cloud che archivia la policy 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 Controlla 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 improvvisamente segnalano che non hai eseguito l'autenticazione, esegui di nuovo questo comando.
Crea un posticipo
Per impedire alle policy di avviso di creare avvisi e inviare notifiche, crea una posticipazione. Quando limiti un posticipo a una singola policy di avviso, il posticipo 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 completi per creare la posticipazione è preconfigurata per elencare la criterio di avviso. La finestra di dialogo consente anche di selezionare le etichette, che vengono associate alla posticipazione come filtri basati su etichette.
Se inizi dalla pagina Avvisi, puoi creare un posticipo i cui criteri elencano fino a 16 policy di avviso. Tuttavia, non puoi collegare filtri basati su etichette alla posticipazione, anche se i criteri di posticipazione elencano una criterio di avviso.
Per creare una posticipazione da 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, quindi seleziona la durata della posticipazione.
(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 etichette dei metadati.
In genere, i posticipi si applicano a tutti gli avvisi creati da una criterio di avviso. I filtri ti consentono di applicare la posticipazione agli avvisi le cui etichette corrispondono a quelle nel filtro.
Fai clic su Posticipa. La posticipazione ora si applica alla criterio di avviso che ha creato l'avviso.
Per creare una posticipazione dalla pagina Avvisi, 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.
- Nella pagina Avvisi, fai clic su Crea posticipo.
- Inserisci un nome descrittivo per il posticipo. 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 la posticipazione.
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 posticipazione, il riquadro Crea posticipazione elenca gli avvisi precedenti che corrispondono ai criteri.
Fai clic su Crea.
gcloud
gcloud CLI 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 un posticipo, 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 la posticipazione. Se specifichi più progetti, separali con una virgola.
- PROJECT_ID: l'identificatore del progetto. Per le configurazioni di App Hub, seleziona il progetto host o il progetto di gestione di App Hub.
- 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 di almeno un minuto rispetto all'ora di inizio.
Per gli orari di inizio e di fine, devi seguire le regole di formattazione ISO 8601. Tuttavia, puoi specificare tempi assoluti o relativi. L'esempio seguente specifica gli orari assoluti. Per avviare una posticipazione 30 minuti dopo l'ora corrente, utilizza
--start-time="+PTM30M".FILTER: (Facoltativo) È possibile definire un filtro basato su etichette quando la posticipazione si applica a una criterio di avviso. Il filtro, che può includere etichette di risorse, metriche e metadati, applica la posticipazione agli avvisi con etichette corrispondenti. Quando la criterio di avviso è basata su PromQL, il filtro non può utilizzare le etichette dei metadati. Per ulteriori informazioni, consulta la pagina di riferimento di
gcloud monitoring snoozes create.
Ad esempio, il seguente comando crea uno snooze 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 una criterio di avviso. Puoi scaricare la rappresentazione JSON sul 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 la posticipazione si applica a una criterio di avviso, puoi includere anche filtri basati su etichette.
Per creare una posticipazione, 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
Puoi configurare Cloud Scheduler per richiamare il metodo projects.snoozes.create dell'API Cloud Monitoring.
Ad esempio, se hai periodi di manutenzione regolari, puoi utilizzare questo approccio per creare posticipi per questi periodi.
Elenca posticipazioni
Quando crei un posticipo, questo viene aggiunto alla cronologia dei posticipi del progetto. Questo record mostra le ripetizioni scadute, attive e imminenti. Non puoi rimuovere voci da questo record, ovvero non puoi eliminare una posticipazione. Tuttavia, da questa visualizzazione puoi visualizzare 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 tutti i post posticipati nel riquadro Posticipa.
La pagina Posticipa mostra un elenco di posticipi e una sequenza temporale che visualizza graficamente i posticipi passati, imminenti e attivi.
- Per modificare, copiare, annullare o terminare una posticipazione, utilizza il menu more_vert Altre opzioni della posticipazione. Lo stato di posticipo 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, ma 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 una posticipazione specifica, fai clic su Visualizza dettagli.
- Per visualizzare un riepilogo dei posticipi 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 o il progetto di gestione di App Hub.
- OPTIONAL_FLAGS: per informazioni sui flag facoltativi, consulta la pagina di riferimento di
gcloud monitoring snoozes list.
La risposta a questo comando è un elenco di nomi di posticipi nel progetto, formattati 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 sospensione specifica, esegui il comando gcloud monitoring snoozes describe:
gcloud monitoring snoozes describe NAME --project=PROJECT_ID
Ad esempio, per visualizzare i dettagli della posticipazione con 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 appartenenti 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 una posticipazione, 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 uno snooze specifico, richiama il metodo snoozes.get e specifica l'ID progetto e l'ID snooze. 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"
}
Modifica un posticipo
Puoi modificare il nome e il periodo di una posticipazione imminente, nonché il nome e l'ora di fine di una posticipazione attiva. 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 associati 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 una posticipazione:
-
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 post posticipati nel riquadro Posticipa.
- Nell'elenco dei posticipi, trova quello che vuoi modificare, quindi 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 della posticipazione 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 un'interruzione 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 in 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 le ripetizioni passate.
Per aggiornare il displayName di una sospensione, crea un file JSON, my-updated-snooze.json, che descrive l'oggetto di sospensione 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 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 ai contenuti 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 un posticipo attivo, termina il posticipo. Ad esempio, quando la manutenzione pianificata viene completata più rapidamente del previsto, potresti voler terminare un posticipo.
Se hai una ripetizione 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 post posticipati nel riquadro Posticipa.
Nell'elenco delle ripetizioni, trova 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 posticipazione 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 o il progetto di gestione di App Hub.
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 corrente. Per saperne di più, consulta Modifica una posticipazione.
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ù, consulta Modifica una posticipazione.
Copia un posticipo
Quando vuoi utilizzare un posticipo esistente come modello per un altro posticipo, creane una copia. Quando copi una posticipazione, si apre l'editor di posticipazione con tutti i campi, ad eccezione dell'ora di inizio, impostati sui valori della posticipazione 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 o il progetto di gestione di App Hub.
- Fai clic su Visualizza tutti i post posticipati nel riquadro Posticipa.
- Nell'elenco dei posticipi, trova quello che vuoi modificare, quindi 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: