mirror of
https://github.com/Microsoft/vscode
synced 2024-09-13 21:55:38 +00:00
send suggest duration telemetry as json raw data
This commit is contained in:
parent
9b4f91b31c
commit
6f511d74bb
|
@ -23,7 +23,6 @@ import { EditorOption } from 'vs/editor/common/config/editorOptions';
|
|||
import { isLowSurrogate, isHighSurrogate } from 'vs/base/common/strings';
|
||||
import { IClipboardService } from 'vs/platform/clipboard/common/clipboardService';
|
||||
import { ITelemetryService } from 'vs/platform/telemetry/common/telemetry';
|
||||
import { generateUuid } from 'vs/base/common/uuid';
|
||||
import { ILogService } from 'vs/platform/log/common/log';
|
||||
|
||||
export interface ICancelEvent {
|
||||
|
@ -489,31 +488,11 @@ export class SuggestModel implements IDisposable {
|
|||
|
||||
private _reportDurationsTelemetry(durations: CompletionDurations): void {
|
||||
|
||||
type DurationEntry = {
|
||||
session: string;
|
||||
providerName: string;
|
||||
elapsedProvider: number;
|
||||
elapsedOverall: number;
|
||||
};
|
||||
|
||||
type Durations = {
|
||||
session: string;
|
||||
elapsedAll: number;
|
||||
};
|
||||
|
||||
type PerformanceAndHealth<T> = { [P in keyof T]: { classification: 'SystemMetaData', purpose: 'PerformanceAndHealth' } };
|
||||
type DurationEntryClassification = PerformanceAndHealth<DurationEntry>;
|
||||
type DurationsClassification = PerformanceAndHealth<Durations>;
|
||||
|
||||
setTimeout(() => {
|
||||
|
||||
this._logService.trace('suggest.durations', durations);
|
||||
|
||||
const session = generateUuid();
|
||||
this._telemetryService.publicLog2<Durations, DurationsClassification>('suggest.durations.all', { session, elapsedAll: durations.elapsed });
|
||||
for (let item of durations.entries) {
|
||||
this._telemetryService.publicLog2<DurationEntry, DurationEntryClassification>('suggest.durations.entry', { session, ...item });
|
||||
}
|
||||
type Durations = { data: string; };
|
||||
type DurationsClassification = { data: { classification: 'SystemMetaData', purpose: 'PerformanceAndHealth' } };
|
||||
this._telemetryService.publicLog2<Durations, DurationsClassification>('suggest.durations.json', { data: JSON.stringify(durations) });
|
||||
this._logService.debug('suggest.durations.json', durations);
|
||||
});
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue