Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
39 commits
Select commit Hold shift + click to select a range
72dfa6c
classify common properties
kieferrm Sep 4, 2017
858d465
first batch events
kieferrm Sep 4, 2017
02b6db0
gdpr tooling
kieferrm Sep 4, 2017
94667ec
update snippets
kieferrm Sep 5, 2017
8671fe5
parse source comments
kieferrm Sep 6, 2017
d1e4c64
fix GDPR value
kieferrm Sep 7, 2017
0be8478
remove unused files
kieferrm Sep 7, 2017
cc1255c
more GDPR classification
kieferrm Sep 8, 2017
370f1e7
fix typo
kieferrm Sep 8, 2017
b059271
fix typo
kieferrm Sep 8, 2017
d821c08
fix typo
kieferrm Sep 8, 2017
ca8b412
more GDPR classification
kieferrm Sep 8, 2017
c28edb3
more GDPR classification
kieferrm Sep 8, 2017
7ee4c75
correct typos
kieferrm Sep 8, 2017
e1c04e5
more GDPR classification
kieferrm Sep 8, 2017
fb2da69
correct typos
kieferrm Sep 8, 2017
4f873b7
correct property names
kieferrm Sep 8, 2017
d54487e
replace invalid value
kieferrm Sep 8, 2017
fcd85f4
inline values
kieferrm Sep 9, 2017
f885522
change wildcard property
kieferrm Sep 12, 2017
1d7b0a2
use wildcard for files.joined
kieferrm Sep 12, 2017
f691cfe
classification for TS extension
kieferrm Sep 18, 2017
9cceab0
gdpr classification for markdown extension
kieferrm Sep 18, 2017
47000c3
GDPR classification for git extension
kieferrm Sep 19, 2017
f0e9b12
GDPR classification for save participants
kieferrm Sep 19, 2017
b4c594a
GDPR classify timer2 on IStartupMetrics
kieferrm Sep 19, 2017
da1fc46
review GDPR classifications
kieferrm Sep 19, 2017
8550b03
correct wildcard usage
kieferrm Sep 19, 2017
dca73b7
omit endPoint where it defaults to none
kieferrm Sep 20, 2017
15e6a82
GDPR comments
kieferrm Sep 23, 2017
8d48ed8
update GDPR todos
kieferrm Sep 25, 2017
146f868
fixing classification
kieferrm Sep 25, 2017
d5604cf
update extension install, update and uninstall events
kieferrm Sep 25, 2017
905eca3
add description for new common property
kieferrm Sep 25, 2017
15a5efc
formatting change
kieferrm Sep 25, 2017
3c70c36
indentation changes
kieferrm Sep 25, 2017
955adbf
add missing commas
kieferrm Sep 26, 2017
5aa3360
fix typos
kieferrm Sep 26, 2017
112f9a5
fix searchResultsShown event
kieferrm Sep 26, 2017
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
more GDPR classification
  • Loading branch information
kieferrm committed Sep 25, 2017
commit cc1255cf12c9051004422f91cf3cbe9dd5b0d35f
10 changes: 10 additions & 0 deletions src/vs/workbench/api/electron-browser/mainThreadEditors.ts
Original file line number Diff line number Diff line change
Expand Up @@ -140,6 +140,11 @@ export class MainThreadEditors implements MainThreadEditorsShape {

$tryShowEditor(id: string, position: EditorPosition): TPromise<void> {
// check how often this is used
/* __GDPR__
"api.deprecated" : {
"function" : { "endPoint": "none", "classification": "SystemMetaData", "purpose": "FeatureInsight" }
}
*/
this._telemetryService.publicLog('api.deprecated', { function: 'TextEditor.show' });

let mainThreadEditor = this._documentsAndEditors.getEditor(id);
Expand All @@ -155,6 +160,11 @@ export class MainThreadEditors implements MainThreadEditorsShape {

$tryHideEditor(id: string): TPromise<void> {
// check how often this is used
/* __GDPR__
"api.deprecated" : {
"function" : { "endPoint": "none", "classification": "SystemMetaData", "purpose": "FeatureInsight" }
}
*/
this._telemetryService.publicLog('api.deprecated', { function: 'TextEditor.hide' });

let mainThreadEditor = this._documentsAndEditors.getEditor(id);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -266,6 +266,11 @@ export class SaveParticipant implements ISaveParticipant {
});

return sequence(promiseFactory).then(() => {
/* __GDPR__
"saveParticipantStats" : {
}
*/
// TODO: We need to move off dynamic property names as we can't declare them statically in the registry.
this._telemetryService.publicLog('saveParticipantStats', stats);
});
}
Expand Down
11 changes: 11 additions & 0 deletions src/vs/workbench/browser/composite.ts
Original file line number Diff line number Diff line change
Expand Up @@ -108,6 +108,11 @@ export abstract class Composite extends Component implements IComposite {
// Only submit telemetry data when not running from an integration test
if (this._telemetryService && this._telemetryService.publicLog) {
const eventName: string = 'compositeOpen';
/* __GDPR__
"compositeOpen" : {
"composite" : { "endPoint": "none", "classification": "SystemMetaData", "purpose": "FeatureInsight" }
}
*/
this._telemetryService.publicLog(eventName, { composite: this.getId() });
}
}
Expand All @@ -121,6 +126,12 @@ export abstract class Composite extends Component implements IComposite {
if (this._telemetryService && this._telemetryService.publicLog) {
const eventName: string = 'compositeShown';
this._telemetryData.composite = this.getId();
/* __GDPR__
"compositeShown" : {
"timeSpent" : { "endPoint": "none", "classification": "SystemMetaData", "purpose": "PerformanceAndHealth" },
"composite": { "endPoint": "none", "classification": "SystemMetaData", "purpose": "FeatureInsight" }
}
*/
this._telemetryService.publicLog(eventName, this._telemetryData);
}
}
Expand Down
6 changes: 6 additions & 0 deletions src/vs/workbench/browser/parts/compositePart.ts
Original file line number Diff line number Diff line change
Expand Up @@ -309,6 +309,12 @@ export abstract class CompositePart<T extends Composite> extends Part {

// Log in telemetry
if (this.telemetryService) {
/* __GDPR__
"workbenchActionExecuted" : {
"id" : { "endPoint": "none", "classification": "SystemMetaData", "purpose": "FeatureInsight" },
"from": { "endPoint": "none", "classification": "SystemMetaData", "purpose": "FeatureInsight" }
}
*/
this.telemetryService.publicLog('workbenchActionExecuted', { id: e.action.id, from: this.nameForTelemetry });
}
});
Expand Down
3 changes: 3 additions & 0 deletions src/vs/workbench/browser/parts/editor/editorGroupsControl.ts
Original file line number Diff line number Diff line change
Expand Up @@ -443,6 +443,9 @@ export class EditorGroupsControl extends Themable implements IEditorGroupsContro

// Log this fact in telemetry
if (this.telemetryService) {
/* __GDPR__
"workbenchEditorMaximized" : {}
*/
this.telemetryService.publicLog('workbenchEditorMaximized');
}

Expand Down
21 changes: 21 additions & 0 deletions src/vs/workbench/browser/parts/editor/editorPart.ts
Original file line number Diff line number Diff line change
Expand Up @@ -166,6 +166,13 @@ export class EditorPart extends Part implements IEditorPart, IEditorGroupService

this.revealIfOpen = editorConfig.revealIfOpen;

/* __GDPR__
"workbenchEditorConfiguration" : {
"${include}": [
"${IWorkbenchEditorConfiguration}"
]
}
*/
this.telemetryService.publicLog('workbenchEditorConfiguration', editorConfig);
} else {
this.tabOptions = {
Expand Down Expand Up @@ -248,10 +255,24 @@ export class EditorPart extends Part implements IEditorPart, IEditorGroupService
}

private onEditorOpened(identifier: EditorIdentifier): void {
/* __GDPR__
"editorOpened" : {
"${include}": [
"${EditorTelemetryDescriptor}"
]
}
*/
this.telemetryService.publicLog('editorOpened', identifier.editor.getTelemetryDescriptor());
}

private onEditorClosed(event: EditorCloseEvent): void {
/* __GDPR__
"editorClosed" : {
"${include}": [
"${EditorTelemetryDescriptor}"
]
}
*/
this.telemetryService.publicLog('editorClosed', event.editor.getTelemetryDescriptor());
}

Expand Down
6 changes: 6 additions & 0 deletions src/vs/workbench/browser/parts/editor/titleControl.ts
Original file line number Diff line number Diff line change
Expand Up @@ -259,6 +259,12 @@ export abstract class TitleControl extends Themable implements ITitleAreaControl

// Log in telemetry
if (this.telemetryService) {
/* __GDPR__
"workbenchActionExecuted" : {
"id" : { "endPoint": "none", "classification": "SystemMetaData", "purpose": "FeatureInsight" },
"from": { "endPoint": "none", "classification": "SystemMetaData", "purpose": "FeatureInsight" }
}
*/
this.telemetryService.publicLog('workbenchActionExecuted', { id: e.action.id, from: 'editorPart' });
}
}));
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -552,6 +552,12 @@ export class QuickOpenController extends Component implements IQuickOpenService
const registry = Registry.as<IQuickOpenRegistry>(Extensions.Quickopen);
const handlerDescriptor = registry.getQuickOpenHandler(prefix) || registry.getDefaultQuickOpenHandler();

