Questo documento descrive come creare una sottoscrizione pull. Puoi utilizzare la Cloud de Confiance console, Google Cloud CLI, la libreria client o l'API Pub/Sub per creare una sottoscrizione pull.
Prima di iniziare
- Scopri di più sugli abbonamenti.
- Valuta se la tua attività richiede una sottoscrizione pull.
- Scopri come funzionano gli abbonamenti pull.
Ruoli e autorizzazioni richiesti
Per ottenere le autorizzazioni
necessarie per creare una sottoscrizione pull,
chiedi all'amministratore di concederti il ruolo IAM
Pub/Sub Editor (roles/pubsub.editor) nel progetto.
Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.
Questo ruolo predefinito contiene le autorizzazioni necessarie per creare una sottoscrizione pull. Per vedere quali sono esattamente le autorizzazioni richieste, espandi la sezione Autorizzazioni obbligatorie:
Autorizzazioni obbligatorie
Per creare una sottoscrizione pull sono necessarie le seguenti autorizzazioni:
-
pubsub.subscriptions.createsul progetto -
pubsub.topics.attachSubscriptionsull'argomento
Potresti anche ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.
Abbonamenti tra progetti
Se crei una sottoscrizione in un progetto per un argomento in un altro progetto, devi disporre dell'autorizzazione pubsub.subscriptions.create sul progetto in cui stai creando la sottoscrizione e dell'autorizzazione pubsub.topics.attachSubscription sull'argomento.
Creare una sottoscrizione pull
Console
Per creare una sottoscrizione pull:
Nella console Cloud de Confiance , vai alla pagina Sottoscrizioni.
Fai clic su Crea sottoscrizione.
Nel campo ID sottoscrizione, inserisci un nome.
Per informazioni su come denominare un abbonamento, consulta le linee guida per assegnare un nome a un argomento o a un abbonamento.
Nell'elenco Argomento Pub/Sub, seleziona un argomento da cui leggere la sottoscrizione.
Per Tipo di consegna, seleziona Pull.
(Facoltativo) Nella sezione Trasformazioni, aggiungi una o più trasformazioni di messaggi singoli (SMT). Per maggiori informazioni, consulta Crea un abbonamento con SMT.
(Facoltativo) Nel campo Filtro, inserisci un'espressione di filtro per filtrare i messaggi dell'abbonamento. Per saperne di più, consulta Filtrare i messaggi di un abbonamento.
Per Policy di ripetizione, seleziona un'opzione. Per saperne di più, consulta le norme sui tentativi di abbonamento.
(Facoltativo) Abilita un argomento messaggi non recapitabili per ricevere i messaggi non recapitabili.
Seleziona la casella di controllo Messaggi non recapitabili.
Nell'elenco Argomento messaggi non recapitabili, seleziona o crea l'argomento messaggi non recapitabili.
Nel campo Tentativi di consegna massimi, inserisci il numero massimo di tentativi di consegna.
(Facoltativo) Nella sezione Proprietà di pubblicazione, attiva o disattiva le seguenti opzioni di pubblicazione:
(Facoltativo) Nella sezione Scadenza conferma, imposta la scadenza entro la quale l'abbonato deve elaborare e confermare i messaggi. Per saperne di più, consulta Estendere il tempo di riconoscimento con la gestione dei contratti di noleggio.
(Facoltativo) Nella sezione Opzioni di durata, configura per quanto tempo l'abbonamento conserva i messaggi.
Nella sezione Durata di conservazione dei messaggi, specifica per quanto tempo vengono conservati i messaggi non confermati.
Per conservare i messaggi confermati e quelli non confermati, seleziona la casella di controllo Conserva i messaggi confermati.
Per maggiori informazioni, vedi Configurare la conservazione dei messaggi per un abbonamento.
(Facoltativo) Per Periodo di scadenza, seleziona un'opzione:
Per impostare la scadenza dell'abbonamento, seleziona la casella di controllo Scade dopo questi giorni di inattività. Inserisci il numero di giorni in cui l'abbonamento può rimanere inattivo prima che Pub/Sub lo elimini.
Per disattivare la scadenza dell'abbonamento, seleziona la casella di controllo Mai.
Per saperne di più, consulta Scadenza dell'abbonamento.
Fai clic su Crea.
Puoi anche creare un abbonamento dalla sezione Argomenti. Questa scorciatoia è utile per associare argomenti agli abbonamenti.
Nella console Cloud de Confiance , vai alla pagina Argomenti.
Fai clic su more_vert accanto all'argomento su cui creare un abbonamento.
Dal menu contestuale, seleziona Crea abbonamento.
Nella pagina Aggiungi sottoscrizione all'argomento, completa i passaggi descritti nella procedura precedente. L'ID argomento viene compilato automaticamente.
gcloud
-
Nella console Cloud de Confiance , attiva Cloud Shell.
Nella parte inferiore della console Cloud de Confiance viene avviata una sessione di Cloud Shell e viene visualizzato un prompt della riga di comando. Cloud Shell è un ambiente shell con Google Cloud CLI già installata e con valori già impostati per il progetto corrente. L'inizializzazione della sessione può richiedere alcuni secondi.
-
Per creare una sottoscrizione pull, esegui il comando
gcloud pubsub subscriptions create.gcloud pubsub subscriptions create SUBSCRIPTION_ID --topic=TOPIC_ID
Sostituisci quanto segue:
SUBSCRIPTION_ID: il nome o l'ID della nuova sottoscrizione pull.TOPIC_ID: il nome o l'ID dell'argomento.
REST
Per creare una sottoscrizione pull, utilizza il metodo
projects.subscriptions.create:
Richiesta:
La richiesta deve essere autenticata con un token di accesso nell'intestazione Authorization. Per ottenere un
token di accesso per le Credenziali predefinite dell'applicazione attuali:
gcloud auth application-default print-access-token.
PUT https://pubsub.googleapis.com/v1/projects/PROJECT_ID/subscriptions/SUBSCRIPTION_ID Authorization: Bearer ACCESS_TOKEN
Corpo della richiesta:
{ "topic": "projects/PROJECT_ID/topics/TOPIC_ID" }
Dove:
- PROJECT_ID è l'ID progetto.
- SUBSCRIPTION_ID è l'ID abbonamento.
- TOPIC_ID è l'ID argomento.
Risposta:
{
"name": "projects/PROJECT_ID/subscriptions/SUBSCRIPTION_ID",
"topic": "projects/PROJECT_ID/topics/TOPIC_ID",
"pushConfig": {},
"ackDeadlineSeconds": 10,
"messageRetentionDuration": "604800s",
"expirationPolicy": {
"ttl": "2678400s"
}
}C++
Prima di provare questo esempio, segui le istruzioni di configurazione di C++ nella guida rapida all'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Pub/Sub C++.
C#
Prima di provare questo esempio, segui le istruzioni di configurazione di C# nella guida rapida all'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Pub/Sub C#.
Vai
L'esempio seguente utilizza la versione principale della libreria client Go Pub/Sub (v2). Se utilizzi ancora la libreria v1, consulta la guida alla migrazione alla v2. Per visualizzare un elenco di esempi di codice della versione 1, consulta gli esempi di codice deprecati.
Prima di provare questo esempio, segui le istruzioni di configurazione di Go nella guida rapida all'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Pub/Sub Go.
Java
Prima di provare questo esempio, segui le istruzioni di configurazione di Java nella guida rapida all'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Java di Pub/Sub.
Node.js
Prima di provare questo esempio, segui le istruzioni di configurazione di Node.js nella guida rapida all'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Pub/Sub Node.js.
Node.ts
Prima di provare questo esempio, segui le istruzioni di configurazione di Node.js nella guida rapida all'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Pub/Sub Node.js.
PHP
Prima di provare questo esempio, segui le istruzioni di configurazione di PHP nella guida rapida all'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Pub/Sub PHP.
Python
Prima di provare questo esempio, segui le istruzioni di configurazione di Python nella guida rapida all'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Pub/Sub Python.
Ruby
L'esempio seguente utilizza la libreria client Ruby Pub/Sub v3. Se utilizzi ancora la libreria v2, consulta la guida alla migrazione alla v3. Per visualizzare un elenco di esempi di codice Ruby v2, consulta gli esempi di codice deprecati.
Prima di provare questo esempio, segui le istruzioni di configurazione di Ruby nella guida rapida all'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Pub/Sub Ruby.
Rust
Prima di provare questo esempio, segui le istruzioni di configurazione di Rust nella guida rapida all'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Pub/Sub Rust.
Monitorare le sottoscrizioni pull
Cloud Monitoring fornisce una serie di metriche per monitorare gli abbonamenti.
Per un elenco di tutte le metriche disponibili relative a Pub/Sub e le relative descrizioni, consulta la documentazione di Monitoring per Pub/Sub.
Puoi anche monitorare gli abbonamenti all'interno di Pub/Sub.
Passaggi successivi
- Ricevi messaggi da una sottoscrizione pull.
- Crea o modifica un abbonamento con i comandi
gcloud. - Crea o modifica un abbonamento con le API REST.