Skip to content

Commit 49dca74

Browse files
add notebook connection troubleshoot content
1 parent 6edae26 commit 49dca74

File tree

2 files changed

+42
-1
lines changed

2 files changed

+42
-1
lines changed
Loading

articles/synapse-analytics/troubleshoot/troubleshoot-synapse-studio.md

Lines changed: 42 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ Running the query with "serverless SQL pool" gives you the "Failed to establish
2929
![symptom 2](media/troubleshooting-synapse-studio/symptom2.png)
3030

3131

32-
## Troubleshooting steps
32+
### Troubleshooting steps
3333

3434
> [!NOTE]
3535
> The following troubleshooting steps are for Chromium Edge and Chrome. You may use other browsers (such as FireFox) with the same troubleshooting steps, but the "Developer Tool" window may have different layout from the screenshots in this TSG. If possible, DO NOT use classical Edge for troubleshooting, as it may show inaccurate information in certain situation.
@@ -96,5 +96,46 @@ Certain browsers support showing timestamps in the "Console" tab. For Chromium E
9696

9797
![show time stamp](media/troubleshooting-synapse-studio/show-time-stamp.png)
9898

99+
## Notebook websocket connection issue
100+
101+
### Symptom
102+
Error message shows: your notebook connection has closed unexpectedly. To re-establish the connection, run the notebook again. Diagnostic information: websocket_close_error (correlation id)
103+
104+
![Notebook websocket connection issue](media/troubleshooting-synapse-studio/notebook-websocket-connection-issue.png)
105+
106+
### Root cause:
107+
Notebook execution depends on establishing a WebSocket connection to the following URL
108+
```
109+
wss://{workspace}.dev.azuresynapse.net/jupyterApi/versions/1/sparkPools/{spark-pool}/api/kernels/{kernel-id}/channels
110+
```
111+
112+
+ **{workspace}** is the name of Synapse workspace,
113+
+ **{spark-pool}** is the name of Spark pool you are currently working on,
114+
+ **{kernel-id}** is a GUID used for distinguishing notebook sessions.
115+
116+
When setting up WebSocket connection, Synapse Studio will include an access token (JWT bearer token) in the Sec-WebSocket-Protocol header of the WebSocket request.
117+
118+
Sometimes, WebSocket request might be blocked, or JWT token in the request header might be redacted in your network environment. This will cause Synapse Notebook unable to establish the connection to our server and run your notebook.
119+
120+
### Action:
121+
122+
If possible, please try to switch your network environment, such as inside/outside corpnet, or access Synapse Notebook on another workstation.
123+
124+
+ If you can run notebook on the same workstation but in a different network environment, please work with your network administrator to find out whether the WebSocket connection has been blocked.
125+
126+
+ If you can run notebook on a different workstation but in the same network environment, please ensure you didn’t install any browser plugin that may block the WebSocket request.
127+
128+
Otherwise, please contact your network administrator and ensure the outbound WebSocket requests with the following URL pattern is allowed and their request header is not redacted:
129+
130+
```
131+
wss://{workspace}.dev.azuresynapse.net/{path}
132+
```
133+
+ **{workspace}** is the Synapse workspace name;
134+
135+
+ **{path}** indicates any sub-path (i.e., slash character is included) in URI.
136+
137+
This URL pattern is looser than the one shown in “Root Cause” section because it allows for us adding new WebSocket-dependent features to Synapse without any potential connectivity issue in the future.
138+
139+
99140
## Next steps
100141
If the previous steps don't help to resolve your issue [Create a support ticket](../sql-data-warehouse/sql-data-warehouse-get-started-create-support-ticket.md?bc=%2fazure%2fsynapse-analytics%2fbreadcrumb%2ftoc.json&toc=%2fazure%2fsynapse-analytics%2ftoc.json)

0 commit comments

Comments
 (0)