Privacy policy

By default, the extension collects light telemetry information about the events happening in the extension itself. This data is used to diagnose issues and understand why certain features may not be working as expected.

The extension never sends any personal information or any information about your code. No source code, symbol names, or any identifiable process/user/system information is ever sent or collected. This data is never shared with any third parties.

Starting from version 1.3.6, it is possible to disable all telemetry collection by going to: Extensions -> D0 -> Telemetry -> Send telemetry data and unchecking the checkbox.



What gets collected?

The extension sends one request at the end of each debugging session in the following format:

{
    "client_version": "extension_version",
    "m": [2,0,0,0,80,9,0,0,0,0,0,0,0,5,2,7138,0,0,0,0,2,5,0,2,2,0,0,2,0,0,0,1,0,0,0,0,118,0,7,3,0,37,0,0,0],
    "c": 4,
    "p": 0
}


Here's what each field means: The m field maps counts to certain events such as live code trace updates, module loads, etc. Many of these events are internal to how the extension works or are no longer used, but are included here for full transparency. No content of messages is ever sent, only their counts. This data is exclusively restricted only to things the extension does and does not include any information about the code itself or events outside of the scope of the extension. You can inspect the whole mapping with descriptions as of current version below:

Event Sample count Description
SCFetchAllModules 2
SCVisualStudioToggleBreakpoints 0
SCExternalBreakpointHit 0
CBreakpointContinue 0
SModuleLoaded 80
SLog 9logging out to the Visual Studio D0 output window
SLogW 0
SClearLog 0
SEnableLog 0
SViewObject 0
SViewString 0
SViewText 0
SViewImage 0
SInlineViewHistoryUpdate 5how many updates of inline variables there have been
SCompilationResult 2
SLiveTraceUpdate 2516how many live trace updates there have been
SDebugNextTest 0
SBreak 0
SLiveCallStackUpdate 0how many live call stack updates there have been
SReportDiagnostic 0
SClearReturnValueView 0
CInitForModule 5how many modules had a valid PDB
CChangeObjectExpandState 0
CApplyScriptSnippets 2
CSetupLiveCodeTrace 5how many requests for live code trace there have been
CQueueViewObjectChange 0
CAddEvalCode 0
CActivateFunction 4
SCEnableRuntimeCode 0
CSetExternalBreakpointList 0
CToggleLiveCallstackCollection 0
CToggleInlineChangesCollection 1
SUpdateSnippetLine 0
SClearEditorTaggers 0
SCSetPerfTraceFunction 0
SReportDriverException 0
CInstructionPatchInserted 118
CInstructionPatchRemoved 0
SCBindBreakpoints 7
SCHandleException 3how many exceptions the process has thrown
CEnableBreakpointsAfterSingleStep 0
SRelocationAdded 35how many relocations have been added
SRelocationRetired 0
SReprocessExistingFiles 0
SRetoggleVisualStudioBreakpoint 0

Extension disabled event

The extension also sends a request when the extension is disabled. This request contains no specific data.

Feature enabled/disabled event

The extension sends a simple true/false requst whenever live profiler, inline changes, live callstack, snippet are enabled/disabled. No other information is included in this request.