Questa pagina descrive come controllare e gestire le operazioni a lunga esecuzione in Certificate Manager.
Quando una richiesta di modifica in Certificate Manager, ad esempio la creazione, l'aggiornamento o l'eliminazione di una risorsa, non va immediatamente in errore, l'API restituisce un'operazione a lunga esecuzione (LRO). Queste operazioni monitorano lo stato delle attività di elaborazione che richiedono più tempo per essere completate. Per impostazione predefinita, i comandi di mutazione gcloud attendono il completamento dell'operazione, a meno che non specifichi il flag --async.
Puoi utilizzare la raccolta projects.locations.operations per controllare lo stato delle operazioni.
Autorizzazioni obbligatorie
Per gestire le operazioni a lunga esecuzione nel progetto di destinazione, devi disporre dell'autorizzazione corrispondente all'attività che vuoi eseguire:
certificatemanager.operations.get: recupera i dettagli di un'operazione specifica.certificatemanager.operations.list: elenca tutte le operazioni in una determinata località.certificatemanager.operations.delete: elimina una risorsa di operazione completata (solo API).
Per saperne di più su ruoli e autorizzazioni, consulta Ruoli e autorizzazioni.
Ottieni i dettagli di un'operazione a lunga esecuzione
Quando effettui una chiamata che avvia un'operazione, ad esempio la creazione di un certificato, la risposta contiene un nome dell'operazione nel formato: projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID.
Per verificare se l'operazione è stata completata, richiedi i dettagli sull'operazione di destinazione. Se la risposta contiene "done": false o non include il campo "done", l'operazione è ancora in corso. Controlla di nuovo lo stato finché la risposta non mostra "done": true.
gcloud
Per descrivere un'operazione a lunga esecuzione, utilizza il comando certificate-manager
operations describe:
gcloud certificate-manager operations describe OPERATION_ID \
--location="LOCATION"
Sostituisci quanto segue:
OPERATION_ID: l'ID dell'operazione.LOCATION: la località Google Cloud target. La località predefinita èglobal.
API
Per ottenere i dettagli di un'operazione a lunga esecuzione, invia una richiesta GET al metodo projects.locations.operations.get:
GET https://certificatemanager.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID
Sostituisci quanto segue:
PROJECT_ID: l'ID del tuo progetto Google Cloud .LOCATION: la località Google Cloud target. La località predefinita èglobal.OPERATION_ID: l'ID dell'operazione.
Elenca operazioni a lunga esecuzione
Puoi elencare le operazioni per trovare gli ID operazione e monitorare le modifiche attive nel tuo progetto.
gcloud
Per elencare le operazioni in una determinata località, utilizza il comando certificate-manager
operations list:
gcloud certificate-manager operations list \
--location="LOCATION"
Sostituisci quanto segue:
LOCATION: la località Google Cloud target. La località predefinita èglobal.
API
Per elencare le operazioni in una località, invia una richiesta GET al metodo projects.locations.operations.list:
GET https://certificatemanager.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/operations
Sostituisci quanto segue:
PROJECT_ID: l'ID del tuo progetto Google Cloud .LOCATION: la località Google Cloud target. La località predefinita èglobal.
Elimina un'operazione a lunga esecuzione completata
Puoi eliminare una risorsa di operazione completata se non hai più bisogno del risultato. L'eliminazione di un'operazione completata rimuove solo il record dell'operazione e non annulla o inverte le modifiche apportate dall'operazione.
Non puoi eliminare le operazioni utilizzando i comandi gcloud. Utilizza invece l'API REST.
API
Per eliminare un'operazione completata, invia una richiesta DELETE al
metodo projects.locations.operations.delete:
DELETE https://certificatemanager.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID
Sostituisci quanto segue:
PROJECT_ID: l'ID del tuo progetto Google Cloud .LOCATION: la località Google Cloud target. La località predefinita èglobal.OPERATION_ID: l'ID dell'operazione.
Criterio di conservazione
Certificate Manager conserva ed elimina automaticamente le LRO completate in base alle seguenti regole, in ordine di precedenza:
- Meno di 1 ora fa: se un'operazione è stata completata meno di 1 ora fa, Certificate Manager la conserva.
- Più di 1 settimana: se un'operazione è stata completata più di 1 settimana fa, Certificate Manager la elimina.
- Limite massimo: se un'operazione è stata completata tra 1 ora e 1 settimana fa, Certificate Manager conserva fino a 5000 delle operazioni completate più di recente in ogni progetto ed elimina quelle completate meno di recente.
I seguenti esempi mostrano come vengono applicate queste regole:
- Se il tuo progetto ha 10.000 operazioni completate che hanno tutte meno di 1 ora, Certificate Manager conserva tutte le 10.000 operazioni.
- Se il tuo progetto ha 1000 operazioni completate che risalgono tutte a più di una settimana fa, Certificate Manager le elimina tutte.
- Se il tuo progetto ha 10.000 operazioni completate che risalgono tutte a un periodo compreso tra 1 ora e 1 settimana, Certificate Manager conserva solo le 5000 operazioni più recenti.