diff --git a/src/extension.ts b/src/extension.ts index c0de647..2327636 100644 --- a/src/extension.ts +++ b/src/extension.ts @@ -44,6 +44,7 @@ function initializeExtension(operationId: string, context: vscode.ExtensionConte }); }); + context.subscriptions.push(logger); context.subscriptions.push(vscode.debug.registerDebugConfigurationProvider("java", new JavaDebugConfigurationProvider())); context.subscriptions.push(instrumentAndRegisterCommand("JavaDebug.SpecifyProgramArgs", async () => { return specifyProgramArguments(context); diff --git a/src/logger.ts b/src/logger.ts index 37df1b0..e3313a1 100644 --- a/src/logger.ts +++ b/src/logger.ts @@ -11,7 +11,7 @@ export enum Type { ACTIVATEEXTENSION = "activateExtension", // TODO: Activation belongs to usage data, remove this category. } -class Logger { +class Logger implements vscode.Disposable { private reporter: TelemetryReporter = null; public initialize(context: vscode.ExtensionContext): void { @@ -43,6 +43,12 @@ class Logger { public logMessage(type: Type, message: string): void { this.log(type, { message }); } + + public dispose() { + if (this.reporter) { + this.reporter.dispose(); + } + } } export const logger = new Logger();