File tree Expand file tree Collapse file tree 3 files changed +51
-0
lines changed
Expand file tree Collapse file tree 3 files changed +51
-0
lines changed Original file line number Diff line number Diff line change @@ -4,6 +4,8 @@ export enum EventNames {
44
55 ENVIRONMENT_MANAGER_REGISTERED = 'ENVIRONMENT_MANAGER.REGISTERED' ,
66 PACKAGE_MANAGER_REGISTERED = 'PACKAGE_MANAGER.REGISTERED' ,
7+ ENVIRONMENT_MANAGER_SELECTED = 'ENVIRONMENT_MANAGER.SELECTED' ,
8+ PACKAGE_MANAGER_SELECTED = 'PACKAGE_MANAGER.SELECTED' ,
79
810 VENV_USING_UV = 'VENV.USING_UV' ,
911 VENV_CREATION = 'VENV.CREATION' ,
@@ -42,6 +44,24 @@ export interface IEventNamePropertyMapping {
4244 managerId : string ;
4345 } ;
4446
47+ /* __GDPR__
48+ "environment_manager.selected": {
49+ "managerId" : { "classification": "SystemMetaData", "purpose": "FeatureInsight", "owner": "karthiknadig" }
50+ }
51+ */
52+ [ EventNames . ENVIRONMENT_MANAGER_SELECTED ] : {
53+ managerId : string ;
54+ } ;
55+
56+ /* __GDPR__
57+ "package_manager.selected": {
58+ "managerId" : { "classification": "SystemMetaData", "purpose": "FeatureInsight", "owner": "karthiknadig" }
59+ }
60+ */
61+ [ EventNames . PACKAGE_MANAGER_SELECTED ] : {
62+ managerId : string ;
63+ } ;
64+
4565 /* __GDPR__
4666 "venv.using_uv": {"owner": "karthiknadig" }
4767 */
Original file line number Diff line number Diff line change 1+ import { getDefaultEnvManagerSetting , getDefaultPkgManagerSetting } from '../../features/settings/settingHelpers' ;
2+ import { PythonProjectManager } from '../../internal.api' ;
3+ import { EventNames } from './constants' ;
4+ import { sendTelemetryEvent } from './sender' ;
5+
6+ export function sendManagerSelectionTelemetry ( pm : PythonProjectManager ) {
7+ const ems : Set < string > = new Set ( ) ;
8+ const ps : Set < string > = new Set ( ) ;
9+ pm . getProjects ( ) . forEach ( ( project ) => {
10+ const m = getDefaultEnvManagerSetting ( pm , project . uri ) ;
11+ if ( m ) {
12+ ems . add ( m ) ;
13+ }
14+
15+ const p = getDefaultPkgManagerSetting ( pm , project . uri ) ;
16+ if ( p ) {
17+ ps . add ( p ) ;
18+ }
19+ } ) ;
20+
21+ ems . forEach ( ( em ) => {
22+ sendTelemetryEvent ( EventNames . ENVIRONMENT_MANAGER_SELECTED , undefined , { managerId : em } ) ;
23+ } ) ;
24+
25+ ps . forEach ( ( pkg ) => {
26+ sendTelemetryEvent ( EventNames . PACKAGE_MANAGER_SELECTED , undefined , { managerId : pkg } ) ;
27+ } ) ;
28+ }
Original file line number Diff line number Diff line change @@ -56,6 +56,7 @@ import { registerTools } from './common/lm.apis';
5656import { GetEnvironmentInfoTool , InstallPackageTool } from './features/copilotTools' ;
5757import { TerminalActivationImpl } from './features/terminal/terminalActivationState' ;
5858import { getEnvironmentForTerminal } from './features/terminal/utils' ;
59+ import { sendManagerSelectionTelemetry } from './common/telemetry/helpers' ;
5960
6061export async function activate ( context : ExtensionContext ) : Promise < PythonEnvironmentApi > {
6162 const start = new StopWatch ( ) ;
@@ -263,8 +264,10 @@ export async function activate(context: ExtensionContext): Promise<PythonEnviron
263264 registerSystemPythonFeatures ( nativeFinder , context . subscriptions , outputChannel ) ,
264265 registerCondaFeatures ( nativeFinder , context . subscriptions , outputChannel ) ,
265266 ] ) ;
267+
266268 sendTelemetryEvent ( EventNames . EXTENSION_MANAGER_REGISTRATION_DURATION , start . elapsedTime ) ;
267269 await terminalManager . initialize ( api ) ;
270+ sendManagerSelectionTelemetry ( projectManager ) ;
268271 } ) ;
269272
270273 sendTelemetryEvent ( EventNames . EXTENSION_ACTIVATION_DURATION , start . elapsedTime ) ;
You can’t perform that action at this time.
0 commit comments