Skip to content

Commit 9fad643

Browse files
authored
Ensure telemetry measurements are sent correctly (microsoft#23850)
1 parent 066b9c3 commit 9fad643

File tree

1 file changed

+21
-15
lines changed

1 file changed

+21
-15
lines changed

src/client/pythonEnvironments/base/locators/common/nativePythonTelemetry.ts

Lines changed: 21 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,8 @@ export type RefreshPerformance = {
7979
};
8080
};
8181

82+
let refreshTelemetrySent = false;
83+
8284
export function sendNativeTelemetry(data: NativePythonTelemetry): void {
8385
switch (data.event) {
8486
case 'MissingCondaEnvironments': {
@@ -98,26 +100,30 @@ export function sendNativeTelemetry(data: NativePythonTelemetry): void {
98100
break;
99101
}
100102
case 'RefreshPerformance': {
101-
sendTelemetryEvent(EventName.NATIVE_FINDER_PERF, undefined, {
103+
if (refreshTelemetrySent) {
104+
break;
105+
}
106+
refreshTelemetrySent = true;
107+
sendTelemetryEvent(EventName.NATIVE_FINDER_PERF, {
102108
duration: data.data.refreshPerformance.total,
103109
breakdownGlobalVirtualEnvs: data.data.refreshPerformance.breakdown.GlobalVirtualEnvs,
104110
breakdownLocators: data.data.refreshPerformance.breakdown.Locators,
105111
breakdownPath: data.data.refreshPerformance.breakdown.Path,
106112
breakdownWorkspaces: data.data.refreshPerformance.breakdown.Workspaces,
107-
locatorConda: data.data.refreshPerformance.locators.Conda,
108-
locatorHomebrew: data.data.refreshPerformance.locators.Homebrew,
109-
locatorLinuxGlobalPython: data.data.refreshPerformance.locators.LinuxGlobalPython,
110-
locatorMacCmdLineTools: data.data.refreshPerformance.locators.MacCmdLineTools,
111-
locatorMacPythonOrg: data.data.refreshPerformance.locators.MacPythonOrg,
112-
locatorMacXCode: data.data.refreshPerformance.locators.MacXCode,
113-
locatorPipEnv: data.data.refreshPerformance.locators.PipEnv,
114-
locatorPoetry: data.data.refreshPerformance.locators.Poetry,
115-
locatorPyEnv: data.data.refreshPerformance.locators.PyEnv,
116-
locatorVenv: data.data.refreshPerformance.locators.Venv,
117-
locatorVirtualEnv: data.data.refreshPerformance.locators.VirtualEnv,
118-
locatorVirtualEnvWrapper: data.data.refreshPerformance.locators.VirtualEnvWrapper,
119-
locatorWindowsRegistry: data.data.refreshPerformance.locators.WindowsRegistry,
120-
locatorWindowsStore: data.data.refreshPerformance.locators.WindowsStore,
113+
locatorConda: data.data.refreshPerformance.locators.Conda || 0,
114+
locatorHomebrew: data.data.refreshPerformance.locators.Homebrew || 0,
115+
locatorLinuxGlobalPython: data.data.refreshPerformance.locators.LinuxGlobalPython || 0,
116+
locatorMacCmdLineTools: data.data.refreshPerformance.locators.MacCmdLineTools || 0,
117+
locatorMacPythonOrg: data.data.refreshPerformance.locators.MacPythonOrg || 0,
118+
locatorMacXCode: data.data.refreshPerformance.locators.MacXCode || 0,
119+
locatorPipEnv: data.data.refreshPerformance.locators.PipEnv || 0,
120+
locatorPoetry: data.data.refreshPerformance.locators.Poetry || 0,
121+
locatorPyEnv: data.data.refreshPerformance.locators.PyEnv || 0,
122+
locatorVenv: data.data.refreshPerformance.locators.Venv || 0,
123+
locatorVirtualEnv: data.data.refreshPerformance.locators.VirtualEnv || 0,
124+
locatorVirtualEnvWrapper: data.data.refreshPerformance.locators.VirtualEnvWrapper || 0,
125+
locatorWindowsRegistry: data.data.refreshPerformance.locators.WindowsRegistry || 0,
126+
locatorWindowsStore: data.data.refreshPerformance.locators.WindowsStore || 0,
121127
});
122128
break;
123129
}

0 commit comments

Comments
 (0)