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' ,
@@ -44,6 +46,24 @@ export interface IEventNamePropertyMapping {
4446 managerId : string ;
4547 } ;
4648
49+ /* __GDPR__
50+ "environment_manager.selected": {
51+ "managerId" : { "classification": "SystemMetaData", "purpose": "FeatureInsight", "owner": "karthiknadig" }
52+ }
53+ */
54+ [ EventNames . ENVIRONMENT_MANAGER_SELECTED ] : {
55+ managerId : string ;
56+ } ;
57+
58+ /* __GDPR__
59+ "package_manager.selected": {
60+ "managerId" : { "classification": "SystemMetaData", "purpose": "FeatureInsight", "owner": "karthiknadig" }
61+ }
62+ */
63+ [ EventNames . PACKAGE_MANAGER_SELECTED ] : {
64+ managerId : string ;
65+ } ;
66+
4767 /* __GDPR__
4868 "venv.using_uv": {"owner": "karthiknadig" }
4969 */
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 ( ) ;
@@ -267,8 +268,10 @@ export async function activate(context: ExtensionContext): Promise<PythonEnviron
267268 registerSystemPythonFeatures ( nativeFinder , context . subscriptions , outputChannel ) ,
268269 registerCondaFeatures ( nativeFinder , context . subscriptions , outputChannel ) ,
269270 ] ) ;
271+
270272 sendTelemetryEvent ( EventNames . EXTENSION_MANAGER_REGISTRATION_DURATION , start . elapsedTime ) ;
271273 await terminalManager . initialize ( api ) ;
274+ sendManagerSelectionTelemetry ( projectManager ) ;
272275 } ) ;
273276
274277 sendTelemetryEvent ( EventNames . EXTENSION_ACTIVATION_DURATION , start . elapsedTime ) ;
You can’t perform that action at this time.
0 commit comments