/* __GDPR__
"quickOpenWidgetShown" : {
"mode" : { "endPoint": "none", "classification": "SystemMetaData", "purpose": "FeatureInsight" },
"quickNavigate": { "endPoint": "none", "classification": "SystemMetaData", "purpose": "FeatureInsight" }
}
*/
this.telemetryService.publicLog('quickOpenWidgetShown', { mode: handlerDescriptor.getId(), quickNavigate: quickNavigateConfiguration });

// Trigger onOpen
Expand Down
6 changes: 6 additions & 0 deletions src/vs/workbench/browser/parts/statusbar/statusbarPart.ts
Original file line number Diff line number Diff line change
Expand Up @@ -293,6 +293,12 @@ class StatusBarEntryItem implements IStatusbarItem {
const action = this.instantiationService.createInstance(builtInActionDescriptor.syncDescriptor);

if (action.enabled) {
/* __GDPR__
"workbenchActionExecuted" : {
"id" : { "endPoint": "none", "classification": "SystemMetaData", "purpose": "FeatureInsight" },
"from": { "endPoint": "none", "classification": "SystemMetaData", "purpose": "FeatureInsight" }
}
*/
this.telemetryService.publicLog('workbenchActionExecuted', { id: action.id, from: 'status bar' });
(action.run() || TPromise.as(null)).done(() => {
action.dispose();
Expand Down
6 changes: 6 additions & 0 deletions src/vs/workbench/common/actions.ts
Original file line number Diff line number Diff line change
Expand Up @@ -170,6 +170,12 @@ function triggerAndDisposeAction(instantitationService: IInstantiationService, t

const from = args && args.from || 'keybinding';
if (telemetryService) {
/* __GDPR__
"workbenchActionExecuted" : {
"id" : { "endPoint": "none", "classification": "SystemMetaData", "purpose": "FeatureInsight" },
"from": { "endPoint": "none", "classification": "SystemMetaData", "purpose": "FeatureInsight" }
}
*/
telemetryService.publicLog('workbenchActionExecuted', { id: actionInstance.id, from });
}

Expand Down
18 changes: 18 additions & 0 deletions src/vs/workbench/common/editor.ts
Original file line number Diff line number Diff line change
Expand Up @@ -203,6 +203,11 @@ export abstract class EditorInput implements IEditorInput {
* Subclasses should extend if they can contribute.
*/
public getTelemetryDescriptor(): object {
/* __GDPR__FRAGMENT__
"EditorTelemetryDescriptor" : {
"typeId" : { "endPoint": "none", "classification": "SystemMetaData", "purpose": "FeatureInsight" }
}
*/
return { typeId: this.getTypeId() };
}

Expand Down Expand Up @@ -792,6 +797,19 @@ export const EditorOpenPositioning = {
};

export interface IWorkbenchEditorConfiguration {
/* __GDPR__FRAGMENT__
"IWorkbenchEditorConfiguration" : {
"showTabs" : { "endPoint": "none", "classification": "SystemMetaData", "purpose": "FeatureInsight" },
"tabCloseButton": { "endPoint": "none", "classification": "SystemMetaData", "purpose": "FeatureInsight" },
"showIcons": { "endPoint": "none", "classification": "SystemMetaData", "purpose": "FeatureInsight" },
"enablePreview": { "endPoint": "none", "classification": "SystemMetaData", "purpose": "FeatureInsight" },
"enablePreviewFromQuickOpen": { "endPoint": "none", "classification": "SystemMetaData", "purpose": "FeatureInsight" },
"closeOnFileDelete": { "endPoint": "none", "classification": "SystemMetaData", "purpose": "FeatureInsight" },
"openPositioning": { "endPoint": "none", "classification": "SystemMetaData", "purpose": "FeatureInsight" },
"revealIfOpen": { "endPoint": "none", "classification": "SystemMetaData", "purpose": "FeatureInsight" },
"swipeToNavigate": { "endPoint": "none", "classification": "SystemMetaData", "purpose": "FeatureInsight" }
}
*/
workbench: {
editor: {
showTabs: boolean;
Expand Down
5 changes: 5 additions & 0 deletions src/vs/workbench/common/editor/resourceEditorInput.ts
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,11 @@ export class ResourceEditorInput extends EditorInput {
const descriptor = super.getTelemetryDescriptor();
descriptor['resource'] = telemetryURIDescriptor(this.resource);

/* __GDPR__FRAGMENT__
"EditorTelemetryDescriptor" : {
"resource": { "endPoint": "none", "classification": "SystemMetaData", "purpose": "FeatureInsight" }
}
*/
return descriptor;
}

Expand Down
5 changes: 5 additions & 0 deletions src/vs/workbench/common/editor/untitledEditorInput.ts
Original file line number Diff line number Diff line change
Expand Up @@ -254,6 +254,11 @@ export class UntitledEditorInput extends EditorInput implements IEncodingSupport
const descriptor = super.getTelemetryDescriptor();
descriptor['resource'] = telemetryURIDescriptor(this.getResource());

/* __GDPR__FRAGMENT__
"EditorTelemetryDescriptor" : {
"resource": { "endPoint": "none", "classification": "SystemMetaData", "purpose": "FeatureInsight" }
}
*/
return descriptor;
}

Expand Down
13 changes: 13 additions & 0 deletions src/vs/workbench/electron-browser/nodeCachedDataManager.ts
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,12 @@ export class NodeCachedDataManager {

// log each failure separately
if (err) {
/* __GDPR__
"cachedDataError" : {
"errorCode" : { "endPoint": "none", "classification": "SystemMetaData", "purpose": "PerformanceAndHealth" },
"path": { "endPoint": "none", "classification": "CustomerContent", "purpose": "PerformanceAndHealth" }
}
*/
this._telemetryService.publicLog('cachedDataError', {
errorCode: err.errorCode,
path: basename(err.path)
Expand All @@ -40,6 +46,13 @@ export class NodeCachedDataManager {
}

// log summary
/* __GDPR__
"cachedDataInfo" : {
"didRequestCachedData" : { "endPoint": "none", "classification": "SystemMetaData", "purpose": "PerformanceAndHealth" },
"didRejectCachedData": { "endPoint": "none", "classification": "SystemMetaData", "purpose": "PerformanceAndHealth" },
"didProduceCachedData": { "endPoint": "none", "classification": "SystemMetaData", "purpose": "PerformanceAndHealth" }
}
*/
this._telemetryService.publicLog('cachedDataInfo', {
didRequestCachedData: Boolean(global.require.getConfig().nodeCachedDataDir),
didRejectCachedData,
Expand Down
32 changes: 32 additions & 0 deletions src/vs/workbench/electron-browser/shell.ts
Original file line number Diff line number Diff line change
Expand Up @@ -199,6 +199,25 @@ export class WorkbenchShell {

// Telemetry: workspace info
const { filesToOpen, filesToCreate, filesToDiff } = this.configuration;
/* __GDPR__
"workspaceLoad" : {
"userAgent" : { "endPoint": "none", "classification": "SystemMetaData", "purpose": "FeatureInsight" },
"windowSize": { "endPoint": "none", "classification": "SystemMetaData", "purpose": "FeatureInsight" },
"emptyWorkbench": { "endPoint": "none", "classification": "SystemMetaData", "purpose": "FeatureInsight" },
"workbench.filesToOpen": { "endPoint": "none", "classification": "SystemMetaData", "purpose": "FeatureInsight" },
"workbench.filesToCreate": { "endPoint": "none", "classification": "SystemMetaData", "purpose": "FeatureInsight" },
"workbench.filesToDiff": { "endPoint": "none", "classification": "SystemMetaData", "purpose": "FeatureInsight" },
"customKeybindingsCount": { "endPoint": "none", "classification": "SystemMetaData", "purpose": "FeatureInsight" },
"theme": { "endPoint": "none", "classification": "SystemMetaData", "purpose": "FeatureInsight" },
"language": { "endPoint": "none", "classification": "SystemMetaData", "purpose": "BusinessInsight" },
"experiments": { "endPoint": "none", "classification": "SystemMetaData", "purpose": "BusinessInsight" },
"pinnedViewlets": { "endPoint": "none", "classification": "SystemMetaData", "purpose": "FeatureInsight" },
"restoredViewlet": { "endPoint": "none", "classification": "SystemMetaData", "purpose": "FeatureInsight" },
"restoredEditors": { "endPoint": "none", "classification": "SystemMetaData", "purpose": "FeatureInsight" },
"pinnedViewlets": { "endPoint": "none", "classification": "SystemMetaData", "purpose": "FeatureInsight" },
"startupKind": { "endPoint": "none", "classification": "SystemMetaData", "purpose": "FeatureInsight" },
}
*/
this.telemetryService.publicLog('workspaceLoad', {
userAgent: navigator.userAgent,
windowSize: { innerHeight: window.innerHeight, innerWidth: window.innerWidth, outerHeight: window.outerHeight, outerWidth: window.outerWidth },
Expand All @@ -221,6 +240,13 @@ export class WorkbenchShell {
this.timerService.restoreEditorsDuration = info.restoreEditorsDuration;
this.timerService.restoreViewletDuration = info.restoreViewletDuration;
this.extensionService.onReady().done(() => {
/* __GDPR__
"startupTime" : {
"${include}": [
"${IStartupMetrics}"
]
}
*/
this.telemetryService.publicLog('startupTime', this.timerService.startupMetrics);
});

Expand Down Expand Up @@ -288,6 +314,12 @@ export class WorkbenchShell {
const idleMonitor = new IdleMonitor(2 * 60 * 1000); // 2 minutes

const listener = idleMonitor.onStatusChange(status =>
/* __GDPR__
"UserIdleStart" : {}
*/
/* __GDPR__
"UserIdleStop" : {}
*/
this.telemetryService.publicLog(status === UserStatus.Active
? TelemetryService.IDLE_STOP_EVENT_NAME
: TelemetryService.IDLE_START_EVENT_NAME
Expand Down
6 changes: 6 additions & 0 deletions src/vs/workbench/electron-browser/window.ts
Original file line number Diff line number Diff line change
Expand Up @@ -145,6 +145,12 @@ export class ElectronWindow extends Themable {
}

this.commandService.executeCommand(request.id, ...args).done(_ => {
/* __GDPR__
"commandExecuted" : {
"id" : { "endPoint": "none", "classification": "SystemMetaData", "purpose": "FeatureInsight" },
"from": { "endPoint": "none", "classification": "SystemMetaData", "purpose": "FeatureInsight" }
}
*/
this.telemetryService.publicLog('commandExecuted', { id: request.id, from: request.from });
}, err => {
this.messageService.show(Severity.Error, err);
Expand Down
11 changes: 11 additions & 0 deletions src/vs/workbench/parts/debug/browser/debugActionsWidget.ts
Original file line number Diff line number Diff line change
Expand Up @@ -102,6 +102,12 @@ export class DebugActionsWidget extends Themable implements IWorkbenchContributi

// log in telemetry
if (this.telemetryService) {
/* __GDPR__
"workbenchActionExecuted" : {
"id" : { "endPoint": "none", "classification": "SystemMetaData", "purpose": "FeatureInsight" },
"from": { "endPoint": "none", "classification": "SystemMetaData", "purpose": "FeatureInsight" }
}
*/
this.telemetryService.publicLog('workbenchActionExecuted', { id: e.action.id, from: 'debugActionsWidget' });
}
}));
Expand Down Expand Up @@ -141,6 +147,11 @@ export class DebugActionsWidget extends Themable implements IWorkbenchContributi
private storePosition(): void {
const position = parseFloat(this.$el.getComputedStyle().left) / window.innerWidth;
this.storageService.store(DEBUG_ACTIONS_WIDGET_POSITION_KEY, position, StorageScope.WORKSPACE);
/* __GDPR__
"debug.actionswidgetposition" : {
"position" : { "endPoint": "none", "classification": "SystemMetaData", "purpose": "FeatureInsight" }
}
*/
this.telemetryService.publicLog(DEBUG_ACTIONS_WIDGET_POSITION_KEY, { position });
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -411,6 +411,9 @@ export class DebugEditorContribution implements IDebugEditorContribution {
}

public addLaunchConfiguration(): TPromise<any> {
/* __GDPR__
"debug/addLaunchConfiguration" : {}
*/
this.telemetryService.publicLog('debug/addLaunchConfiguration');
let configurationsArrayPosition: Position;
const model = this.editor.getModel();
Expand Down
Loading