@@ -38,7 +38,8 @@ class TelemetrySession(object): # pylint: disable=too-many-instance-attributes
3838 payload_properties = None
3939 exceptions = []
4040 module_correlation = None
41- extension_name = 'None'
41+ extension_name = None
42+ extension_version = None
4243 feedback = None
4344 extension_management_detail = None
4445
@@ -124,6 +125,7 @@ def _get_user_task_properties(self):
124125 def _get_azure_cli_properties (self ):
125126 source = 'az' if self .arg_complete_env_name not in os .environ else 'completer'
126127 result = {}
128+ ext_info = '{}@{}' .format (self .extension_name , self .extension_version ) if self .extension_name else None
127129 self .set_custom_properties (result , 'Source' , source )
128130 self .set_custom_properties (result ,
129131 'ClientRequestId' ,
@@ -145,9 +147,9 @@ def _get_azure_cli_properties(self):
145147 self .set_custom_properties (result , 'Params' , ',' .join (self .parameters or []))
146148 self .set_custom_properties (result , 'PythonVersion' , platform .python_version ())
147149 self .set_custom_properties (result , 'ModuleCorrelation' , self .module_correlation )
148- self .set_custom_properties (result , 'ExtensionName' , self . extension_name )
150+ self .set_custom_properties (result , 'ExtensionName' , ext_info )
149151 self .set_custom_properties (result , 'Feedback' , self .feedback )
150- self .set_custom_properties (result , 'ExtensionManagement ' , self .extension_management_detail )
152+ self .set_custom_properties (result , 'ExtensionManagementDetail ' , self .extension_management_detail )
151153
152154 return result
153155
@@ -267,16 +269,18 @@ def set_feedback(feedback):
267269
268270
269271@decorators .suppress_all_exceptions (raise_in_diagnostics = True )
270- def set_extension_management_detail (content ):
272+ def set_extension_management_detail (ext_name , ext_version ):
273+ content = '{}@{}' .format (ext_name , ext_version )
271274 _session .extension_management_detail = content [:512 ]
272275
273276
274277@decorators .suppress_all_exceptions (raise_in_diagnostics = True )
275- def set_command_details (command , output_type = None , parameters = None , extension_name = None ):
278+ def set_command_details (command , output_type = None , parameters = None , extension_name = None , extension_version = None ):
276279 _session .command = command
277280 _session .output_type = output_type
278281 _session .parameters = parameters
279- _session .extension_name = extension_name or 'None'
282+ _session .extension_name = extension_name
283+ _session .extension_version = extension_version
280284
281285
282286@decorators .suppress_all_exceptions (raise_in_diagnostics = True )
0 commit comments