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 @@ -58,6 +58,7 @@ import { registerTools } from './common/lm.apis';
5858import { GetEnvironmentInfoTool , InstallPackageTool } from './features/copilotTools' ;
5959import { TerminalActivationImpl } from './features/terminal/terminalActivationState' ;
6060import { getEnvironmentForTerminal } from './features/terminal/utils' ;
61+ import { sendManagerSelectionTelemetry } from './common/telemetry/helpers' ;
6162
6263export async function activate ( context : ExtensionContext ) : Promise < PythonEnvironmentApi > {
6364 const start = new StopWatch ( ) ;
@@ -271,8 +272,10 @@ export async function activate(context: ExtensionContext): Promise<PythonEnviron
271272 registerSystemPythonFeatures ( nativeFinder , context . subscriptions , outputChannel ) ,
272273 registerCondaFeatures ( nativeFinder , context . subscriptions , outputChannel ) ,
273274 ] ) ;
275+
274276 sendTelemetryEvent ( EventNames . EXTENSION_MANAGER_REGISTRATION_DURATION , start . elapsedTime ) ;
275277 await terminalManager . initialize ( api ) ;
278+ sendManagerSelectionTelemetry ( projectManager ) ;
276279 } ) ;
277280
278281 sendTelemetryEvent ( EventNames . EXTENSION_ACTIVATION_DURATION , start . elapsedTime ) ;
You can’t perform that action at this time.
0 commit comments