Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Clean up the registerd logger handlers when stopping the plugin
Signed-off-by: Jinbo Wang <[email protected]>
  • Loading branch information
testforstephen committed Nov 27, 2019
commit cc0148d6d006b87a25cd5a52a88a7272dc33d50a
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ public void start(BundleContext context) throws Exception {
@Override
public void stop(BundleContext context) throws Exception {
logger.info("Stopping " + PLUGIN_ID);
LogUtils.cleanupHandlers();
}

}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@

package com.microsoft.java.debug.plugin.internal;

import java.util.logging.Handler;
import java.util.logging.Level;
import java.util.logging.Logger;

Expand All @@ -32,6 +33,21 @@ public static void initialize(Level level) {
logger.setLevel(level);
}

/**
* Remove the logger handlers registered to the global logger.
*/
public static void cleanupHandlers() {
Handler[] handlers = logger.getHandlers();
for (Handler handler : handlers) {
logger.removeHandler(handler);
}

Handler[] usageHandlers = usageDataLogger.getHandlers();
for (Handler handler : usageHandlers) {
usageDataLogger.removeHandler(handler);
}
}

/**
* Configure log level setting for java debugger.
*
Expand Down