From 45915eee3df55b254615453802cba98c7849be2a Mon Sep 17 00:00:00 2001 From: Serge Rider Date: Wed, 25 Dec 2019 14:50:37 +0300 Subject: [PATCH] Core logging fix (init debug log after it was configured in DBeaverApplication) --- .../core/application/DBeaverApplication.java | 6 +++--- .../internal/CoreApplicationActivator.java | 3 +-- .../src/org/jkiss/dbeaver/Log.java | 14 +++++++++----- 3 files changed, 13 insertions(+), 10 deletions(-) diff --git a/plugins/org.jkiss.dbeaver.core.application/src/org/jkiss/dbeaver/core/application/DBeaverApplication.java b/plugins/org.jkiss.dbeaver.core.application/src/org/jkiss/dbeaver/core/application/DBeaverApplication.java index 19b3b9e3ad..2a813b3f7c 100644 --- a/plugins/org.jkiss.dbeaver.core.application/src/org/jkiss/dbeaver/core/application/DBeaverApplication.java +++ b/plugins/org.jkiss.dbeaver.core.application/src/org/jkiss/dbeaver/core/application/DBeaverApplication.java @@ -160,7 +160,7 @@ public class DBeaverApplication extends BaseApplicationImpl { { String defaultHomePath = getDefaultInstanceLocation(); if (DBeaverCommandLine.handleCommandLine(commandLine, defaultHomePath)) { - log.debug("Commands processed. Exit " + GeneralUtils.getProductName() + "."); + System.err.println("Commands processed. Exit " + GeneralUtils.getProductName() + "."); return IApplication.EXIT_OK; } } @@ -196,14 +196,14 @@ public class DBeaverApplication extends BaseApplicationImpl { headlessMode = false; } + initDebugWriter(); + updateSplashHandler(); final Runtime runtime = Runtime.getRuntime(); // Init Core plugin and mark it as standalone version - initDebugWriter(); - log.debug(GeneralUtils.getProductName() + " " + GeneralUtils.getProductVersion() + " is starting"); //$NON-NLS-1$ log.debug("OS: " + System.getProperty(StandardConstants.ENV_OS_NAME) + " " + System.getProperty(StandardConstants.ENV_OS_VERSION) + " (" + System.getProperty(StandardConstants.ENV_OS_ARCH) + ")"); log.debug("Java version: " + System.getProperty(StandardConstants.ENV_JAVA_VERSION) + " by " + System.getProperty(StandardConstants.ENV_JAVA_VENDOR) + " (" + System.getProperty(StandardConstants.ENV_JAVA_ARCH) + "bit)"); diff --git a/plugins/org.jkiss.dbeaver.core.application/src/org/jkiss/dbeaver/core/application/internal/CoreApplicationActivator.java b/plugins/org.jkiss.dbeaver.core.application/src/org/jkiss/dbeaver/core/application/internal/CoreApplicationActivator.java index 11f32d20ab..dfb00b4788 100644 --- a/plugins/org.jkiss.dbeaver.core.application/src/org/jkiss/dbeaver/core/application/internal/CoreApplicationActivator.java +++ b/plugins/org.jkiss.dbeaver.core.application/src/org/jkiss/dbeaver/core/application/internal/CoreApplicationActivator.java @@ -32,7 +32,6 @@ public class CoreApplicationActivator extends AbstractUIPlugin { // The plug-in ID public static final String PLUGIN_ID = "org.jkiss.dbeaver.core.application"; - private static final Log log = Log.getLog(CoreApplicationActivator.class); // The shared instance private static CoreApplicationActivator plugin; @@ -71,7 +70,7 @@ public class CoreApplicationActivator extends AbstractUIPlugin { } } if (message != null) { - log.debug(message); + System.err.println(message); } }, null); //context.addBundleListener(new BundleLoadListener()); diff --git a/plugins/org.jkiss.dbeaver.model/src/org/jkiss/dbeaver/Log.java b/plugins/org.jkiss.dbeaver.model/src/org/jkiss/dbeaver/Log.java index 48bb756c38..afa5ae7530 100644 --- a/plugins/org.jkiss.dbeaver.model/src/org/jkiss/dbeaver/Log.java +++ b/plugins/org.jkiss.dbeaver.model/src/org/jkiss/dbeaver/Log.java @@ -53,7 +53,7 @@ public class Log private final String name; private static ThreadLocal logWriter = new ThreadLocal<>(); private static boolean quietMode; - private static final PrintWriter DEFAULT_DEBUG_WRITER = new PrintWriter(System.err);; + private static PrintWriter DEFAULT_DEBUG_WRITER; public static Log getLog(Class forClass) { return new Log(forClass.getName()); @@ -175,11 +175,15 @@ public class Log private void debugMessage(Object message, Throwable t) { PrintWriter logStream = logWriter.get(); - PrintWriter debugWriter = logStream != null ? logStream : (quietMode ? null : DEFAULT_DEBUG_WRITER); - if (debugWriter == null) { - return; - } synchronized (Log.class) { + if (DEFAULT_DEBUG_WRITER == null) { + DEFAULT_DEBUG_WRITER = new PrintWriter(System.err, true); + } + PrintWriter debugWriter = logStream != null ? logStream : (quietMode ? null : DEFAULT_DEBUG_WRITER); + if (debugWriter == null) { + return; + } + debugWriter.print(sdf.format(new Date()) + " - "); //$NON-NLS-1$ if (message != null) { debugWriter.println(message); -- GitLab