Skip to content

Commit ded49d2

Browse files
committed
Fix SSE errors not logging correctly
1 parent 3e5ca51 commit ded49d2

File tree

2 files changed

+9
-5
lines changed

2 files changed

+9
-5
lines changed

src/api-helper.ts

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,15 @@
1+
import { isApiError, isApiErrorResponse } from "coder/site/src/api/errors"
12
import { Workspace, WorkspaceAgent } from "coder/site/src/api/typesGenerated"
23
import { z } from "zod"
34

45
export function errToStr(error: unknown, def: string) {
56
if (error instanceof Error && error.message) {
67
return error.message
7-
}
8-
if (typeof error === "string" && error.trim().length > 0) {
8+
} else if (isApiError(error)) {
9+
return error.response.data.message
10+
} else if (isApiErrorResponse(error)) {
11+
return error.message
12+
} else if (typeof error === "string" && error.trim().length > 0) {
913
return error
1014
}
1115
return def

src/workspaceMonitor.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -63,8 +63,8 @@ export class WorkspaceMonitor implements vscode.Disposable {
6363
}
6464
})
6565

66-
eventSource.addEventListener("error", (error) => {
67-
this.notifyError(error)
66+
eventSource.addEventListener("error", (event) => {
67+
this.notifyError(event.data)
6868
})
6969

7070
// Store so we can close in dispose().
@@ -184,7 +184,7 @@ export class WorkspaceMonitor implements vscode.Disposable {
184184
private notifyError(error: unknown) {
185185
const message = errToStr(error, "No error message was provided")
186186
this.storage.writeToCoderOutputChannel(message)
187-
vscode.window.showErrorMessage(`Failed to monitor workspace: ${message}`)
187+
vscode.window.showErrorMessage(`Got error while monitoring workspace: ${message}`)
188188
}
189189

190190
private updateContext(workspace: Workspace) {

0 commit comments

Comments
 (0)