Add comments to properties of telemetry events (#155584)

This commit is contained in:
Alexandru Dima 2022-07-19 14:49:19 +02:00 committed by GitHub
parent 92fd228156
commit 0945ef6e35
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 45 additions and 44 deletions

View file

@ -339,8 +339,9 @@ export abstract class EditorAction extends EditorCommand {
protected reportTelemetry(accessor: ServicesAccessor, editor: ICodeEditor) {
type EditorActionInvokedClassification = {
owner: 'alexdima';
name: { classification: 'SystemMetaData'; purpose: 'FeatureInsight' };
id: { classification: 'SystemMetaData'; purpose: 'FeatureInsight' };
comment: 'An editor action has been invoked.';
name: { classification: 'SystemMetaData'; purpose: 'FeatureInsight'; comment: 'The label of the action that was invoked.' };
id: { classification: 'SystemMetaData'; purpose: 'FeatureInsight'; comment: 'The identifier of the action that was invoked.' };
};
type EditorActionInvokedEvent = {
name: string;

View file

@ -779,10 +779,10 @@ export class RemoteAgentConnectionStatusListener extends Disposable implements I
type ReconnectReloadClassification = {
owner: 'alexdima';
comment: 'The reload button in the builtin permanent reconnection failure dialog was pressed';
remoteName: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth' };
reconnectionToken: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth' };
millisSinceLastIncomingData: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth' };
attempt: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth' };
remoteName: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth'; comment: 'The name of the resolver.' };
reconnectionToken: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth'; comment: 'The identifier of the connection.' };
millisSinceLastIncomingData: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth'; comment: 'Elapsed time (in ms) since data was last received.' };
attempt: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth'; comment: 'The reconnection attempt counter.' };
};
type ReconnectReloadEvent = {
remoteName: string | undefined;
@ -825,8 +825,8 @@ export class RemoteAgentConnectionStatusListener extends Disposable implements I
type RemoteConnectionLostClassification = {
owner: 'alexdima';
comment: 'The remote connection state is now `ConnectionLost`';
remoteName: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth' };
reconnectionToken: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth' };
remoteName: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth'; comment: 'The name of the resolver.' };
reconnectionToken: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth'; comment: 'The identifier of the connection.' };
};
type RemoteConnectionLostEvent = {
remoteName: string | undefined;
@ -861,10 +861,10 @@ export class RemoteAgentConnectionStatusListener extends Disposable implements I
type RemoteReconnectionRunningClassification = {
owner: 'alexdima';
comment: 'The remote connection state is now `ReconnectionRunning`';
remoteName: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth' };
reconnectionToken: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth' };
millisSinceLastIncomingData: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth' };
attempt: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth' };
remoteName: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth'; comment: 'The name of the resolver.' };
reconnectionToken: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth'; comment: 'The identifier of the connection.' };
millisSinceLastIncomingData: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth'; comment: 'Elapsed time (in ms) since data was last received.' };
attempt: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth'; comment: 'The reconnection attempt counter.' };
};
type RemoteReconnectionRunningEvent = {
remoteName: string | undefined;
@ -902,11 +902,11 @@ export class RemoteAgentConnectionStatusListener extends Disposable implements I
type RemoteReconnectionPermanentFailureClassification = {
owner: 'alexdima';
comment: 'The remote connection state is now `ReconnectionPermanentFailure`';
remoteName: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth' };
reconnectionToken: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth' };
millisSinceLastIncomingData: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth' };
attempt: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth' };
handled: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth' };
remoteName: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth'; comment: 'The name of the resolver.' };
reconnectionToken: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth'; comment: 'The identifier of the connection.' };
millisSinceLastIncomingData: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth'; comment: 'Elapsed time (in ms) since data was last received.' };
attempt: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth'; comment: 'The reconnection attempt counter.' };
handled: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth'; comment: 'The error was handled by the resolver.' };
};
type RemoteReconnectionPermanentFailureEvent = {
remoteName: string | undefined;
@ -947,10 +947,10 @@ export class RemoteAgentConnectionStatusListener extends Disposable implements I
type RemoteConnectionGainClassification = {
owner: 'alexdima';
comment: 'The remote connection state is now `ConnectionGain`';
remoteName: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth' };
reconnectionToken: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth' };
millisSinceLastIncomingData: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth' };
attempt: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth' };
remoteName: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth'; comment: 'The name of the resolver.' };
reconnectionToken: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth'; comment: 'The identifier of the connection.' };
millisSinceLastIncomingData: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth'; comment: 'Elapsed time (in ms) since data was last received.' };
attempt: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth'; comment: 'The reconnection attempt counter.' };
};
type RemoteConnectionGainEvent = {
remoteName: string | undefined;

View file

@ -190,9 +190,9 @@ class InitialRemoteConnectionHealthContribution implements IWorkbenchContributio
type RemoteConnectionSuccessClassification = {
owner: 'alexdima';
comment: 'The initial connection succeeded';
web: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth' };
web: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth'; comment: 'Is web ui.' };
connectionTimeMs: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth'; comment: 'Time, in ms, until connected'; isMeasurement: true };
remoteName: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth' };
remoteName: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth'; comment: 'The name of the resolver.' };
};
type RemoteConnectionSuccessEvent = {
web: boolean;
@ -212,10 +212,10 @@ class InitialRemoteConnectionHealthContribution implements IWorkbenchContributio
type RemoteConnectionFailureClassification = {
owner: 'alexdima';
comment: 'The initial connection failed';
web: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth' };
remoteName: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth' };
web: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth'; comment: 'Is web ui.' };
remoteName: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth'; comment: 'The name of the resolver.' };
connectionTimeMs: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth'; comment: 'Time, in ms, until connection failure'; isMeasurement: true };
message: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth' };
message: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth'; comment: 'Error message' };
};
type RemoteConnectionFailureEvent = {
web: boolean;

View file

@ -1228,10 +1228,10 @@ export abstract class AbstractExtensionService extends Disposable implements IEx
type ExtensionsMessageClassification = {
owner: 'alexdima';
comment: 'A validation message for an extension';
type: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth'; isMeasurement: true };
extensionId: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth' };
extensionPointId: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth' };
message: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth' };
type: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth'; comment: 'Severity of problem.'; isMeasurement: true };
extensionId: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth'; comment: 'The identifier of the extension that has a problem.' };
extensionPointId: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth'; comment: 'The extension point that has a problem.' };
message: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth'; comment: 'The message of the problem.' };
};
type ExtensionsMessageEvent = {
type: Severity;
@ -1304,8 +1304,8 @@ export abstract class AbstractExtensionService extends Disposable implements IEx
type ExtensionActivationErrorClassification = {
owner: 'alexdima';
comment: 'An extension failed to activate';
extensionId: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth' };
error: { classification: 'CallstackOrException'; purpose: 'PerformanceAndHealth' };
extensionId: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth'; comment: 'The identifier of the extension.' };
error: { classification: 'CallstackOrException'; purpose: 'PerformanceAndHealth'; comment: 'The error message.' };
};
type ExtensionActivationErrorEvent = {
extensionId: string;

View file

@ -66,12 +66,12 @@ export function createExtensionHostManager(instantiationService: IInstantiationS
export type ExtensionHostStartupClassification = {
owner: 'alexdima';
comment: 'The startup state of the extension host';
time: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth' };
action: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth' };
kind: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth' };
errorName?: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth' };
errorMessage?: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth' };
errorStack?: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth' };
time: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth'; comment: 'The time reported by Date.now().' };
action: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth'; comment: 'The action: starting, success or error.' };
kind: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth'; comment: 'The extension host kind: LocalProcess, LocalWebWorker or Remote.' };
errorName?: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth'; comment: 'The error name.' };
errorMessage?: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth'; comment: 'The error message.' };
errorStack?: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth'; comment: 'The error stack.' };
};
export type ExtensionHostStartupEvent = {

View file

@ -304,9 +304,9 @@ export abstract class ElectronExtensionService extends AbstractExtensionService
type ExtensionHostCrashClassification = {
owner: 'alexdima';
comment: 'The extension host has terminated unexpectedly';
code: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth' };
signal: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth' };
extensionIds: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth' };
code: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth'; comment: 'The exit code of the extension host process.' };
signal: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth'; comment: 'The signal that caused the extension host process to exit.' };
extensionIds: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth'; comment: 'The list of loaded extensions.' };
};
type ExtensionHostCrashEvent = {
code: number;
@ -323,9 +323,9 @@ export abstract class ElectronExtensionService extends AbstractExtensionService
type ExtensionHostCrashExtensionClassification = {
owner: 'alexdima';
comment: 'The extension host has terminated unexpectedly';
code: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth' };
signal: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth' };
extensionId: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth' };
code: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth'; comment: 'The exit code of the extension host process.' };
signal: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth'; comment: 'The signal that caused the extension host process to exit.' };
extensionId: { classification: 'SystemMetaData'; purpose: 'PerformanceAndHealth'; comment: 'The identifier of the extension.' };
};
type ExtensionHostCrashExtensionEvent = {
code: number;