more GDPR classification

This commit is contained in:
kieferrm
2017-09-07 23:32:17 -07:00
committed by Kai Maetzel
parent c03559eec7
commit a65363876a
20 changed files with 205 additions and 15 deletions

View File

@@ -270,7 +270,7 @@ export class SaveParticipant implements ISaveParticipant {
"saveParticipantStats" : {
}
*/
// TODO: We need to move off dynamic property names as we can't declare them statically in the registry.
// GDPR__TODO: We need to move off dynamic property names as we can't declare them statically in the registry.
this._telemetryService.publicLog('saveParticipantStats', stats);
});
}

View File

@@ -25,6 +25,12 @@ export class MainThreadTelemetry implements MainThreadTelemetryShape {
}
$publicLog(eventName: string, data: any = Object.create(null)): void {
/* __GDPR__FRAGMENT__
"MainThreadData" : {
"pluginHostTelemetry" : { "endPoint": "none", "classification": "SystemMetaData", "purpose": "FeatureInsight" }
}
*/
data[MainThreadTelemetry._name] = true;
this._telemetryService.publicLog(eventName, data);
}

View File

@@ -145,6 +145,15 @@ export function createApiFactory(
return undefined;
}
this._seen.add(apiName);
/* __GDPR__
"apiUsage" : {
"name" : { "endPoint": "none", "classification": "SystemMetaData", "purpose": "FeatureInsight" },
"extension": { "endPoint": "none", "classification": "SystemMetaData", "purpose": "FeatureInsight" },
"${include}": [
"${MainThreadData}"
]
}
*/
return mainThreadTelemetry.$publicLog('apiUsage', {
name: apiName,
extension: extension.id
@@ -494,6 +503,16 @@ export function createApiFactory(
return extHostSCM.getLastInputBox(extension);
},
createSourceControl(id: string, label: string, rootUri?: vscode.Uri) {
/* __GDPR__
"registerSCMProvider" : {
"extensionId" : { "endPoint": "none", "classification": "SystemMetaData", "purpose": "FeatureInsight" },
"providerId": { "endPoint": "none", "classification": "PublicNonPersonalData", "purpose": "FeatureInsight" },
"providerLabel": { "endPoint": "none", "classification": "PublicPersonalData", "purpose": "FeatureInsight" },
"${include}": [
"${MainThreadData}"
]
}
*/
mainThreadTelemetry.$publicLog('registerSCMProvider', {
extensionId: extension.id,
providerId: id,

View File

@@ -281,6 +281,13 @@ export class ExtHostExtensionService implements ExtHostExtensionServiceShape {
private _doActivateExtension(extensionDescription: IExtensionDescription, startup: boolean): TPromise<ActivatedExtension> {
let event = getTelemetryActivationEvent(extensionDescription);
/* __GDPR__
"activatePlugin" : {
"${include}": [
"${TelemetryActivationEvent}"
]
}
*/
this._mainThreadTelemetry.$publicLog('activatePlugin', event);
if (!extensionDescription.main) {
// Treat the extension as being empty => NOT AN ERROR CASE

View File

@@ -880,6 +880,7 @@ export class ExtHostLanguageFeatures implements ExtHostLanguageFeaturesShape {
const handle = this._nextHandle();
this._adapter.set(handle, new HoverAdapter(this._documents, provider, once((name: string, data: any) => {
data['extension'] = extensionId;
// GDPR__TODO
this._telemetry.$publicLog(name, data);
})));
this._proxy.$registerHoverProvider(handle, selector);

View File

@@ -595,6 +595,15 @@ export class ExtHostTextEditor2 extends ExtHostTextEditor {
for (const call of stackTrace) {
const extension = index.findSubstr(call.getFileName());
if (extension) {
/* __GDPR__
"usesCommandLink" : {
"extension" : { "endPoint": "none", "classification": "SystemMetaData", "purpose": "FeatureInsight" },
"from": { "endPoint": "none", "classification": "SystemMetaData", "purpose": "FeatureInsight" },
"${include}": [
"${MainThreadData}"
]
}
*/
this._mainThreadTelemetry.$publicLog('usesCommandLink', {
extension: extension.id,
from: 'decoration',