Partager via


Diagnostiquer et résoudre des problèmes liés aux exceptions non disponibles du service Azure Cosmos DB

S’APPLIQUE À : NoSQL

Le kit de développement logiciel (SDK) n’a pas pu se connecter à Azure Cosmos DB. Ce scénario peut être temporaire ou permanent en fonction des conditions réseau.

Il est important de vérifier que la conception de l’application suit notre guide pour concevoir des applications résilientes avec des kits SDK Azure Cosmos DB afin qu’elle réagisse correctement à différentes conditions réseau. Votre application doit avoir des nouvelles tentatives en place pour les erreurs non disponibles du service.

Lors de l’évaluation du cas pour les erreurs de service indisponibles :

  • Quel est l’effet mesuré en termes d’opérations affectées par rapport aux opérations réussies ? Est-ce que cela entre dans le cadre des contrats SLA de service ?
  • La latence ou la disponibilité P99 sont-elles affectées ?
  • Les échecs affectent-ils toutes les instances de votre application ou uniquement un sous-ensemble ? Lorsque le problème est réduit à un sous-ensemble d’instances, il s’agit généralement d’un problème lié à ces instances.

Étapes de dépannage

La liste suivante répertorie les causes connues et les solutions pour les exceptions de service non disponible.

Vérifier le code de sous-état

Dans certaines conditions, l’erreur HTTP 503 Service Indisponible inclut un code de sous-état qui permet d’identifier la cause.

Code de sous-état Description
20001 L’erreur de service indisponible s’est produite car il existe des problèmes de connectivité côté client (échecs de tentative de connexion). Le client a tenté de récupérer en effectuant une nouvelle tentative, mais toutes les nouvelles tentatives ont échoué.
20002 L’erreur de service indisponible s’est produite car il existe des dépassements du délai d’expiration côté client. Le client a tenté de récupérer en effectuant une nouvelle tentative, mais toutes les nouvelles tentatives ont échoué.
20003 L’erreur de service indisponible s’est produite car il existe des erreurs d’E/S sous-jacentes liées au système d’exploitation. Consultez les détails de l’exception relatifs à l’erreur d’E/S associée.
20004 L’erreur de service indisponible s’est produite car le processeur de l’ordinateur client est surchargé.
20005 L’erreur de service indisponible s’est produite, car le pool de threads de l’ordinateur client est privé de ressources. Vérifiez les appels asynchrones bloquants potentiels dans votre code.
20006 La connexion entre le service et le client a été interrompue ou arrêtée de manière inattendue.
>= 21001 Cette erreur de service indisponible s’est produite en raison d’une condition de service temporaire. Vérifiez les conditions de la section ci-dessus. Confirmez si vous avez des stratégies de nouvelle tentative en place. Si le volume de ces erreurs est élevé par rapport aux réussites, contactez le support Azure.

Les ports requis sont bloqués

Vérifiez que tous les ports requis sont activés.

Problèmes de connectivité temporaires côté client

Des exceptions de non disponibilité du service peuvent apparaître lorsqu’il existe des problèmes de connectivité temporaires qui provoquent des délais d’expiration ; vous pouvez effectuer de nouvelles tentatives en toute sécurité en suivant les recommandations de conception.

Suivez les étapes de résolution des problèmes liés à l’expiration des délais de requête pour la résoudre.

Interruption de service

Vérifiez l’état d’Azure pour voir s’il existe un problème en cours.

Étapes suivantes

  • Diagnostiquer et résoudre des problèmes lors de l’utilisation du kit de développement logiciel (SDK) .NET Azure Cosmos DB.
  • Diagnostiquer et résoudre des problèmes lors de l’utilisation du SDK Java Azure Cosmos DB.
  • Découvrez les recommandations relatives aux performances pour .NET.
  • Découvrez les recommandations relatives aux performances pour Java.