Partager via


Résolution des problèmes liés à Synapse Studio

Ce guide de résolution des problèmes fournit des instructions sur les informations à fournir lors de l’ouverture d’un ticket de support sur des problèmes de connectivité réseau. Avec les informations appropriées, nous pouvons peut-être résoudre le problème plus rapidement.

La publication échoue si la session reste inactive

Symptôme

Dans certains cas, si votre session de navigation est restée inactive pendant une période prolongée, votre tentative de publication peut échouer en raison d’un message concernant l’expiration du jeton :

ERROR: Unauthorized Inner error code: ExpiredAuthenticationToken Message: Token Authentication failed with SecurityTokenExpiredException - MISE12034: AuthenticationTicketProvider Name:AuthenticationTicketProvider, GetVersion:1.9.2.0.;

Cause racine et atténuation

La gestion de l’expiration des jetons dans Synapse Studio nécessite une attention minutieuse, en particulier lorsque vous travaillez dans un espace de travail en direct sans intégration Git. Voici comment gérer votre session pour éviter de perdre le travail :

  • Avec intégration Git :
    • Effectuez régulièrement la validation de vos modifications. Ainsi, même si vous devez actualiser votre navigateur pour renouveler votre session, votre travail est stocké en toute sécurité.
    • Après la validation, vous pouvez actualiser votre navigateur pour réinitialiser la session, puis continuer à publier vos modifications.
  • Sans intégration Git :
    • Avant les pauses ou les périodes d’inactivité, essayez de publier vos modifications. Il est essentiel de se rappeler que si votre session est restée inactive pendant une longue période, vous risquez de rencontrer une erreur d’expiration du jeton lorsque vous tenterez de publier à votre retour.
    • Si vous êtes préoccupé par le risque de perdre des modifications non enregistrées en raison d’une actualisation nécessaire, envisagez de structurer vos périodes de travail de manière à inclure des actions fréquentes d’enregistrement et de publication, et évitez de laisser la session inactive pendant de longues périodes.

Important

Dans un espace de travail en direct sans Git, si vous constatez que votre session a été inactive et que vous êtes confronté à l’expiration du jeton, vous êtes confronté à un dilemme : rafraîchir la page et risquer de perdre les modifications non sauvegardées, ou tenter de publier si le jeton n’a pas encore expiré. Pour minimiser ce risque, essayez de garder des sessions actives ou de sauvegarder fréquemment, en fonction de la nature de votre travail et de la configuration de l’environnement.

Problème de connectivité avec le service Pool SQL serverless

Symptôme 1

L’option « Pool SQL serverless » est grisée dans la liste déroulante Se connecter à.

Capture d’écran du Portail Azure de la liste déroulante Se connecter à.

Symptôme 2

L’exécution de la requête contenant « Pool SQL serverless » génère le message d’erreur « Échec de l’établissement de la connexion au serveur ».

Capture d’écran du Portail Azure de l’éditeur de requête montrant le message d’erreur.

Étapes de résolution des problèmes

Remarque

Les étapes de résolution des problèmes suivantes sont destinées à Chromium Edge et Chrome. Vous pouvez utiliser d’autres navigateurs (tels que Firefox) avec les mêmes étapes de résolution des problèmes, mais la fenêtre « Outil développeur » peut avoir une disposition différente de celles des captures d’écran. Autant que possible, n’utilisez PAS la version classique de Edge pour la résolution des problèmes, car elle peut afficher des informations inexactes dans certaines situations.

Ouvrez le panneau Informations de diagnostic, puis sélectionnez le bouton Télécharger le diagnostic. Conservez les informations téléchargées pour le signalement d’erreurs. Vous pouvez à la place copier l’« ID de session » et le joindre lors de l’ouverture du ticket de support.

Capture d’écran du Portail Azure des informations de diagnostic.

Pour commencer à résoudre des problèmes, réessayez l’opération que vous avez effectuée dans Synapse Studio.

  • Pour le symptôme 1, sélectionnez le bouton Actualiser sous l’onglet Script SQL et vérifiez si vous pouvez voir « Pool SQL serverless ».
  • Pour le symptôme 2, essayez de réexécuter la requête pour voir si elle s’exécute correctement.

Si le problème persiste, appuyez sur F12 dans votre navigateur pour ouvrir Outils de développement (DevTools).

Dans la fenêtre Outils de développement, basculez vers le panneau Réseau. Sélectionnez le bouton Effacer dans la barre d’outils du panneau Réseau, si nécessaire.

Assurez-vous que l’option Désactiver le cache dans le panneau Réseau est activée.

Réessayez l’opération que vous avez effectuée dans Azure Synapse Studio. Vous pouvez voir de nouveaux éléments affichés dans la liste Réseau dans Outils de développement. Notez votre heure système actuelle, à fournir dans le ticket de support.

Recherchez l’élément dont la colonne URL correspond au modèle suivant :

https://[*A*]-ondemand.database.windows.net:1443/databases/[*B*]/query?api-version=2018-08-01-preview&application=ArcadiaSqlOnDemandExplorer

*A* est le nom de votre espace de travail et -ondemand peut être -sqlod, et où *B* doit être un nom de base de données, tel que master. Il doit y avoir au plus deux éléments avec la même valeur d’URL, mais des valeurs de méthode différentes : OPTIONS etPOST. Vérifiez si ces deux éléments contiennent 200 ou 20x dans la colonne d’état, où x peut être n’importe quel chiffre unique.

Si l’un d’eux contient autre chose que 20x et :

  • L’état commence par « (failed) », élargissez la colonne État ou pointez sur le texte de l’état pour le voir en entier. Incluez le texte ou la capture d’écran lors de l’ouverture du ticket de support.

    Capture d’écran des Outils de développement de Microsoft Edge montrant le texte de l’état.

    • Si vous voyez ERR_NAME_NOT_RESOLVED et avez créé votre espace de travail depuis moins de 10 minutes, patientez 10 minutes, puis réessayez pour voir si le problème persiste.
    • Si vous voyez ERR_INTERNET_DISCONNECTED ou ERR_NETWORK_CHANGED, cela peut indiquer que la connexion réseau de votre PC rencontre des problèmes. Vérifiez votre connexion réseau, puis retentez l’opération.
    • Si vous voyez ERR_CONNECTION_RESET, ERR_SSL_PROTOCOL_ERROR ou d’autres codes d’erreur contenant « SSL », cela peut indiquer que votre configuration SSL locale rencontre des problèmes ou que votre administrateur réseau a bloqué l’accès au serveur du pool SQL serverless. Ouvrez un ticket de support et joignez le code d’erreur dans la description.
    • Si vous voyez ERR_NETWORK_ACCESS_DENIED, vous devrez peut-être vérifier auprès de l’administrateur si la stratégie de votre pare-feu local a bloqué l’accès au domaine *.database.windows.net ou au port distant 1443.
    • Si vous le souhaitez, essayez la même opération immédiatement sur un ordinateur ou un environnement réseau différents pour résoudre un problème de configuration réseau sur votre PC.
  • L’état est 40x, 50xou d’autres valeurs, sélectionnez le ou les éléments pour afficher les détails. Vous devez voir les détails de l’élément à droite. Recherchez la section « Response Header », puis vérifiez s’il existe un élément nommé « access-control-allow-origin ». Si c’est le cas, vérifiez s’il a l’une des valeurs suivantes :

    • * (astérisque unique)
    • https://web.azuresynapse.net/ (ou autre valeur par laquelle commence le texte dans la barre d’adresse de votre navigateur)

Si l’en-tête de réponse contient l’une des valeurs ci-dessus, cela signifie que nous devons avoir déjà collecté les informations de la défaillance. Vous pouvez ouvrir un ticket de support si nécessaire et éventuellement joindre la capture d’écran des détails de l’élément.

Si vous ne voyez pas l’en-tête ou si l’en-tête n’a pas l’une des valeurs mentionnées ci-dessus, joignez une capture d’écran des détails de l’élément lorsque vous ouvrez le ticket.

Capture d’écran des Outils de développement de Microsoft Edge montrant les détails de l’élément.

Si les étapes ci-dessus ne résolvent pas votre problème, vous devrez peut-être ouvrir un ticket de support. Lorsque vous soumettez votre ticket de support, incluez l’« ID de session » ou les « Informations de diagnostic », téléchargés au début de ce guide.

Lorsque vous signalez le problème, vous pouvez éventuellement prendre une capture d’écran de l’onglet Console dans Outils de développement et l’attacher au ticket de support. Faites défiler le contenu et faites plusieurs captures d’écran si nécessaire pour capturer l’intégralité du message.

Capture d’écran de la console de l’outil développeur Microsoft Edge.

Si vous joignez des captures d’écran, indiquez l’heure (ou un intervalle de temps estimé) à laquelle vous avez pris les captures d’écran. Cela nous aidera à examiner le problème.

Certains navigateurs prennent en charge l’affichage des horodatages sous l’onglet Console. Pour Chromium Edge/Chrome, ouvrez la boîte de dialogue « Paramètres » dans Outils de développement, puis vérifiez « Afficher les horodatages » sous l’onglet « Préférences ».

Capture d’écran des paramètres de la console de l’outil Développeur Microsoft Edge.

Capture d’écran de la console de l’outil Développeur Microsoft Edge, montrant l’horodatage.

Problème de connexion du websocket du notebook

Symptôme

Le message d’erreur affiche : Your notebook connection has closed unexpectedly. To re-establish the connection, run the notebook again. Diagnostic information: websocket_close_error (correlation id)

Capture d’écran du Portail Azure montrant le problème de connexion du websocket du notebook.

Cause racine :

L’exécution du notebook dépend de l’établissement d’une connexion WebSocket à l’URL suivante :

wss://{workspace}.dev.azuresynapse.net/jupyterApi/versions/1/sparkPools/{spark-pool}/api/kernels/{kernel-id}/channels 
  • {workspace} est le nom de l’espace de travail Synapse
  • {spark-pool} est le nom du pool Spark que vous utilisez actuellement
  • {kernel-id} est un GUID utilisé pour distinguer les sessions de notebook

Lors de la configuration de la connexion WebSocket, Synapse Studio inclut un jeton d’accès (jeton du porteur Microsoft Entra JWT) dans l’en-tête Sec-WebSocket-Protocol de la requête WebSocket.

Parfois, la requête WebSocket peut être bloquée ou le JWT dans l’en-tête de cette requête peut être effacé dans votre environnement réseau. Le notebook Synapse n’est alors pas en mesure d’établir la connexion à notre serveur et d’exécuter votre notebook.

Action :

Si possible, essayez de basculer votre environnement réseau, par exemple en passant à l’intérieur/l’extérieur du réseau d’entreprise ou d’accéder au notebook Synapse sur une autre station de travail.

  • Si vous pouvez exécuter le notebook sur la même station de travail, mais dans un autre environnement réseau, contactez votre administrateur réseau pour déterminer si la connexion WebSocket a été bloquée.

  • Si vous pouvez exécuter le bloc-notes sur une autre station de travail, mais dans le même environnement réseau, vérifier si vous n’avez pas installé un plug-in de navigateur qui pourrait bloquer la requête WebSocket.

Dans le cas contraire, contactez votre administrateur réseau et vérifiez que les demandes WebSocket sortantes avec le modèle d’URL suivant sont autorisées et que l’en-tête de la requête n’est pas rédigé : wss://{workspace}.dev.azuresynapse.net/{path}

  • {workspace} est le nom de l’espace de travail Synapse
  • {path} indique tout sous-chemin dans l’URI (par exemple, un caractère barre oblique est inclus)

Ce modèle d’URL est plus souple que celui indiqué dans la section « Cause racine », car il permet d’ajouter de nouvelles fonctionnalités dépendantes de WebSocket à Synapse, sans aucun problème de connectivité potentiel à l’avenir.

La file d’attente de messages est complète ou terminée et ne peut pas accepter plus d’éléments

Symptôme

Si vous ajoutez un bloc-notes contenant plus de 256 cellules de code à un pipeline, les exécutions de pipeline échouent avec le code d’erreur 6002 et le message d’erreur : MessageQueueFullException: The message queue is full or is completed and cannot accept more items.

Capture d’écran du Portail Azure montrant le code d’erreur 6002 dans un exemple d’étape de notebook.

Cause racine :

Il existe une limitation de 256 cellules lors de l’exécution d’une activité de notebook Synapse à partir d’un pipeline.

Action :

Vous pouvez fusionner des cellules afin de réduire le nombre de cellules en dessous de 256.

Étape suivante

Si les étapes précédentes ne permettent pas de résoudre le problème, Créez un ticket de support