diff --git a/src/client/proposedApi.ts b/src/client/proposedApi.ts index f49d7338975d..70f4b96a44aa 100644 --- a/src/client/proposedApi.ts +++ b/src/client/proposedApi.ts @@ -125,20 +125,16 @@ export function buildProposedApi( const extensions = serviceContainer.get(IExtensions); const envVarsProvider = serviceContainer.get(IEnvironmentVariablesProvider); function sendApiTelemetry(apiName: string, args?: unknown) { - setTimeout(() => - extensions - .determineExtensionFromCallStack() - .then((info) => { - sendTelemetryEvent(EventName.PYTHON_ENVIRONMENTS_API, undefined, { - apiName, - extensionId: info.extensionId, - }); - traceVerbose( - `Extension ${info.extensionId} accessed ${apiName} with args: ${JSON.stringify(args)}`, - ); - }) - .ignoreErrors(), - ); + extensions + .determineExtensionFromCallStack() + .then((info) => { + sendTelemetryEvent(EventName.PYTHON_ENVIRONMENTS_API, undefined, { + apiName, + extensionId: info.extensionId, + }); + traceVerbose(`Extension ${info.extensionId} accessed ${apiName} with args: ${JSON.stringify(args)}`); + }) + .ignoreErrors(); } disposables.push( discoveryApi.onChanged((e) => { diff --git a/src/test/proposedApi.unit.test.ts b/src/test/proposedApi.unit.test.ts index 5dfa54492c6b..750b88438d2f 100644 --- a/src/test/proposedApi.unit.test.ts +++ b/src/test/proposedApi.unit.test.ts @@ -99,6 +99,8 @@ suite('Proposed Extension API', () => { }); teardown(() => { + // Verify each API method sends telemetry regarding who called the API. + extensions.verifyAll(); sinon.restore(); });