Présentation du dépannage de Cloud Run

Cette page décrit les stratégies de dépannage courantes pour les erreurs Cloud Run. Personalized Service Health publie tous les incidents Cloud Run qui proviennent de l' infrastructure Google Cloud sous-jacente pour identifier les Google Cloud interruptions de service ayant un impact sur vos projets. Vous devez également envisager de configurer des alertes sur les événements Personalized Service Health. Pour en savoir plus sur les incidents affectant tous les Google Cloud services, consultez le Google Cloud tableau de bord Service Health.

Consultez les sections suivantes du guide de dépannage de Cloud Run pour résoudre les problèmes liés à votre ressource Cloud Run :

Stratégies de dépannage de Cloud Run

Les sections suivantes expliquent comment appliquer des stratégies de dépannage générales pour résoudre votre erreur. Si vous continuez à rencontrer des erreurs même après avoir suivi les étapes du guide de dépannage, consultez la section Étapes suivantes.

Générer des journaux de qualité à l'aide de Cloud Logging

Il est plus facile de résoudre les problèmes liés à votre ressource Cloud Run si vous disposez de journaux de qualité pour le débogage. Vous devez écrire des journaux de manière à corréler les journaux de conteneur avec un journal de requête.

Grâce aux journaux corrélés, vous pouvez identifier la requête qui nécessite une analyse plus approfondie, trouver la trace de la requête et analyser la cause du problème. Pour en savoir plus sur l'écriture de journaux, consultez la section Écrire des journaux de conteneur.

Examiner les instances à l'aide de l'explorateur de journaux

Chaque journal de requête dans Cloud Run contient un instanceId champ qui identifie une instance qui gère votre requête. En fonction de la valeur de simultanéité que vous spécifiez, une seule instance peut gérer plusieurs requêtes en même temps.

Lorsque plusieurs instances émettent des journaux en même temps, vous devez filtrer vos instances pour identifier les requêtes séquentielles qui entraînent un plantage d'instance.

Le filtrage d'une instance vous permet de déboguer des problèmes de performances spécifiques liés aux démarrages à froid ou à l'augmentation des latences. Ces problèmes peuvent également être liés à des variables déclarées dans un champ d'application global, lorsque la valeur est réutilisée dans des requêtes simultanées ultérieures. Par exemple, lorsque vous créez un objet global de pool de connexion unique pour l'instance, puis que vous l'utilisez dans plusieurs requêtes.

Pour filtrer une instance spécifique dans l'explorateur de journaux, procédez comme suit :

  1. Dans la Google Cloud console, accédez à la page Explorateur de journaux.

    Accéder à l'explorateur de journaux

  2. Sélectionnez un projetexistant en haut de la page ou créez-en un nouveau. Google Cloud

  3. Sélectionnez la ressource Cloud Run Revision pour un service ou Cloud Run Job pour un job.

  4. Développez une entrée de journal pour filtrer une instance spécifique.

  5. Cliquez sur la valeur de l'ID d'instance, puis sélectionnez Afficher les entrées correspondantes.

Lorsque vous examinez des instances, vous pouvez utiliser Gemini Cloud Assist Investigations pour obtenir des insights supplémentaires sur vos journaux. Pour en savoir plus sur les différentes façons de lancer une investigation à l'aide de l'explorateur de journaux, consultez Résoudre les problèmes à l'aide des investigations Gemini Cloud Assist dans la documentation Gemini.

Résoudre les latences de requête inattendues

Si vous rencontrez des problèmes de latence, procédez comme suit :

  1. Vérifiez si la latence affecte toutes les requêtes adressées à votre ressource Cloud Run ou seulement un petit pourcentage. Cloud Run est automatiquement intégré à Cloud Monitoring, sans aucune installation ni configuration requise.

    Pour afficher les métriques de latence des requêtes individuelles, procédez comme suit :

    1. Dans la Google Cloud console, accédez à la page Cloud Run :

      Accédez à Cloud Run

    2. Sélectionnez un service ou un job dans les listes disponibles dans le volet de navigation de gauche.

    3. Cliquez sur l'onglet MÉTRIQUES pour afficher le tableau de bord Latences des requêtes.

    Pour afficher les métriques de latence dans Cloud Monitoring, sélectionnez Révision dans Cloud Run > Latences des requêtes > Latence des requêtes dans la liste Métriques.

    Pour obtenir la liste complète des métriques Cloud Run disponibles et des informations plus détaillées, consultez la section Google Cloud Métriques dans Cloud Monitoring.

  2. Identifiez la requête présentant une latence élevée pour comprendre la source de la latence. Vous pouvez utiliser Cloud Trace ou Cloud Logging pour savoir combien de temps une requête particulière a pris.

    Pour identifier les requêtes présentant une latence élevée à l'aide de Cloud Logging, appliquez le filtre traceSampled=true pour corréler les journaux dans Cloud Logging avec les traces dans Cloud Trace. Pour en savoir plus, consultez la section Intégrer à Cloud Logging.

    Parfois, des dépendances telles que des requêtes adressées à d'autres services peuvent entraîner des problèmes de latence. Pour identifier ces requêtes, vous devez disposer d'une journalisation explicite ciblant les requêtes. Si vous ne générez pas ces journaux, cela peut apparaître comme un problème de latence provenant d'un service Cloud Run.

    De plus, vous devez envisager d'évaluer les pics de latence dans le contexte de la période choisie. L'importance d'un pic est relative : un pic important dans une petite fenêtre peut être négligeable dans une fenêtre plus grande, et vice versa. Par conséquent, la période a un impact significatif sur l'interprétation des données de latence.

  3. Essayez d'augmenter le nombre d'instances minimales pour réduire la latence des requêtes entrantes, et éviter les démarrages à froid. Vous devez également envisager de modifier votre code source, et d'ajuster les paramètres de scaling pour limiter le nombre de connexions à un service de backend.

    Pour en savoir plus, consultez la section Optimiser les performances.

Résoudre les problèmes de connectivité

Si votre service Cloud Run rencontre des problèmes de connectivité, envisagez les stratégies et outils suivants pour diagnostiquer le problème :

  • Side-car PCAP : pour une analyse plus approfondie au niveau du réseau, déployez un side-car PCAP avec votre service Cloud Run. Ce conteneur side-car effectue une capture de paquets à l'aide de tcpdump dans le même espace de noms réseau. Le side-car se dissocie du conteneur d'entrée principal et ne nécessite aucune modification pour effectuer une capture de paquets. Les side-cars utilisent également leurs propres ressources, ce qui empêche tcpdump de concurrencer les ressources que vous allouez au service principal.

  • Tests d'intelligence réseau et de connectivité pour les révisions et fonctions Cloud Run: effectuez des vérifications automatisées sur le chemin réseau entre votre ressource Cloud Run et un point de terminaison. Cela vous aide à trouver les erreurs de configuration qui peuvent bloquer le trafic vers ou depuis votre ressource Cloud Run lorsque vous vous connectez à une instance de VM, à une adresse IP ou à un service géré par Google.

  • Examiner les journaux de votre ressource Cloud Run : les journaux affichent des messages d'erreur concernant les problèmes de connexion, tels que les échecs, les délais d'attente ou les connexions refusées. Ces journaux indiquent souvent si le problème de connexion concerne votre application ou le réseau.

Résoudre les problèmes avec l'aide de Gemini

Vous pouvez utiliser Gemini Cloud Assist chat pour analyser les journaux et résoudre les erreurs. Avec l'aide de Gemini, vous pouvez rapidement identifier et résoudre les erreurs en tirant parti des fonctionnalités d'analyse des journaux de l'outil, ce qui vous permet de gagner du temps et de réduire vos efforts.

Pour utiliser Gemini Cloud Assist à partir de la Google Cloud console, procédez comme suit :

  1. Assurez-vous que Gemini Cloud Assist est configuré pour votre Google Cloud compte utilisateur et votre projet.

  2. Configurez votre environnement de développement Cloud Run dans votre Google Cloud projet et assurez-vous de disposer des autorisations de déploiement appropriées.

  3. Accédez à la page Cloud Run de la Google Cloud console.

    Accédez à Cloud Run

  4. Dans la barre d'outils de la console, sélectionnez un Google Cloud projet. Utilisez un projet associé à un ID de projet que vous avez envoyé après avoir obtenu l'accès à Gemini Cloud Assist.

  5. Cliquez sur l'icône en forme d'étincelle spark Ouvrir ou fermer le chat IA Gemini.

    Le panneau Gemini s'ouvre.

  6. Si nécessaire, cliquez sur Accepter si vous acceptez les conditions.

  7. Si vous avez une question sur une application spécifique, fournissez le contexte en accédant à la page qui affiche votre ressource avant de poser votre question. Lors de la génération d'une réponse, Gemini inclut des informations sur la page et le projet de la console actuels.

  8. Saisissez un prompt dans le panneau Gemini.

    Le tableau suivant fournit quelques exemples de prompts pour utiliser Gemini Cloud Assist avec Cloud Run.

    Prompt (Requête) Type de réponse
    "Pouvez-vous m'expliquer ce message d'erreur que je vois dans les journaux de mon conteneur Cloud Run ?" Sans message d'erreur spécifique dans le prompt, la sortie fournit des conseils de dépannage pour les messages d'erreur courants des journaux de conteneur Cloud Run.
    "Pouvez-vous m'expliquer ce message d'erreur que je vois dans les journaux de mon service 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."
    Explication du message d'erreur Cloud Run et de la manière de le résoudre.
    "Comment corriger le message d'erreur suivant lors du déploiement de mon service Cloud Run ?

    HTTP 404: Not found
    Causes courantes de l'erreur et comment la résoudre.
    "Mon service Cloud Run continue de planter. Quelle pourrait en être la cause ?" Approche pour examiner la cause et résoudre le problème.
    "Comment savoir si une erreur 5XX qui s'est produite dans les journaux est due à une panne du service d'infrastructure Google ?" Étapes permettant de déterminer la cause de l'erreur 5XX.
    "Comment identifier la cause de cette erreur : com.google.apps.framework.request.BadRequestException Project PROJECT has serving status SYSTEM_DISABLED and cannot be modified ?" Suggère que le Google Cloud projet a été désactivé administrativement au niveau du système. Fournit des étapes pour approfondir l'enquête.
    "Pourquoi puis-je accéder à mon service Cloud Run depuis un navigateur si j'ai défini ingress=internal ?" Explication du comportement attendu lors de la configuration du paramètre ingress sur internal. Inclut d'autres scénarios dans lesquels l'accès peut sembler fonctionner depuis votre navigateur.

Pour en savoir plus, consultez les ressources suivantes :

Utiliser Gemini Cloud Assist Investigations

En plus du chat interactif, Gemini Cloud Assist peut effectuer une analyse plus automatisée et approfondie grâce à Gemini Cloud Assist Investigations. Cette fonctionnalité est intégrée directement aux workflows tels que l'explorateur de journaux et constitue un outil puissant d'analyse des causes.

Lorsque vous lancez une investigation à partir d'une erreur ou d'une ressource spécifique, Gemini Cloud Assist analyse les journaux, les configurations et les métriques. Il utilise ces données pour produire des observations et des hypothèses classées sur les causes probables, puis vous fournit les étapes suivantes recommandées. Si vous disposez d'une formule d'assistance, vous pouvez également transférer les résultats de l'investigation vers une Google Cloud demande d'assistance, en fournissant un contexte supplémentaire qui peut vous aider à résoudre votre problème plus rapidement.

Pour les services ou les fonctions déployés à partir du code source, les investigations peuvent également fournir des suggestions de correction de code dans l'onglet "Source" de la console Cloud Run pour vous aider à résoudre les problèmes de compilation et de déploiement.

Pour en savoir plus sur les différentes façons de lancer une investigation, consultez Résoudre les problèmes à l'aide des investigations Gemini Cloud Assist dans la documentation Gemini.

Étape suivante

Si vous ne trouvez pas de solution à votre problème dans la documentation Cloud Run, procédez comme suit :