Questo documento descrive come creare e gestire le posticipazioni. Una posticipazione impedisce a Cloud Monitoring di creare incidenti e di inviare notifiche durante un periodo di tempo specifico. Ogni posticipazione specifica le risorse a cui si applica.
Per una panoramica concettuale, consulta Posticipare notifiche e avvisi.
Per creare e gestire le posticipazioni, puoi utilizzare la console Google Cloud o l'API Cloud Monitoring.
Prima di iniziare
Assicurati di disporre delle autorizzazioni richieste:
-
Per ottenere le autorizzazioni necessarie per visualizzare e modificare le posticipazioni utilizzando la console Google Cloud, chiedi all'amministratore di concederti il ruolo IAM Editor Monitoring (
roles/monitoring.editor
) per il tuo progetto. Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso.Potresti anche essere in grado di ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.
-
Per ottenere le autorizzazioni necessarie per visualizzare e modificare le posticipazioni utilizzando l'API Cloud Monitoring, chiedi all'amministratore di concederti il ruolo IAM Editor posticipazione Monitoring (
roles/monitoring.snoozeEditor
) per il tuo progetto. Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso.Potresti anche essere in grado di 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 di API Cloud Monitoring in questo documento:
Crea una variabile di ambiente,
PROJECT_ID
, in cui inserire 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 hanno funzionato all'improvviso segnalano che il tuo account non è autenticato, invia di nuovo il comando.
Crea un posticipo
Per impedire ai criteri di avviso di creare incidenti e inviare notifiche, crea una posticipazione.
Puoi creare una posticipazione utilizzando la console Google Cloud, gcloud CLI o l'API Cloud Monitoring.
console
-
Nel pannello di navigazione della console Google Cloud, seleziona Monitoring e poi notifications Avvisi:
- Per creare una posticipazione da un incidente aperto:
- Nel riquadro Incidenti della pagina Avvisi, trova l'incidente e fai clic su Riepilogo incidenti.
- Nella pagina Dettagli incidente, fai clic su Posticipa e seleziona la durata del 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 orario specifico o avviare la posticipazione quando la crei.
- Inserisci la Durata. Il valore di questo campo determina la durata della posticipazione.
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 una posticipazione.
Una volta completata la sezione Criteri di posticipazione, nel riquadro Crea posticipazione vengono elencati gli incidenti passati che corrispondono ai criteri.
Fai clic su Crea.
API Cloud Monitoring
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
Il metodo restituisce un oggetto snooze
. Il campo "name"
, che include l'ID di posticipazione generato da Monitoring,
è 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 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
Nel comando precedente, end-time
deve essere successivo di almeno un minuto
rispetto a start-time
. Devi seguire le regole di formattazione ISO 8601; tuttavia, puoi specificare tempi assoluti o relativi. L'esempio seguente specifica i tempi assoluti. Per avviare un posticipo 30 minuti dopo l'ora attuale, utilizza
--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". Il posticipo si applica a due criteri di avviso e si estende sull'intervallo di tempo dal 1° 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 posticipazione 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", ] } }
Se l'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, esegui una delle seguenti operazioni:
- Esegui il comando
gcloud alpha monitoring policies list
. I dati di risposta di questo comando includono il nome dei tuoi 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 criterio.
Creare posticipazioni ricorrenti
Per creare posticipazioni su intervalli ricorrenti, puoi scrivere uno script
che crei una posticipazione per un criterio di avviso. Quindi, utilizza uno scheduler dei job come cron
o Cloud Scheduler per eseguire lo script in base alla pianificazione richiesta.
Elenco posticipazioni
Quando crei una posticipazione, questa viene aggiunta al registro storico delle posticipazioni del tuo progetto. Questo record mostra le posticipazioni scadute, attive e future. Non puoi rimuovere voci da questo record, ovvero non puoi eliminare una posticipazione. Tuttavia, in questa visualizzazione puoi mostrare i dettagli della posticipazione e compiere azioni come modificare o copiare la posticipazione.
console
Per visualizzare un elenco di posticipazioni:
-
Nel pannello di navigazione della console Google Cloud, seleziona Monitoring e poi notifications Avvisi:
Fai clic su Visualizza tutti i posticipazioni nel riquadro Posticipa.
La pagina Posticipa mostra un elenco di posticipazioni e una sequenza temporale che mostra in modo grafico le posticipazioni passate, future e attive.
- Per modificare, copiare, annullare o terminare una posticipazione, utilizza il menu more_vert Altre opzioni per la posticipazione. Lo stato di posticipazione determina le opzioni disponibili.
- Per elencare tutte le posticipazioni, attiva Mostra posticipazioni passate. Per impostazione predefinita, sono elencati solo le posticipazioni attive e future.
- Per modificare il periodo di visualizzazione della tabella Sequenza temporale, 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 una posticipazione specifica, fai clic su Visualizza dettagli.
- Per visualizzare un riepilogo delle posticipazioni attive, posiziona il puntatore sull'area ombreggiata della riga Attivo nella tabella Sequenza temporale. La descrizione comando mostra le informazioni di riepilogo.
- Per visualizzare una rappresentazione grafica delle posticipazioni attive, espandi la riga Attiva della tabella Sequenza temporale.
API Cloud Monitoring
Per elencare tutte le posticipazioni 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
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, richiama il
metodo snoozes.get
e specifica l'ID progetto e l'ID posticipazione. Nella risposta precedente,
l'ID di 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 sui flag facoltativi, consulta la pagina di riferimento di gcloud monitoring snoozes list
.
La risposta a questo comando è un elenco di nomi di posticipazioni nel progetto,
formattate come YAML. Ad esempio, la risposta a questo comando per il progetto Google Cloud con ID my-project
è una voce singola:
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 posticipazione con nome projects/my-project/snoozes/98765
, esegui questo comando:
gcloud monitoring snoozes describe projects/my-project/snoozes/98765
Se fornisci un valore 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 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 precedente o i criteri di una qualsiasi posticipazione. Tuttavia, se vuoi pianificare una posticipazione precedente per un periodo di tempo futuro, copia la posticipazione e applica le modifiche alla copia prima di selezionare Crea.
console
Per modificare una posticipazione:
-
Nel pannello di navigazione della console Google Cloud, seleziona Monitoring e poi notifications Avvisi:
- Fai clic su Visualizza tutti i posticipazioni nel riquadro Posticipa.
- Nell'elenco delle posticipazioni, individua quella che vuoi modificare, quindi seleziona Modifica posticipazione nel menu Altre opzioni more_vert.
- Fai clic su Salva dopo aver completato le modifiche.
API Cloud Monitoring
Per modificare una posticipazione esistente, richiama 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 modificati. Quando utilizzi curl,
parametri di ricercay devono essere codificati nell'URL.
Per le posticipazioni future, puoi modificare il nome e la mestruazione. Per le posticipazioni attive, puoi modificare il nome e l'ora di fine. Non puoi modificare le posticipazioni precedenti.
Per aggiornare il valore displayName
di una posticipazione, crea un file JSON (my-updated-snooze.json
) che descriva l'oggetto Posticipa e aggiorni il
nome visualizzato. Quindi, esegui questo comando:
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 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 OPTIONAL_FLAGS
Per un elenco delle opzioni per il comando update
, 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/98765
, esegui questo comando:
gcloud monitoring snoozes update projects/my-project/snoozes/98765 --display-name="March Maintenance"
Terminare o annullare una posticipazione
Se vuoi ricevere notifiche per le risorse che corrispondono ai criteri specificati in un posticipo attivo, termina la posticipazione. Ad esempio, quando la manutenzione pianificata viene completata più rapidamente del previsto, potresti voler terminare una posticipazione.
Se hai una posticipazione imminente che non vuoi più, annullala. L'operazione di annullamento imposta la durata su zero e determina la transizione allo stato Passato.
console
Per terminare una posticipazione attiva o per annullare una posticipazione imminente:
-
Nel pannello di navigazione della console Google Cloud, seleziona Monitoring e poi notifications Avvisi:
- Fai clic su Visualizza tutti i posticipazioni nel riquadro Posticipa.
Nell'elenco delle posticipazioni, trova quella che vuoi terminare o annullare, quindi esegui una delle seguenti operazioni:
- Per terminare un posticipo attivo, seleziona Termina adesso nel menu more_vert Altre opzioni.
- Per annullare un posticipazione imminente, seleziona Annulla posticipazione nel menu more_vert Altre opzioni.
API Cloud Monitoring
Per terminare una posticipazione attiva, modifica la posticipazione e imposta l'ora di fine sull'ora attuale. Per ulteriori informazioni, vedi Modificare 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 una data futura. Per ulteriori informazioni, vedi Modificare una posticipazione.
Interfaccia a riga di comando gcloud
Per terminare una posticipazione attiva o per annullare una posticipazione imminente, esegui il comando gcloud monitoring snoozes cancel
:
gcloud monitoring snoozes cancel NAME
Ad esempio, per annullare la posticipazione con il nome projects/my-project/snoozes/98765
, esegui questo comando:
gcloud monitoring snoozes cancel projects/my-project/snoozes/98765
Copiare un posticipo
Quando vuoi usare una posticipazione esistente come modello per un'altra posticipazione, crea una copia. Quando copi una posticipazione, l'editor del posticipo si apre con tutti i campi, tranne l'ora di inizio impostata sui valori della posticipazione originale. Puoi modificare tutti i campi prima di fare clic su Crea.
Per copiare una posticipazione utilizzando la console:
-
Nel pannello di navigazione della console Google Cloud, seleziona Monitoring e poi notifications Avvisi:
- Fai clic su Visualizza tutti i posticipazioni nel riquadro Posticipa.
- Nell'elenco delle posticipazioni, individua quella che vuoi modificare, quindi seleziona Copia posticipazione nel menu Altre opzioni di more_vert.
- Applica le modifiche alla copia e fai clic su Crea.
Passaggi successivi
Per una panoramica degli avvisi, vedi Panoramica degli avvisi.
Per informazioni sulla latenza delle notifiche e su come le scelte per i parametri di un criterio di avviso influiscono sul momento in cui vengono inviate le notifiche, consulta Comportamento dei criteri di avviso basati su metriche.
Per informazioni sugli incidenti, consulta i seguenti documenti: