Configurare le notifiche programmatiche

Questo documento spiega come configurare le notifiche programmatiche relative al budget e alle anomalie dei costi (anteprima) utilizzando Pub/Sub.

Budget e anomalie dei costi sono in genere configurati per l'invio di notifiche via email. Se utilizzi i budget o il rilevamento delle anomalie di costo come strumento di controllo dei costi, le notifiche via email potrebbero non essere il metodo migliore per garantire un'azione tempestiva per controllare i costi. Puoi configurare e utilizzare le notifiche programmatiche per automatizzare le risposte sul controllo dei costi. Ecco alcuni esempi di risposte automatiche sul controllo dei costi:

Limitazioni

Autorizzazioni richieste per questa attività

Notifiche relative al budget

Per configurare le notifiche del budget programmatiche, devi disporre delle autorizzazioni per creare o modificare budget e argomenti Pub/Sub. A seconda del livello di accesso, hai bisogno di un diverso insieme di autorizzazioni.

Utenti con autorizzazioni per l'account di fatturazione Cloud Utenti con solo autorizzazioni a livello di progetto (Anteprima)

Se la tua organizzazione utilizza ruoli personalizzati per l'autenticazione, devi disporre delle seguenti autorizzazioni nei ruoli personalizzati:

Per consentire ai ruoli personalizzati di modificare un budget di fatturazione Cloud esistente per collegarlo a un argomento Pub/Sub esistente, devi disporre delle seguenti autorizzazioni:

Per ottenere le autorizzazioni necessarie utilizzando i ruoli predefiniti, chiedi all'amministratore di concederti uno dei seguenti ruoli IAM per la fatturazione Cloud predefiniti sul tuo account di fatturazione Cloud:

e chiedi all'amministratore di concederti il seguente ruolo nel progetto di destinazione che contiene gli argomenti Pub/Sub:

Se la tua organizzazione utilizza ruoli personalizzati per l'autenticazione, devi disporre delle seguenti autorizzazioni nei ruoli personalizzati:

Per ottenere le autorizzazioni necessarie utilizzando i ruoli predefiniti, chiedi all'amministratore di concederti uno dei seguenti ruoli Cloud Billing IAM predefiniti sul progetto:

Chiedi all'amministratore di concederti il seguente ruolo nel progetto di destinazione che contiene gli argomenti Pub/Sub:

Notifiche di anomalie

Per configurare le notifiche programmatiche delle anomalie, devi disporre delle autorizzazioni per creare o modificare anomalie e argomenti Pub/Sub. Devi disporre delle autorizzazioni dell'account di fatturazione Cloud.

Utenti con autorizzazioni per l'account di fatturazione Cloud (anteprima)

Per ottenere le autorizzazioni necessarie utilizzando i ruoli predefiniti, chiedi all'amministratore di concederti uno dei seguenti ruoli IAM per la fatturazione Cloud predefiniti sul tuo account di fatturazione Cloud:

Chiedi all'amministratore di concederti il seguente ruolo nel progetto di destinazione che contiene gli argomenti Pub/Sub:

Crea un argomento Pub/Sub

Per configurare le notifiche programmatiche del budget o delle anomalie, devi prima creare un argomento Pub/Sub. Se hai già configurato un argomento Pub/Sub per i budget o le anomalie di costo, puoi saltare questo passaggio.

  1. Vai alla pagina Pub/Sub della console Google Cloud .

    Accedi alla console Google Cloud Pub/Sub

  2. Seleziona un progetto che contenga l'argomento Pub/Sub.

    Quando configuri gli argomenti Pub/Sub per le notifiche di fatturazione, ti consigliamo di utilizzare un progetto di amministrazione FinOps per contenere gli argomenti Pub/Sub correlati alla fatturazione.

  3. Fai clic su Crea argomento.

  4. Nel campo ID argomento, fornisci un nome per l'argomento.

  5. Mantieni le impostazioni predefinite di abbonamento e crittografia e fai clic su Crea.

Collega l'argomento Pub/Sub

Per attivare le notifiche programmatiche per ricevere messaggi Pub/Sub con lo stato attuale del budget o dell'anomalia, devi collegare il budget o l'anomalia all'argomento Pub/Sub.

Notifiche relative al budget

Per collegare un argomento Pub/Sub a un budget di fatturazione Cloud, completa i seguenti passaggi:

Utenti con autorizzazioni per l'account di fatturazione Cloud Utenti con solo autorizzazioni a livello di progetto (anteprima)
  1. Accedi alla pagina Budget e avvisi nella console Google Cloud .

    Apri Budget e avvisi
  2. Quando richiesto, scegli l'account di fatturazione Cloud per cui vuoi gestire i budget.

    Si apre la pagina Budget e avvisi per l'account di fatturazione selezionato.

  3. Seleziona il budget che vuoi collegare o creane uno nuovo.
  4. Nella sezione Azioni, in Gestisci notifiche, seleziona Collega un argomento Pub/Sub a questo budget.
  5. Nel campo Progetto, fai clic su Seleziona un progetto e scegli il progetto che contiene gli argomenti Pub/Sub che hai configurato.
  6. In Seleziona un argomento Pub/Sub, seleziona un argomento esistente o creane uno nuovo facendo clic su Crea un argomento.
    • Se crei un nuovo argomento, nel campo ID argomento, fornisci un nome e fai clic su Crea argomento.
    • Dopo aver creato l'argomento, questo viene selezionato automaticamente.
  7. Fai clic su Salva.
  1. Accedi al dashboard della console Google Cloud e seleziona un progetto.

    Apri la Google Cloud console
  2. Seleziona il progetto per il quale vuoi gestire i budget.
  3. Vai alla sezione Fatturazione: apri il menu di navigazione della console Google Cloud e seleziona Fatturazione.

    Se ti viene chiesto di scegliere l'account di fatturazione che vuoi visualizzare e gestire, fai clic su Vai all'account di fatturazione collegato per visualizzare l'account di fatturazione collegato al progetto selezionato.

    Si apre la pagina Panoramica della fatturazione per l'account di fatturazione selezionato.

  4. Nella sezione Gestione dei costi del menu di navigazione Fatturazione, seleziona Budget e avvisi.
  5. Seleziona il budget che vuoi collegare o creane uno nuovo.
  6. Nella sezione Azioni, in Gestisci notifiche, seleziona Collega un argomento Pub/Sub a questo budget.
  7. Nel campo Progetto, fai clic su Seleziona un progetto e scegli il progetto che contiene gli argomenti Pub/Sub che hai configurato.
  8. In Seleziona un argomento Pub/Sub, seleziona un argomento esistente o creane uno nuovo facendo clic su Crea un argomento.
    • Se crei un nuovo argomento, nel campo ID argomento, fornisci un nome e fai clic su Crea argomento.
    • Una volta creato, l'argomento verrà selezionato.
  9. Fai clic su Salva.

Notifiche di anomalie

Per collegare un argomento Pub/Sub a un'anomalia dei costi, completa i seguenti passaggi:

Utenti con autorizzazioni per l'account di fatturazione Cloud (anteprima)
  1. Accedi alla pagina Anomalie nella console Google Cloud .

    Apri anomalie
  2. Quando richiesto, scegli l'account di fatturazione Cloud per cui vuoi gestire le anomalie.

    Si apre la pagina Anomalie per l'account di fatturazione selezionato.

  3. Fai clic su Gestisci anomalie.
  4. Inserisci un valore per la Soglia di anomalia per l'Impatto sui costi. Questo importo è il valore di soglia che attiva le notifiche. Se non fornisci un valore, la soglia viene impostata su zero e le notifiche vengono inviate per tutte le anomalie.
  5. Nella sezione Notifiche Pub/Sub, seleziona Collega un argomento Pub/Sub per ricevere aggiornamenti programmatici sulle anomalie.
  6. Nel menu a discesa visualizzato, seleziona l'argomento Pub/Sub a cui vuoi connetterti per ricevere le notifiche.
    • Gli argomenti sono elencati per progetto. Potresti dover cambiare il progetto che stai visualizzando per trovare l'argomento che vuoi selezionare.
    • Se vuoi creare un nuovo argomento, passa al progetto che preferisci prima di fare clic su Crea un argomento.
  7. Fai clic su Salva.

Formato delle notifiche

Le notifiche inviate all'argomento Pub/Sub sono composte da due parti:

  • Attributi: un insieme di coppie chiave-valore che descrivono l'evento.
  • Data: una stringa contenente un oggetto JSON che descrive i dettagli dell'avviso di budget.

Notifiche relative al budget

Attributi

Gli attributi sono coppie chiave-valore contenute in tutte le notifiche inviate dal fatturazione Cloud al tuo argomento Pub/Sub. Le notifiche contengono sempre il seguente insieme di coppie chiave/valore, indipendentemente dal payload delle notifiche.

Nome dell'attributo Esempio Descrizione
billingAccountId 01D4EE-079462-DFD6EC L'identificatore dell'account di fatturazione Cloud proprietario del budget.
budgetId de72f49d-779b-4945-a127-4d6ce8def0bb L'identificatore dell'avviso relativo al budget all'interno dell'account di fatturazione Cloud.
schemaVersion 1.0 La versione dello schema delle notifiche.

Dati

I dettagli dell'avviso di budget vengono restituiti in una stringa UTF-8 con codifica base64 contenente un oggetto JSON con le seguenti proprietà:

Dati Esempio Descrizione
budgetDisplayName "My Personal Budget" Il nome leggibile assegnato al budget.
costAmount 140.321 L'importo dei costi maturati. Il tipo di costi monitorati dipende dai filtri e dalle impostazioni del budget.
costIntervalStart "2021-02-01T08:00:00Z" L'inizio del periodo di avviso relativo al budget. `costAmount` include i costi per l'utilizzo a partire da questo momento. Il primo giorno del periodo di tempo del budget (mese, trimestre, anno o un intervallo di date personalizzato) durante il quale si è verificato l'utilizzo del budget.
budgetAmount 152.557 L'importo stanziato nel budget.
budgetAmountType "SPECIFIED_AMOUNT" Il tipo di importo del budget. Può avere uno dei seguenti valori:
  • "SPECIFIED_AMOUNT": un importo fisso.
  • "LAST_MONTH_COST": costi totali sostenuti durante l'ultimo mese di calendario.
  • "LAST_PERIODS_COST": i costi sostenuti durante l'ultimo periodo di calendario non mensile, ad esempio un trimestre o un anno.
alertThresholdExceeded 0.9 È stata superata la soglia di avviso per il costo effettivo più elevata configurata. Il valore è una percentuale in formato decimale (ad esempio, 0,9 corrisponde al 90%). Questa chiave non è presente se il costo effettivo non supera alcuna soglia.
forecastThresholdExceeded 0.2 È stata superata la soglia di avviso per il costo previsto più alto. Il valore è una percentuale in formato decimale (ad esempio, 0,2 corrisponde al 20%). Questa chiave non è presente se il costo previsto non supera alcuna soglia.
currencyCode "USD" La valuta dell'avviso relativo al budget. Tutti i costi e gli importi degli avvisi relativi al budget sono in questa valuta.

Notifiche di anomalie

Attributi

Gli attributi sono coppie chiave-valore contenute in tutte le notifiche inviate da fatturazione Cloud all'argomento Pub/Sub. Le notifiche contengono sempre il seguente set di coppie chiave-valore, indipendentemente dal payload della notifica.

Nome attributo Esempio Descrizione
ambito scope_project L'ambito dell'anomalia.
billingAccountName billingAccounts/01D4EE-079462-DFD6EC L'identificatore dell'account di fatturazione Cloud in cui si è verificata l'anomalia.
resourceDisplayName My project Il nome visualizzato della risorsa in cui si è verificata l'anomalia.
resourceName projects/123456 L'identificatore della risorsa in cui si è verificata l'anomalia.
SchemaVersion 1.0 La versione dello schema Pub/Sub.

Dati

I dettagli dell'avviso di anomalia vengono restituiti in una stringa UTF-8 con codifica base64 contenente un oggetto JSON con le seguenti proprietà:

Dati Esempio Descrizione
anomalyName billingAccounts/01D4EE-079462-DFD6EC/anomalies/aaa Il nome della risorsa per l'anomalia.
billingAccountName billingAccounts/01D4EE-079462-DFD6EC L'identificatore dell'account di fatturazione.
resourceName "projects/12345" L'identificatore della risorsa in cui si è verificata l'anomalia.
resourceDisplayName "My project" Il nome visualizzato della risorsa in cui si è verificata l'anomalia.
detectionDate "2024-02-01T08:00:00Z" La data in cui è stata rilevata l'anomalia di costo.
Scope SCOPE_PROJECT Indica l'ambito dell'anomalia.
expectedSpendAmount {
"currencyCode": "USD",
"units": "8",
"nanos": 988106832
}
La spesa prevista per la risorsa.
actualSpendAmount 196.22 La spesa effettiva per la risorsa.
deviationAmount 31.01 La differenza tra la spesa effettiva e quella prevista.
deviationPercentage 18.77 La percentuale di deviazione dell'importo dalla spesa prevista.
Root cause
root_causes {
resource: "services/XXX-XXXX-XXX"
display_name: "BigQuery"
cause_type: CAUSE_TYPE_SERVICE
deviation {
  expected_spend {
    currency_code: "USD"
    units: "5000"
  }
  actual_spend {
    currency_code: "USD"
    units: "5000"
  }
  deviation_amount {
    currency_code: "USD"
    units: "5000"
  }
  deviation_percentage: "Infinity"
}
sub_causes {
  resource: "locations/us-west1",
  display_name: "us-west1",
  cause_type: CAUSE_TYPE_LOCATION,
  deviation {
    expected_spend {
      currency_code: "USD",
    }
    actual_spend {
      currency_code: "USD",
      units:"5000"
    }
    deviation_amount {
      currency_code: "USD",
      units: "5000"
    }
    deviation_percentage: "Infinity"
  }
  sub_causes {
    resource: "services/XXXX-XXXX-XXXX/skus/XXXX-XXXX-XXXX"
    display_name: "Some display name"
    cause_type: CAUSE_TYPE_SKU
    deviation {
      expected_spend {
        currency_code: "USD"
      }
      actual_spend {
        currency_code: "USD"
        units: 5000
      }
      deviation_amount {
        currency_code: "USD"
        units: 5000
      }
      deviation_percentage: "Infinity"
    }
  }
  sub_causes {
    resource: "services/XXXX-XXXX-XXXX/skus/XXXX-XXXX-XXXX"
    display_name: "Some display name"
    cause_type: CAUSE_TYPE_SKU
    deviation {
      expected_spend {
        currency_code: "USD"
        units: "1"
        nanos: 5413077
      }
      actual_spend {
        currency_code: "USD"
        units: "1",
        nanos: 122606000
      }
      deviation_amount {
        currency_code: "USD"
        nanos: 117192923
      }
      deviation_percentage:11.656196419841217
    }
  }
}
}
Un campo ripetuto che contiene informazioni sulla causa principale dell'anomalia.

Garanzie di consegna per le notifiche a Pub/Sub

Dopo aver collegato il budget o l'anomalia a un argomento Pub/Sub, puoi aspettarti di ricevere notifiche programmatiche come segue:

Notifiche relative al budget

  • Le notifiche relative al budget vengono inviate all'argomento Pub/Sub più volte al giorno con lo stato attuale del budget. Questa cadenza è diversa da quella delle email di avviso relative al budget, che vengono inviate solo quando viene raggiunta una soglia di budget.
  • Le notifiche Pub/Sub vengono inviate anche se l'account fatturazione Cloud non ha utilizzo.
  • Potrebbero essere necessarie diverse ore prima di ricevere la prima notifica Pub/Sub.
  • Pub/Sub garantisce solo la consegna "at-least-once". Potresti ricevere un messaggio più volte e i messaggi potrebbero arrivare in ordine sparso.
  • Se la pubblicazione non va a buon fine a causa di una configurazione errata dell'argomento Pub/Sub, non riceverai alcuna notifica.

La pubblicazione potrebbe non andare a buon fine per uno dei seguenti motivi:

Notifiche di anomalie

  • Le notifiche di anomalia vengono inviate all'argomento Pub/Sub solo quando viene raggiunta la soglia.
  • Pub/Sub garantisce solo la consegna "at-least-once". Potresti ricevere un messaggio più volte e i messaggi potrebbero arrivare in ordine sparso.
  • Se la pubblicazione non riesce a causa di una configurazione errata dell'argomento Pub/Sub, non riceverai alcuna notifica.

La pubblicazione potrebbe non andare a buon fine per uno dei seguenti motivi:

Per ulteriori informazioni, consulta Pubblica e ricevi messaggi in Pub/Sub.

Passaggi successivi

Per scoprire di più su come utilizzare le notifiche programmatiche, consulta i seguenti esempi di risposte programmatiche per il controllo dei costi: