Skip to content

Commit 08e046d

Browse files
committed
fix: flare is now source of truth for metrics
1 parent 0769acb commit 08e046d

File tree

1 file changed

+8
-5
lines changed

1 file changed

+8
-5
lines changed

packages/amazonq/src/lsp/chat/messages.ts

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,7 @@ import {
9797
ViewDiffMessage,
9898
referenceLogText,
9999
} from 'aws-core-vscode/amazonq'
100-
import { telemetry, TelemetryBase } from 'aws-core-vscode/telemetry'
100+
import { telemetry } from 'aws-core-vscode/telemetry'
101101
import { isValidResponseError } from './error'
102102
import { decryptResponse, encryptRequest } from '../encryption'
103103
import { getCursorState } from '../utils'
@@ -144,10 +144,13 @@ export function registerLanguageServerEventListener(languageClient: LanguageClie
144144
// This passes through metric data from LSP events to Toolkit telemetry with all fields from the LSP server
145145
languageClient.onTelemetry((e) => {
146146
const telemetryName: string = e.name
147-
148-
if (telemetryName in telemetry) {
149-
languageClient.info(`[VSCode Telemetry] Emitting ${telemetryName} telemetry: ${JSON.stringify(e.data)}`)
150-
telemetry[telemetryName as keyof TelemetryBase].emit(e.data)
147+
languageClient.info(`[VSCode Telemetry] Emitting ${telemetryName} telemetry: ${JSON.stringify(e.data)}`)
148+
try {
149+
// Flare is now the source of truth for metrics instead of depending on each IDE client and toolkit-common
150+
const metric = (telemetry as any).getMetric(telemetryName)
151+
metric?.emit(e.data)
152+
} catch (error) {
153+
languageClient.warn(`[VSCode Telemetry] Failed to emit ${telemetryName}: ${error}`)
151154
}
152155
})
153156
}

0 commit comments

Comments
 (0)