Questo documento descrive come creare e gestire le posticipazioni. La posticipazione impedisce a Cloud Monitoring di creare incidenti ed emettere notifiche durante un determinato periodo di tempo. Ogni posticipazione specifica le risorse a cui si applica.
Per una panoramica concettuale, consulta Posticipare notifiche e incidenti.
Per creare e gestire le soppressioni, utilizza la console Google Cloud o l'API Cloud Monitoring.
Prima di iniziare
Assicurati di disporre delle autorizzazioni necessarie:
-
Per ottenere le autorizzazioni necessarie per visualizzare e modificare le sospensioni utilizzando la console Google Cloud, chiedi all'amministratore di concederti il ruolo IAM Editor di monitoraggio (
roles/monitoring.editor
) nel tuo progetto. Per saperne di più sulla concessione dei ruoli, consulta Gestire 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 le sospensioni utilizzando l'API Cloud Monitoring, chiedi all'amministratore di concederti il ruolo IAM Editor di sospensioni monitoraggio (
roles/monitoring.snoozeEditor
) nel progetto. Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.Potresti anche riuscire a ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.
Per ulteriori informazioni 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 progetto Google 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 suonino improvvisamente che non hai eseguito l'autenticazione, esegui di nuovo questo comando.
Creare una posticipazione
Per impedire ai criteri di avviso di creare incidenti e inviare notifiche, crea una posticipazione.
Puoi creare una posticipazione utilizzando la console Google Cloud, l'interfaccia alla gcloud CLI'API Cloud Monitoring.
console
-
Nella console Google Cloud, vai alla pagina notifications Avvisi:
Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Monitoring.
- Per creare una posticipazione da un incidente aperto:
- Nel riquadro Incidenti della pagina Allerte, individua l'incidente e fai clic sul relativo Riepilogo incidente.
- Nella pagina Dettagli incidente, fai clic su Posticipa e seleziona la durata della posticipazione. Non puoi configurare altri campi.
In caso contrario:
- Nella pagina Avvisi, fai clic su Crea posticipazione.
- Inserisci un nome descrittivo per la posticipazione. Questo nome viene mostrato nella pagina Avvisi.
- Seleziona un'ora di inizio. Puoi inserire un'ora specifica o avviare la ripetizione quando viene creata.
- Inserisci la durata. Il valore di questo campo determina la durata della ripetizione.
Completa la sezione Criteri di posticipazione. Puoi utilizzare il menu Criteri di avviso per selezionare i criteri di avviso a cui si applica la posticipazione.
Puoi aggiungere fino a 16 criteri di avviso a un posticipo.
Dopo aver completato la sezione Criteri di posticipazione, il riquadro Crea posticipazione elenca gli incidenti passati che corrispondono ai criteri.
Fai clic su Crea.
API Cloud Monitoring
Per creare una posticipazione, invoca 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
Il metodo restituisce un oggetto snooze
. Il campo "name"
,
che include l'ID posticipazione generato da Monitoraggio,
è l'unica differenza tra l'oggetto restituito e i contenuti di my-snooze.json
:
{
"name": "projects/my-project/snoozes/2986666341878464512",
"criteria": {
"policies": [
"projects/my-project/alertPolicies/787884840895011889"
]
},
"interval": {
"startTime": "2022-11-12T19:00:20Z",
"endTime": "2022-11-12T19:05:20Z"
},
"displayName": "Snooze2"
}
Interfaccia a riga di comando gcloud
Per creare una ripetizione, 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
Nel comando precedente, end-time
deve essere almeno un minuto più tardi rispetto a start-time
. Devi seguire le regole di formattazione ISO 8601, ma puoi specificare orari assoluti o relativi. L'esempio seguente specifica i tempi assoluti. Per avviare una ripetizione di 30 minuti dall'ora corrente, usa
--start-time="+PTM30M"
.
Se specifichi più progetti, separali con una virgola.
Ad esempio, il seguente comando crea una posticipazione con il nome visualizzato "Settimana di manutenzione". La posticipazione si applica a due criteri di avviso e copre l'intervallo di tempo dal 1° marzo al 7 marzo:
gcloud monitoring snoozes create --display-name="Maintenance Week" \ --criteria-policies="projects/my-project/alertPolicies/12345,projects/my-project/alertPolicies/23451" \ --start-time="2023-03-01T03:00:00.0-0500" \ --end-time="2023-03-07T23:59:59.5-0500"
L'esempio precedente crea la seguente ripetizione in my-project
:
{ "name": "projects/my-project/snoozes/98765", "displayName": "Maintenance Week", "interval": { "startTime": "2023-03-01T08:00:00Z", "endTime": "2023-03-08T04:59:59Z" }, "criteria": { "policies": [ "projects/my-project/alertPolicies/12345", "projects/my-project/alertPolicies/23451", ] } }
In caso di esito positivo, la risposta a questo comando è simile alla seguente:
Created snooze [projects/my-project/snoozes/98765]
Il nome di un criterio di avviso non viene visualizzato nella console Google Cloud. Per determinare il nome di un criterio di avviso, svolgi una delle seguenti operazioni:
- Esegui il comando
gcloud alpha monitoring policies list
. I dati di risposta di questo comando includono il nome dei criteri di avviso. - Visualizza la rappresentazione JSON di un criterio di avviso. Puoi scaricare la rappresentazione JSON sul tuo sistema locale utilizzando un'opzione nella pagina Dettagli criteri.
Creare posticipazioni ricorrenti
Per creare posticipazioni che si verificano a intervalli ricorrenti, puoi scrivere uno script
che crea una posticipazione per un criterio di avviso. Quindi, utilizza un programma di pianificazione dei job come cron
o Cloud Scheduler per eseguire lo script secondo la pianificazione richiesta.
Elenca le posticipazioni
Quando crei una posticipazione, questa viene aggiunta al record storico delle posticipazioni per il tuo progetto. Questo record mostra le spostamenti in un secondo momento scaduti, attivi e imminenti. Non puoi rimuovere voci da questo record, ovvero non puoi eliminare un posticipo. Tuttavia, da questa visualizzazione puoi visualizzare i dettagli di una posticipazione e puoi eseguire azioni come modificarla o copiarla.
console
Per visualizzare un elenco di post in attesa:
-
Nella console Google Cloud, vai alla pagina notifications Avvisi:
Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Monitoring.
Fai clic su Visualizza tutte le posticipazioni nel riquadro Posticipa.
La pagina Posticipa mostra un elenco di posticipazioni e una sequenza temporale che visualizza graficamente le posticipazioni passate, imminenti e attive.
- Per modificare, copiare, annullare o terminare una ripetizione, usa il menu more_vert Altre opzioni per la ripetizione. Lo stato di posticipazione determina le opzioni disponibili.
- Per elencare tutte le posticipazioni, attiva Mostra posticipazioni passate. Per impostazione predefinita, vengono elencate solo le posticipazioni attive e imminenti.
- Per modificare il periodo di visualizzazione della tabella Sequenza, utilizza il menu Intervallo di tempo. Per impostazione predefinita, la tabella mostra i dati relativi all'ora successiva. Tuttavia, puoi modificare questo campo per specificare intervalli di tempo passati o futuri. Le spostamenti in un secondo momento scaduti vengono conservati per 13 mesi.
- Per visualizzare i dettagli di una posticipazione specifica, fai clic su Visualizza dettagli.
- Per visualizzare un riepilogo delle spostamenti attivi, posiziona il cursore sull'area ombreggiata della riga Attivo nella tabella Spostamenti. La descrizione comando mostra le informazioni di riepilogo.
- Per visualizzare una rappresentazione grafica delle spostamenti nel tempo attivi, espandi la riga Attivo della tabella Cronologia.
API Cloud Monitoring
Per elencare tutte le spostamenti nel tempo che appartengono a un progetto Google Cloud, invoca il metodo
snoozes.list
:
curl -H "Authorization: Bearer $ACCESS_TOKEN" \ https://monitoring.googleapis.com/v3/projects/${PROJECT_ID}/snoozes
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:
{
"snoozes": [
{
"name": "projects/my-project/snoozes/2986663705844383744",
"criteria": {
"policies": [
"projects/my-project/alertPolicies/787884840895011889"
]
},
"interval": {
"startTime": "2022-11-08T19:00:20Z",
"endTime": "2022-11-08T19:05:20Z"
},
"displayName": "Snooze1"
}
]
}
Per ottenere informazioni su una posticipazione specifica, invoca il metodo
snoozes.get
e specifica l'ID progetto e l'ID posticipazione. Nella risposta precedente,
l'ID posticipazione è 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/2986663705844383744",
"criteria": {
"policies": [
"projects/my-project/alertPolicies/787884840895011889"
]
},
"interval": {
"startTime": "2022-11-08T19:00:20Z",
"endTime": "2022-11-08T19:05:20Z"
},
"displayName": "Snooze1"
}
Interfaccia a riga di comando gcloud
Per elencare le posticipazioni nel progetto corrente, esegui il comando
gcloud monitoring snoozes list
:
gcloud monitoring snoozes list OPTIONAL_FLAGS
Per informazioni sugli indicatori facoltativi, consulta la pagina di riferimento gcloud monitoring snoozes list
.
La risposta a questo comando è un elenco di nomi di posticipazioni nel progetto,
formattato in YAML. Ad esempio, la risposta a questo comando per il progetto Google 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/98765
Per elencare i dettagli di una posticipazione specifica, esegui il comando
gcloud monitoring snoozes describe
:
gcloud monitoring snoozes describe NAME
Ad esempio, per visualizzare i dettagli della ripetizione con nomeprojects/my-project/snoozes/98765
, esegui il seguente comando:
gcloud monitoring snoozes describe projects/my-project/snoozes/98765
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.
Modificare una posticipazione
Puoi modificare il nome e il periodo di una spostamento programmata imminente, nonché il nome e l'ora di fine di una spostamento programmata attiva. Ad esempio, quando un periodo di manutenzione viene riprogrammato, potrebbe essere necessario modificare una posticipazione.
Non puoi modificare una posticipazione passata o i criteri di una posticipazione. Tuttavia, se vuoi pianificare una ripetizione passata per un periodo di tempo futuro, copia la ripetizione e applica le modifiche alla copia prima di selezionare Crea.
console
Per modificare una ripetizione:
-
Nella console Google Cloud, vai alla pagina notifications Avvisi:
Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Monitoring.
- Fai clic su Visualizza tutte le posticipazioni nel riquadro Posticipa.
- Nell'elenco delle spostamenti, individua quello che vuoi modificare e poi seleziona Modifica posticipazione nel menu more_vert Altre opzioni.
- Fai clic su Salva dopo aver completato le modifiche.
API Cloud Monitoring
Per modificare una ripetizione esistente, invoca il metodo snoozes.patch
inviando una richiesta PATCH
all'endpoint Snooze
.
Devi fornire l'oggetto snooze
rivisto e includere parametri di ricerca che identificano i campi da modificare. Quando utilizzi curl,
parametri di ricerca devono essere codificati in URL.
Per le spostamenti programmati futuri, puoi modificare il nome e il periodo. Per le spostamenti attivi, puoi modificare il nome e l'ora di fine. Non puoi modificare le posticipazioni passate.
Per aggiornare il displayName
di una posticipazione, crea un file JSON,my-updated-snooze.json
, che descriva l'oggetto posticipazione 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
Il metodo restituisce un oggetto snooze
identico ai contenuti del file my-updated-snooze.json
:
{
"name": "projects/my-project/snoozes/2986665388391530496",
"criteria": {
"policies": [
"projects/my-project/alertPolicies/7164333552684403347"
]
},
"interval": {
"startTime": "2022-11-08T22:26:05Z",
"endTime": "2022-11-08T22:31:05Z"
},
"displayName": "Updated snooze name"
}
Interfaccia a riga di comando gcloud
Per modificare una ripetizione, 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 OPTIONAL_FLAGS
Per un elenco di opzioni per il comando update
, consulta la pagina di riferimento di gcloud monitoring snoozes update
.
Ad esempio, per cambiare il nome visualizzato della ripetizione con il nome
projects/my-project/snoozes/98765
, esegui il seguente comando:
gcloud monitoring snoozes update projects/my-project/snoozes/98765 --display-name="March Maintenance"
Terminare o annullare 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 una posticipazione.
Se hai una spostamento programmata imminente che non vuoi più, annullala. L'operazione di annullamento imposta la durata su zero e comporta il passaggio della ripetizione allo stato Passato.
console
Per terminare una ripetizione attiva o annullare una ripetizione imminente:
-
Nella console Google Cloud, vai alla pagina notifications Avvisi:
Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Monitoring.
- Fai clic su Visualizza tutte le posticipazioni nel riquadro Posticipa.
Nell'elenco delle spostamenti, individua quello che vuoi terminare o annullare, quindi esegui una delle seguenti operazioni:
- Per terminare una ripetizione attiva, seleziona Termina ora nel menu more_vert Altre opzioni.
- Per annullare una sveglia posticipata imminente, seleziona Annulla posticipazione nel menu more_vert Altre opzioni.
API Cloud Monitoring
Per terminare una posticipazione attiva, modificala e imposta l'ora di fine sull'ora corrente. Per ulteriori informazioni, vedi Modificare una ripetizione.
Per annullare una posticipazione imminente, modificala e imposta l'ora di fine sull'ora di inizio della posticipazione. L'ora di inizio deve essere successiva a quella corrente. Per ulteriori informazioni, vedi Modificare una ripetizione.
Interfaccia a riga di comando gcloud
Per terminare una posticipazione attiva o annullare una posticipazione imminente, esegui il comando
gcloud monitoring snoozes cancel
:
gcloud monitoring snoozes cancel NAME
Ad esempio, per annullare la ripetizione con il nome
projects/my-project/snoozes/98765
, esegui il seguente comando:
gcloud monitoring snoozes cancel projects/my-project/snoozes/98765
Copiare una posticipazione
Quando vuoi utilizzare una ripetizione esistente come modello per un'altra ripetizione, creane una copia. Quando copi una ripetizione, viene aperto l'editor della ripetizione con tutti i campi, ad eccezione dell'ora di inizio, impostati sui valori della ripetizione originale. Puoi modificare tutti i campi prima di fare clic su Crea.
Per copiare una ripetizione utilizzando la console:
-
Nella console Google Cloud, vai alla pagina notifications Avvisi:
Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Monitoring.
- Fai clic su Visualizza tutte le posticipazioni nel riquadro Posticipa.
- Nell'elenco delle spostamenti, trova quello che vuoi modificare e poi seleziona Copia spostamento 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 relative ai parametri di un criterio di avviso influiscono sul momento in cui vengono inviate, consulta Comportamento dei criteri di avviso basati su metriche.
Per informazioni sugli incidenti, consulta i seguenti documenti: