提交 6f511d74 编写于 作者: J Johannes Rieken

send suggest duration telemetry as json raw data

上级 9b4f91b3
......@@ -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);
});
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册