Gestire gli avvisi per le policy di avviso basate su SQL

Un avviso è un record di quando la condizione di una criterio di avviso viene soddisfatta. In genere, Cloud Monitoring apre un avviso e invia una notifica quando viene soddisfatta la condizione del criterio di avviso. Tuttavia, gli avvisi non vengono creati nelle seguenti circostanze:

Per ogni avviso, Monitoring crea una pagina Dettagli avviso che ti consente di gestire l'avviso e che riporta le informazioni sull'avviso che possono aiutarti a risolvere il problema. Ad esempio, la pagina Dettagli avviso mostra elenchi di riepiloghi dei risultati delle query SQL e avvisi correlati.

Questo documento descrive come trovare gli avvisi. Descrive inoltre come utilizzare la pagina Dettagli avviso per gestire gli avvisi per le policy di avviso basate su SQL, che valutano i risultati di una query SQL eseguita sui dati di gruppi di voci di log.

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

Per ottenere le autorizzazioni necessarie per visualizzare e gestire gli avvisi, chiedi all'amministratore di concederti i seguenti ruoli IAM sul 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.

Visualizza avvisi

Per visualizzare gli avvisi nel tuo progetto, utilizza la console Google Cloud , gcloud CLI o l'API Monitoring.

Console Google Cloud

Per elencare gli avvisi nel tuo progetto Google Cloud :

  1. Nella Google Cloud console, vai alla pagina  Avvisi:

    Vai ad Avvisi

    Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Monitoring.

  2. 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.

    La pagina Avvisi mostra informazioni su policy di avviso, sospensioni e avvisi:

    • Il riquadro Riepilogo elenca il numero di avvisi aperti.
    • La tabella Avvisi mostra gli avvisi aperti più recenti. Per elencare gli avvisi più recenti nella tabella, inclusi quelli chiusi, fai clic su Mostra avvisi chiusi.
  3. Per visualizzare i dettagli di un avviso specifico, selezionalo nell'elenco.

    Viene visualizzata la pagina Dettagli avviso. Per saperne di più sulla pagina Dettagli avviso, consulta la sezione Esaminare un avviso di questo documento.

Trovare avvisi meno recenti

La tabella Avvisi nella pagina Avvisi mostra gli avvisi aperti più recenti. Per visualizzare gli avvisi meno recenti, esegui una delle seguenti operazioni:

  • Per scorrere le voci nella tabella Avvisi, fai clic su  Più recenti o  Meno recenti.

  • Per aprire una pagina che ti consente di elencare e filtrare gli avvisi, fai clic su Visualizza tutti gli avvisi. Si apre la pagina Avvisi. Da questa pagina, segui questi passaggi:

    • Mostra tutti gli avvisi, inclusi quelli chiusi. Per mostrare tutti gli avvisi, fai clic su Mostra avvisi chiusi.
    • Filtra avvisi. Per informazioni sull'aggiunta di filtri, consulta Filtrare gli avvisi.
    • Conferma o chiudi un avviso oppure posticipa la criterio di avviso. Per accedere a queste opzioni, fai clic su  Altre opzioni nella riga dell'avviso e seleziona un'opzione dal menu. Per saperne di più, consulta Gestire gli avvisi.

Filtra avvisi

Per limitare gli avvisi visualizzati nella tabella, aggiungi filtri. Se aggiungi più filtri, la tabella mostra solo gli avvisi che soddisfano tutti i filtri.

Per filtrare la tabella degli avvisi:

  1. Nella pagina Avvisi, fai clic su  Filtra tabella e poi seleziona una proprietà del filtro. Le proprietà del filtro includono:

    • Stato dell'avviso
    • Nome della criterio di avviso
    • Quando l'avviso è stato aperto o chiuso
  2. Seleziona un valore dal menu secondario o inseriscine uno nella barra dei filtri.

    La tabella Avvisi elenca quindi il filtro.

gcloud

Puoi utilizzare gcloud per ricevere avvisi ed elencarli.

Ricevere un avviso

Prima di utilizzare i dati dei comandi riportati di seguito, effettua le seguenti sostituzioni:

  • ALERT_NAME: il nome della risorsa dell'avviso. Ad esempio, projects/my-project/alerts/my-alert-id.

Esegui il comando gcloud alpha monitoring alerts describe:

Linux, macOS o Cloud Shell

gcloud alpha monitoring alerts describe ALERT_NAME

Windows (PowerShell)

gcloud alpha monitoring alerts describe ALERT_NAME

Windows (cmd.exe)

gcloud alpha monitoring alerts describe ALERT_NAME
Il comando restituisce una risposta con i dettagli dell'avviso, ad esempio lo stato dell'avviso, le etichette allegate e la criterio di avviso di origine. La risposta è simile alla seguente:
{
  "name": "projects/my-project/alerts/my-alert-id",
  "state": "OPEN",
  "open_time": "2025-06-11T09:53:46Z",
  "resource": {
    "type": "sql_alert"
  },
  "policy": {
    "name": "projects/my-project/alertPolicies/POLICY_1",
    "displayName": "test-policy"
  },
  "summaryText": "The row count SQL Condition for \"test-policy\" is above the threshold of 1."
}

Elenco avvisi

Puoi elencare gli avvisi nel tuo progetto e filtrare i risultati utilizzando gcloud CLI.

Prima di utilizzare i dati dei comandi riportati di seguito, effettua le seguenti sostituzioni:

  • PROJECT_ID: l'identificatore del progetto.

Esegui il comando gcloud alpha monitoring alerts list:

Linux, macOS o Cloud Shell

gcloud alpha monitoring alerts list

Windows (PowerShell)

gcloud alpha monitoring alerts list

Windows (cmd.exe)

gcloud alpha monitoring alerts list
Il comando restituisce una risposta con i dettagli dell'avviso, ad esempio lo stato dell'avviso, le etichette allegate e la criterio di avviso di origine. La risposta è simile alla seguente:
{
  "alerts": [
    {
      "name": "projects/my-project/alerts/my-alert-id",
      "state": "OPEN",
      "open_time": "2025-06-11T09:53:46Z",
      "resource": {
        "type": "sql_alert"
      },
      "policy": {
        "name": "projects/my-project/alertPolicies/POLICY_1",
        "displayName": "test-policy"
      },
      "summaryText": "The row count SQL Condition for \"test-policy\" is above the threshold of 1."
    }
  ]
}
Puoi anche utilizzare i seguenti flag facoltativi per filtrare, ordinare o modificare l'output:
  • --filter: fornisci un'espressione di filtro per filtrare gli avvisi in base all'ora o all'etichetta. Ad esempio, filtra per ora con --filter='close_time>="2025-09-10T00:00:00Z"' o per etichetta con --filter='resource.labels.key="value"'.

  • --sort-by: un elenco separato da virgole dei campi in base a cui ordinare l'output. Ad esempio: --sort-by=open_time.

  • --uri: il comando restituisce un elenco di URI delle risorse anziché l'output predefinito.

  • --limit: imposta questo flag su 2 o su un valore superiore per limitare il numero di avvisi restituiti. Non utilizzare questo flag insieme al flag --filter.

API Monitoring

Puoi utilizzare l'API Monitoring per ricevere avvisi ed elencarli.

Ricevere un avviso

Per ottenere dettagli su un singolo avviso con l'API Monitoring, utilizza il metodo alerts.get.

Prima di utilizzare i dati della richiesta, apporta le sostituzioni seguenti:

  • PROJECT_ID: l'identificatore del progetto.
  • ALERT_ID: l'ID dell'avviso.

Metodo HTTP e URL:

GET https://monitoring.googleapis.com/v3/projects/PROJECT_ID/alerts/ALERT_ID

Per inviare la richiesta, espandi una di queste opzioni:

Il comando restituisce una risposta con i dettagli dell'avviso, ad esempio lo stato dell'avviso, le etichette allegate e la criterio di avviso di origine. La risposta è simile alla seguente:
{
  "name": "projects/my-project/alerts/my-alert-id",
  "state": "OPEN",
  "open_time": "2025-06-11T09:53:46Z",
  "resource": {
    "type": "sql_alert"
  },
  "policy": {
    "name": "projects/my-project/alertPolicies/POLICY_1",
    "displayName": "test-policy"
  },
  "summaryText": "The row count SQL Condition for \"test-policy\" is above the threshold of 1."
}

Elenco avvisi

Per elencare gli avvisi nel tuo progetto e filtrare i risultati con l'API Monitoring, utilizza il metodo alerts.list.

Prima di utilizzare i dati della richiesta, apporta le sostituzioni seguenti:

  • PROJECT_ID: l'identificatore del progetto.

Metodo HTTP e URL:

GET https://monitoring.googleapis.com/v3/projects/PROJECT_ID/alerts

Per inviare la richiesta, espandi una di queste opzioni:

Il comando restituisce una risposta con i dettagli dell'avviso, ad esempio lo stato dell'avviso, le etichette allegate e la criterio di avviso di origine. La risposta è simile alla seguente:
{
  "alerts": [
    {
      "name": "projects/my-project/alerts/my-alert-id",
      "state": "OPEN",
      "open_time": "2025-06-11T09:53:46Z",
      "resource": {
        "type": "sql_alert"
      },
      "policy": {
        "name": "projects/my-project/alertPolicies/POLICY_1",
        "displayName": "test-policy"
      },
      "summaryText": "The row count SQL Condition for \"test-policy\" is above the threshold of 1."
    }
  ]
}
Gli utenti di Curl possono aggiungere il flag --data-urlencode seguito da un'espressione di filtro per filtrare gli avvisi in base all'ora o all'etichetta. Vedi i seguenti esempi:

Elenca gli avvisi aperti nell'ultima ora:

--data-urlencode "filter=(open_time>=\"`date -u -d "1 hour ago" +"%Y-%m-%dT%H:%M:%SZ"`\")"

Elenca e filtra gli avvisi aperti dell'ultimo giorno:

--data-urlencode "filter=(open_time>=\"`date -u -d "1 DAY ago" +"%Y-%m-%dT%H:%M:%SZ"`\" AND state=open)"

Elenca e filtra gli avvisi aperti tra due periodi:

--data-urlencode "filter=(open_time>=\"`date -u -d "2 DAY ago" +"%Y-%m-%dT%H:%M:%SZ"`\" AND open_time<=\"`date -u -d "1 DAY ago" +"%Y-%m-%dT%H:%M:%SZ"`\")"

Elenca e filtra gli avvisi in base all'etichetta utente. In questo esempio, filtra in base a un'etichetta utente con il nome app e il valore my-gke-app:

--data-urlencode "filter=(policy.user_labels.app=\"my-gke-app\")"
Gli utenti di PowerShell possono utilizzare il seguente esempio per aggiungere un filtro basato sul tempo all'URL della richiesta:
$baseUrl = "https://monitoring.googleapis.com/v3/projects/my-project/alerts"
$filterValue = (Get-Date).AddHours(-1).ToString("yyyy-MM-ddTHH:mm:ssZ")
$filter = 'open_time >= "' + $filterValue + '"'
$encodedFilter = [System.Uri]::EscapeDataString($filter)
$url = $baseUrl + "?filter=" + $encodedFilter

Indaga su un avviso

La pagina Dettagli avviso contiene informazioni che possono aiutarti a identificare la causa di un avviso.

Esplora i risultati delle query

Il riquadro Tempo totale di slot consumato al giorno mostra la quantità di tempo che gli slot BigQuery riservati hanno impiegato per eseguire le query SQL per la criterio di avviso nelle ultime 24 ore.

Il riquadro Risultati della query SQL mostra un elenco di riepiloghi dei risultati delle query ogni volta che Observability Analytics ha eseguito la query SQL dalla condizione del criterio di avviso. Per impostazione predefinita, l'elenco viene filtrato in modo da mostrare solo le query che corrispondono alla condizione dellacriterio di avvisoo.

  • Per visualizzare la query e la tabella dei risultati della query da un momento specifico in cui Observability Analytics ha eseguito la query, fai clic su un valore della colonna Ora di esecuzione della query.
  • Per alternare la visualizzazione dei soli risultati delle query che corrispondono alla condizione della criterio di avviso e di tutte le query eseguite da Observability Analytics dalla criterio di avviso, fai clic su Mostra solo le query corrispondenti alle condizioni di avviso.

Visualizza informazioni supplementari

La sezione Documentazione mostra il modello di documentazione per le notifiche che hai fornito durante la creazione della criterio di avviso. Queste informazioni potrebbero includere una descrizione di ciò che monitora la norma di avviso, nonché suggerimenti per la mitigazione. Per saperne di più, consulta Annotare le notifiche con la documentazione definita dall'utente.

Se non hai configurato la documentazione per la tua criterio di avviso, il riquadro Documentazione mostra il messaggio "Nessuna documentazione configurata".

Per aiutarti a scoprire i problemi sottostanti della tua applicazione, puoi esplorare gli avvisi relativi ad altre condizionicriterio di avvisoo.

La sezione Avvisi correlati mostra un elenco di altri avvisi che sono stati creati quando è stata soddisfatta la condizione della criterio di avviso.

Gestisci avvisi

Gli avvisi si trovano in uno dei seguenti stati:

  •  Aperto: La condizione della criterio di avviso basata su SQL è stata soddisfatta e l'avviso è ancora aperto. Se la stessa condizione si verifica di nuovo e c'è già un avviso aperto, non ne viene aperto uno nuovo.

  •  Confermato: L'avviso è aperto ed è stato contrassegnato manualmente come confermato. In genere, questo stato indica che l'avviso è in fase di indagine.

  •  Chiuso: Hai chiuso manualmente l'avviso o è stato chiuso automaticamente dopo la scadenza del periodo di chiusura automatica.

Confermare gli avvisi

Ti consigliamo di contrassegnare un avviso come riconosciuto quando inizi a esaminare la causa dell'avviso.

Per contrassegnare un avviso come riconosciuto:

  1. Nella tabella Avvisi della pagina Avvisi, fai clic su Visualizza tutti gli avvisi.
  2. Nella pagina Avvisi, individua l'avviso che vuoi confermare, quindi esegui una delle seguenti operazioni:

    • Fai clic su  Altre opzioni e poi seleziona Conferma.
    • Apri la pagina dei dettagli dell'avviso e fai clic su Conferma avviso.

Posticipare una criterio di avviso

Per impedire a Monitoring di creare avvisi e inviare notifiche durante un periodo di tempo specifico, posticipa la criterio di avviso correlata. Quando posticipi una criterio di avviso, gli avvisi correlati alla policy di avviso rimangono aperti, ma non causano ulteriori notifiche. Gli avvisi vengono chiusi in base alla durata di chiusura automatica criterio di avviso.

Per creare una sospensione per un avviso che stai visualizzando:

  1. Nella pagina Dettagli avviso, fai clic su Policy di posticipo.

  2. Seleziona la durata del posticipo. Dopo aver selezionato la durata della posticipazione, questa inizia immediatamente.

Puoi anche posticipare una criterio di avviso dalla pagina Avvisi individuando l'avviso che vuoi posticipare, facendo clic su  Altre opzioni e poi selezionando Posticipa. Puoi posticipare le policy di avviso durante le interruzioni per evitare ulteriori notifiche durante la procedura di risoluzione dei problemi.

Chiudi avvisi

Puoi lasciare che Monitoring chiuda un avviso per te oppure puoi chiuderlo tu.

Il monitoraggio chiude automaticamente un avviso quando scade la durata di chiusura automatica della criterio di avviso. Per impostazione predefinita, la durata della chiusura automatica è di 7 giorni. La durata minima di chiusura automatica è di 30 minuti.

La durata della chiusura automatica specifica il tempo che deve trascorrere, senza una ripetizione della causa dell'avviso, prima che l'avviso venga chiuso. Per questo motivo, quando un avviso è aperto e la sua causa si ripresenta, l'avviso può rimanere aperto più a lungo della durata della chiusura automatica.

Per chiudere un avviso:

  1. Nella tabella Avvisi della pagina Avvisi, fai clic su Visualizza tutti gli avvisi.
  2. Nella pagina Avvisi, individua l'avviso che vuoi chiudere, quindi esegui una delle seguenti operazioni:

    • Fai clic su  Visualizza altro e poi seleziona Chiudi avviso.
    • Apri la pagina Dettagli avviso per l'avviso e poi fai clic su Chiudi avviso.

Se visualizzi il messaggio Unable to close alert, riprova tra qualche minuto. Non puoi chiudere immediatamente un nuovo avviso perché le condizioni che lo hanno generato sono ancora considerate attive dal sistema di avviso.

Conservazione e limiti dei dati

Per informazioni sui limiti e sul periodo di conservazione degli avvisi, consulta Limiti per gli avvisi.

Passaggi successivi