Introduzione alla risoluzione dei problemi di Cloud Run

Questa pagina descrive le strategie comuni di risoluzione dei problemi relativi agli errori di Cloud Run. Personalized Service Health pubblica tutti gli incidenti di Cloud Run derivanti dall'infrastruttura Google Cloud sottostante per identificare le interruzioni del servizio Google Cloud che interessano i tuoi progetti. Ti consigliamo anche di configurare avvisi sugli eventi di Personalized Service Health. Per informazioni sugli incidenti che interessano tutti Google Cloud i servizi, consulta la dashboard Google Cloud Service Health.

Consulta le seguenti sezioni della Guida alla risoluzione dei problemi di Cloud Run per risolvere i problemi relativi alla risorsa Cloud Run:

Strategie di risoluzione dei problemi di Cloud Run

Le sezioni seguenti spiegano come applicare strategie generali di risoluzione dei problemi per risolvere l'errore. Se continui a riscontrare errori anche dopo aver seguito i passaggi della guida alla risoluzione dei problemi, vedi Passaggi successivi.

Generare log di qualità utilizzando Cloud Logging

La risoluzione dei problemi della risorsa Cloud Run è più semplice se disponi di log validi per il debug. Devi scrivere i log in modo da correlare i log dei container a un log delle richieste.

Con i log correlati, puoi identificare la richiesta che richiede un'ulteriore analisi, trovare la traccia della richiesta e analizzare la causa principale del problema. Per ulteriori informazioni sulla scrittura dei log, vedi Scrivere log dei container.

Analizzare le istanze utilizzando Esplora log

Ogni log delle richieste in Cloud Run contiene un campo instanceId che identifica un'istanza che gestisce la tua richiesta. A seconda del valore di concorrenza che specifichi, una singola istanza può gestire più richieste contemporaneamente.

Quando hai più istanze che emettono log contemporaneamente, devi filtrare le istanze per identificare le richieste sequenziali che portano all'arresto anomalo di un'istanza.

Il filtraggio di un'istanza ti consente di eseguire il debug di problemi di prestazioni specifici relativi ad avvii a freddo o latenze maggiori. Questi problemi potrebbero anche essere legati a variabili dichiarate in un ambito globale, quando il valore viene riutilizzato in richieste simultanee successive. Un esempio è quando crei un singolo oggetto globale pool di connessioni per l'istanza e poi lo utilizzi in più richieste.

Per filtrare un'istanza specifica in Esplora log:

  1. Nella console Google Cloud , vai alla pagina Esplora log:

    Vai a Esplora log

  2. Seleziona un progetto Google Cloud esistente nella parte superiore della pagina o creane uno nuovo.

  3. Seleziona la risorsa Revisione Cloud Run per un servizio o Job Cloud Run per un job.

  4. Espandi una voce di log per filtrare in base a un'istanza specifica.

  5. Fai clic sul valore dell'ID istanza e seleziona Mostra voci corrispondenti.

Mentre esamini le istanze, puoi utilizzare le indagini di Gemini Cloud Assist per ottenere ulteriori informazioni sui log. Per ulteriori informazioni sui diversi modi per avviare un'indagine utilizzando Esplora log, vedi Risolvere i problemi relativi alle indagini di Gemini Cloud Assist nella documentazione di Gemini.

Risolvere le latenze delle richieste impreviste

Se riscontri problemi di latenza, procedi nel seguente modo:

  1. Controlla se la latenza influisce su tutte le richieste alla risorsa Cloud Run o solo su una piccola percentuale. Cloud Run è automaticamente integrato con Cloud Monitoring senza necessità di configurazione.

    Per visualizzare le metriche di latenza delle singole richieste:

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

      Vai a Cloud Run

    2. Seleziona il servizio o i lavori dall'elenco.

    3. Fai clic sulla scheda METRICHE per visualizzare la dashboard Latenze delle richieste.

    Per visualizzare le metriche di latenza in Cloud Monitoring, seleziona dall'elenco Metriche, Revisione Cloud Run > Latenze di richiesta > Latenza di richiesta.

    Per un elenco di tutte le metriche di Cloud Run disponibili e dettagli più approfonditi, consulta le metricheGoogle Cloud in Cloud Monitoring.

  2. Identifica la richiesta con latenza elevata per comprendere l'origine della latenza. Puoi utilizzare Cloud Trace o Cloud Logging per capire quanto tempo ha impiegato una determinata richiesta.

    Per identificare le richieste con latenza elevata utilizzando Cloud Logging, applica il filtro traceSampled=true per correlare i log in Cloud Logging con le tracce in Cloud Trace. Per maggiori informazioni, consulta Integrazione con Cloud Logging.

    A volte, dipendenze come le richieste ad altri servizi potrebbero causare problemi di latenza. Per identificare queste richieste, devi avere una registrazione esplicita che le prenda di mira. Se non generi questi log, potrebbe sembrare che il problema di latenza abbia origine da un servizio Cloud Run.

    Inoltre, devi valutare i picchi di latenza nel contesto della finestra temporale scelta. Il significato di un picco è relativo: un picco elevato in una piccola finestra potrebbe essere trascurabile in una finestra più grande e viceversa. Pertanto, la finestra temporale influisce in modo significativo sull'interpretazione dei dati di latenza.

  3. Prova ad aumentare il numero di istanze minime per ridurre la latenza delle richieste in entrata ed evitare gli avvii a freddo. Ti consigliamo anche di modificare il codice sorgente e regolare le impostazioni di scalabilità per limitare il numero di connessioni a un servizio di backend.

    Per ulteriori informazioni, vedi Ottimizzazione del rendimento.

Risolvere i problemi con l'assistenza di Gemini

Puoi utilizzare la chat di Gemini Cloud Assist per analizzare i log e risolvere gli errori. Con l'assistenza di Gemini, puoi individuare e risolvere rapidamente gli errori sfruttando le funzionalità di analisi dei log dello strumento, risparmiando tempo e fatica.

Per utilizzare Gemini Cloud Assist dalla console Google Cloud , segui questi passaggi:

  1. Assicurati che Gemini Cloud Assist sia configurato per il tuo Google Cloud account utente e il tuo progetto.

  2. Configura l'ambiente di sviluppo Cloud Run nel tuo progetto Google Cloud e assicurati di disporre delle autorizzazioni di deployment appropriate.

  3. Vai alla pagina Cloud Run nella console Google Cloud .

    Vai a Cloud Run

  4. Nella barra degli strumenti della console, seleziona un Google Cloud progetto. Utilizza un progetto associato a un ID progetto che hai inviato dopo aver ottenuto l'accesso a Gemini Cloud Assist.

  5. Fai clic su spark Apri o chiudi la chat dell'AI di Gemini.

    Si apre il riquadro di Gemini.

  6. Se necessario, fai clic su Accetta se accetti i termini.

  7. Se hai una domanda su un'applicazione specifica, fornisci il contesto andando alla pagina che mostra la risorsa prima di porre la domanda. Quando genera una risposta, Gemini include informazioni sulla pagina e sul progetto della console corrente.

  8. Inserisci un prompt nel riquadro Gemini.

    La seguente tabella fornisce alcuni prompt di esempio per l'utilizzo di Gemini Cloud Assist con Cloud Run.

    Prompt Tipo di risposta
    "Puoi spiegarmi questo messaggio di errore che vedo nei log dei container Cloud Run?" Senza un messaggio di errore specifico nel prompt, l'output fornisce indicazioni per la risoluzione dei problemi relativi ai messaggi di errore comuni dei log dei container Cloud Run.
    "Puoi spiegarmi questo messaggio di errore che vedo nei log del mio servizio Cloud Run?

    HTTP 429 The request was aborted because there was no available instance. The Cloud Run service might have reached its maximum container instance limit or the service was otherwise not able to scale to incoming requests. This might be caused by a sudden increase in traffic, a long container startup time or a long request processing time."
    Spiegazione del messaggio di errore di Cloud Run e su come risolverlo.
    "Come posso correggere il seguente messaggio di errore durante il deployment del mio servizio Cloud Run?

    HTTP 404: Not found
    Cause comuni dell'errore e come risolverlo.
    "Il mio servizio Cloud Run continua ad arrestarsi in modo anomalo. Quale potrebbe essere la causa?" Approccio per indagare sulla causa e su come risolvere il problema.
    "Come faccio a sapere se un errore 5XX visualizzato nei log è dovuto a un'interruzione del servizio dell'infrastruttura Google?" Passaggi per determinare la causa dell'errore 5XX.
    "Come faccio a identificare la causa di questo errore: com.google.apps.framework.request.BadRequestException Project PROJECT has serving status SYSTEM_DISABLED and cannot be modified?" Suggerisce che il Google Cloud progetto è stato disattivato amministrativamente a livello di sistema. Fornisce i passaggi per approfondire la causa.
    "Perché posso accedere al mio servizio Cloud Run da un browser se ho impostato ingress=internal?" Una spiegazione del comportamento previsto quando configuri l'impostazione ingress su internal. Sono inclusi altri scenari in cui l'accesso potrebbe sembrare funzionare dal browser.

Per maggiori dettagli, consulta le risorse seguenti:

Utilizzare le indagini di Gemini Cloud Assist

Oltre alla chat interattiva, Gemini Cloud Assist può eseguire analisi più approfondite e automatizzate tramite le indagini di Gemini Cloud Assist. Questa funzionalità è integrata direttamente in flussi di lavoro come Esplora log ed è un potente strumento di analisi delle cause principali.

Quando avvii un'indagine da un errore o da una risorsa specifica, Gemini Cloud Assist analizza log, configurazioni e metriche. Utilizza questi dati per produrre osservazioni e ipotesi classificate sulle probabili cause principali, quindi ti fornisce i passaggi successivi consigliati. Puoi anche trasferire questi risultati a una richiesta di assistenza Google Cloud per fornire un contesto prezioso che può aiutarti a risolvere il problema più rapidamente.

Per saperne di più sui diversi modi per avviare un'indagine, consulta Risolvere i problemi relativi alle indagini di Gemini Cloud Assist nella documentazione di Gemini.

Passaggi successivi

Se non riesci a trovare una soluzione al tuo problema nella documentazione di Cloud Run, segui questi passaggi: