Analytics collected by the Dart-Code extension
The Dart-Code extension collects some basic analytics to help understand how users are using the extension and with which VS Code and SDK versions.
These analytics are separate to analytics sent by VS Code itself (to Microsoft) and analytics sent by other tools that the extension calls (such as dart and flutter which may send analytics to Google).
You can see all analytics sent by the extension (along with others) in the Telemetry output pane (see VS Code docs).
This information is also available in telemetry.json in the extension, which can be extracted for all extensions from VS Code using the code --telemetry command (see VS Code docs).
Opting Out
The extension uses the VS Code telemetry settings for enabling/disabling analytics. More information is available in the VS Code docs.
Additionally, analytics will be disabled if you have opted-out using the legacy "dart.analytics": false setting.
Events
The following events are recorded by the Dart-Code extension:
Extension_ActivatedExtension_RestartSdkDetectionFailureDebugger_ActivatedIn addition to the common properties below, this event includes the following properties:debuggerPreference: Whether debugging is to to ‘just my code’, or includes external package and SDK sourcesdebuggerType: The type (Dart, Flutter, DartTest, FlutterTest) of debug session being starteddebuggerRunType: Whether the debug session is Run (without Debugging) or DebugdebuggerAdapterType: Whether debugging is using the SDK or legacy debug adapter implementationdebuggerExceptionBreakMode: Which pause-on-exception settings are used while debugging
DevTools_OpenedFlutterSurvey_ShownFlutterSurvey_ClickedFlutterSurvey_DismissedFlutterOutline_ActivatedCommand_AddSdkToPathIn addition to the common properties below, this event includes the following properties:addSdkToPathResult: Whether the request to add the SDK to path was successful
Command_CloneSdkIn addition to the common properties below, this event includes the following properties:cloneSdkResult: Whether the request to clone the SDK using Git was successful
ExtensionRecommendation_ShownIn addition to the common properties below, this event includes the following properties:data: The identifier of the extension that was promoted
ExtensionRecommendation_AcceptedIn addition to the common properties below, this event includes the following properties:data: The identifier of the extension that was installed from the promotion notification
ExtensionRecommendation_RejectedIn addition to the common properties below, this event includes the following properties:data: The identifier of the extension that was rejected from the promotion notification
Command_DartNewProjectCommand_FlutterNewProjectCommand_AddDependencyCommand_RestartAnalyzerCommand_ForceReanalyzeError_FlutterDaemonTimeout
Common Properties
The following properties are included in all events:
common.vscodemachineid: An identifier provided by VS Code to relate coding sessions from the same installation togethercommon.extname: The name of the Dart extensioncommon.extversion: The version of the Dart extensioncommon.vscodeversion: The version of VS Code running the extensionisDevExtension: Whether the extension is running in development mode (this usually means running from source checked out from the Dart Code repo)showTodos: Whether TODOs in Dart code are being shown in the Problems listanalyzerProtocol: Whether the Dart analysis server is running using the LSP or Legacy communication protocolformatter: Whether the formatter is enabled, enabled-on-save, disabled, or set to something other than the Dart SDK formatterflutterVersion: Which version of the Flutter SDK is being usedflutterExtension: Whether the Flutter extension is installedflutterUiGuides: Whether the Flutter ‘UI Guides’ are enabled and which kind of updates they are configured to useplatform: The platform/OS the extension is running onappName: The name of the editor application (usually VS Code, but could be another editor that runs VS Code extensions such as from open-vsix)hostKind: A combination of the ‘remoteName’ and ‘appHost’ strings from VS Code (such as ‘desktop’, ‘desktop-dev-container’ or ‘codespaces’)dartVersion: Which version of the Dart SDK is being usedworkspaceType: Which type of project(s) are in the current workspace (Dart, Flutter)closingLabels: Whether Dart’s ‘closing labels’ hints are enabledflutterHotReloadOnSave: Whether hot-reload-on-save is enabledlanguage: The user’s language as reported by VS Code