You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kylin.apache.org by li...@apache.org on 2015/11/25 08:39:47 UTC

[1/2] incubator-kylin git commit: KYLIN-1160 Set default logging configuration in JDBC and Backend code

Repository: incubator-kylin
Updated Branches:
  refs/heads/1.x-staging 2b0c3a503 -> 55c448b30


KYLIN-1160 Set default logging configuration in JDBC and Backend code

Signed-off-by: Li, Yang <ya...@ebay.com>


Project: http://git-wip-us.apache.org/repos/asf/incubator-kylin/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-kylin/commit/b7b6793f
Tree: http://git-wip-us.apache.org/repos/asf/incubator-kylin/tree/b7b6793f
Diff: http://git-wip-us.apache.org/repos/asf/incubator-kylin/diff/b7b6793f

Branch: refs/heads/1.x-staging
Commit: b7b6793f814eff6eda6bff6eaef22106e11b789c
Parents: 2b0c3a5
Author: lidongsjtu <do...@ebay.com>
Authored: Tue Nov 24 14:06:46 2015 +0800
Committer: Li, Yang <ya...@ebay.com>
Committed: Wed Nov 25 15:15:35 2015 +0800

----------------------------------------------------------------------
 .../org/apache/kylin/common/KylinConfig.java    |  4 +++
 .../kylin/common/util/Log4jConfigurer.java      | 37 ++++++++++++++++++++
 .../main/java/org/apache/kylin/jdbc/Driver.java |  2 ++
 .../java/org/apache/kylin/jdbc/KylinClient.java |  4 +--
 .../org/apache/kylin/jdbc/KylinConnection.java  |  4 +--
 .../kylin/jdbc/util/DefaultLoggerFactory.java   | 21 -----------
 .../util/DefaultSslProtocolSocketFactory.java   |  5 +--
 .../jdbc/util/DefaultX509TrustManager.java      | 13 +++----
 .../apache/kylin/jdbc/util/Log4jConfigurer.java | 37 ++++++++++++++++++++
 9 files changed, 94 insertions(+), 33 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/b7b6793f/common/src/main/java/org/apache/kylin/common/KylinConfig.java
----------------------------------------------------------------------
diff --git a/common/src/main/java/org/apache/kylin/common/KylinConfig.java b/common/src/main/java/org/apache/kylin/common/KylinConfig.java
index edb2586..a8f7c5d 100644
--- a/common/src/main/java/org/apache/kylin/common/KylinConfig.java
+++ b/common/src/main/java/org/apache/kylin/common/KylinConfig.java
@@ -35,6 +35,7 @@ import org.apache.commons.io.IOUtils;
 import org.apache.commons.lang.StringUtils;
 import org.apache.kylin.common.restclient.RestClient;
 import org.apache.kylin.common.util.CliCommandExecutor;
+import org.apache.kylin.common.util.Log4jConfigurer;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -243,12 +244,15 @@ public class KylinConfig {
      * @return
      */
     private static KylinConfig loadKylinConfig() {
+        Log4jConfigurer.initLogger();
+
         InputStream is = getKylinPropertiesAsInputSteam();
         if (is == null) {
             throw new IllegalArgumentException("Failed to load kylin config");
         }
         KylinConfig config = new KylinConfig();
         config.reloadKylinConfig(is);
+
         return config;
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/b7b6793f/common/src/main/java/org/apache/kylin/common/util/Log4jConfigurer.java
----------------------------------------------------------------------
diff --git a/common/src/main/java/org/apache/kylin/common/util/Log4jConfigurer.java b/common/src/main/java/org/apache/kylin/common/util/Log4jConfigurer.java
new file mode 100644
index 0000000..c329ced
--- /dev/null
+++ b/common/src/main/java/org/apache/kylin/common/util/Log4jConfigurer.java
@@ -0,0 +1,37 @@
+package org.apache.kylin.common.util;
+
+import java.util.Enumeration;
+
+import org.apache.log4j.ConsoleAppender;
+import org.apache.log4j.LogManager;
+import org.apache.log4j.Logger;
+import org.apache.log4j.PatternLayout;
+
+/**
+ * Created by dongli on 11/24/15.
+ */
+public class Log4jConfigurer {
+    private final static String DEFAULT_PATTERN_LAYOUT = "L4J [%d{yyyy-MM-dd HH:mm:ss,SSS}][%p][%c] - %m%n";
+    private static boolean INITIALIZED = false;
+
+    public static void initLogger() {
+        if (!INITIALIZED && !isConfigured()) {
+            org.apache.log4j.BasicConfigurator.configure(new ConsoleAppender(new PatternLayout(DEFAULT_PATTERN_LAYOUT)));
+            INITIALIZED = true;
+        }
+    }
+
+    private static boolean isConfigured() {
+        if (LogManager.getRootLogger().getAllAppenders().hasMoreElements()) {
+            return true;
+        } else {
+            Enumeration loggers = LogManager.getCurrentLoggers();
+            while (loggers.hasMoreElements()) {
+                Logger logger = (Logger) loggers.nextElement();
+                if (logger.getAllAppenders().hasMoreElements())
+                    return true;
+            }
+        }
+        return false;
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/b7b6793f/jdbc/src/main/java/org/apache/kylin/jdbc/Driver.java
----------------------------------------------------------------------
diff --git a/jdbc/src/main/java/org/apache/kylin/jdbc/Driver.java b/jdbc/src/main/java/org/apache/kylin/jdbc/Driver.java
index b58e8ff..a0074b1 100644
--- a/jdbc/src/main/java/org/apache/kylin/jdbc/Driver.java
+++ b/jdbc/src/main/java/org/apache/kylin/jdbc/Driver.java
@@ -25,6 +25,7 @@ import org.apache.calcite.avatica.AvaticaConnection;
 import org.apache.calcite.avatica.DriverVersion;
 import org.apache.calcite.avatica.Meta;
 import org.apache.calcite.avatica.UnregisteredDriver;
+import org.apache.kylin.jdbc.util.Log4jConfigurer;
 
 /**
  * <p>
@@ -72,6 +73,7 @@ public class Driver extends UnregisteredDriver {
     public static final String CONNECT_STRING_PREFIX = "jdbc:kylin:";
     static {
         try {
+            Log4jConfigurer.initLogger();
             DriverManager.registerDriver(new Driver());
         } catch (SQLException e) {
             throw new RuntimeException("Error occurred while registering JDBC driver " + Driver.class.getName() + ": " + e.toString());

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/b7b6793f/jdbc/src/main/java/org/apache/kylin/jdbc/KylinClient.java
----------------------------------------------------------------------
diff --git a/jdbc/src/main/java/org/apache/kylin/jdbc/KylinClient.java b/jdbc/src/main/java/org/apache/kylin/jdbc/KylinClient.java
index 708bfd0..f22a515 100644
--- a/jdbc/src/main/java/org/apache/kylin/jdbc/KylinClient.java
+++ b/jdbc/src/main/java/org/apache/kylin/jdbc/KylinClient.java
@@ -53,16 +53,16 @@ import org.apache.kylin.jdbc.json.SQLResponseStub;
 import org.apache.kylin.jdbc.json.StatementParameter;
 import org.apache.kylin.jdbc.json.TableMetaStub;
 import org.apache.kylin.jdbc.json.TableMetaStub.ColumnMetaStub;
-import org.apache.kylin.jdbc.util.DefaultLoggerFactory;
 import org.apache.kylin.jdbc.util.DefaultSslProtocolSocketFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import com.fasterxml.jackson.core.type.TypeReference;
 import com.fasterxml.jackson.databind.ObjectMapper;
 
 public class KylinClient implements IRemoteClient {
 
-    private static final Logger logger = DefaultLoggerFactory.getLogger(KylinClient.class);
+    private static final Logger logger = LoggerFactory.getLogger(KylinClient.class);
 
     private final KylinConnection conn;
     private final Properties connProps;

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/b7b6793f/jdbc/src/main/java/org/apache/kylin/jdbc/KylinConnection.java
----------------------------------------------------------------------
diff --git a/jdbc/src/main/java/org/apache/kylin/jdbc/KylinConnection.java b/jdbc/src/main/java/org/apache/kylin/jdbc/KylinConnection.java
index 5b99641..cf5526b 100644
--- a/jdbc/src/main/java/org/apache/kylin/jdbc/KylinConnection.java
+++ b/jdbc/src/main/java/org/apache/kylin/jdbc/KylinConnection.java
@@ -36,12 +36,12 @@ import org.apache.calcite.avatica.Meta;
 import org.apache.calcite.avatica.Meta.CursorFactory;
 import org.apache.calcite.avatica.Meta.Signature;
 import org.apache.calcite.avatica.UnregisteredDriver;
-import org.apache.kylin.jdbc.util.DefaultLoggerFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 public class KylinConnection extends AvaticaConnection {
 
-    private static final Logger logger = DefaultLoggerFactory.getLogger(KylinConnection.class);
+    private static final Logger logger = LoggerFactory.getLogger(KylinConnection.class);
 
     private final String baseUrl;
     private final String project;

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/b7b6793f/jdbc/src/main/java/org/apache/kylin/jdbc/util/DefaultLoggerFactory.java
----------------------------------------------------------------------
diff --git a/jdbc/src/main/java/org/apache/kylin/jdbc/util/DefaultLoggerFactory.java b/jdbc/src/main/java/org/apache/kylin/jdbc/util/DefaultLoggerFactory.java
deleted file mode 100644
index f5a1a28..0000000
--- a/jdbc/src/main/java/org/apache/kylin/jdbc/util/DefaultLoggerFactory.java
+++ /dev/null
@@ -1,21 +0,0 @@
-package org.apache.kylin.jdbc.util;
-
-import org.apache.log4j.ConsoleAppender;
-import org.apache.log4j.PatternLayout;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-/**
- * Created by dongli on 11/23/15.
- */
-public class DefaultLoggerFactory {
-
-    private final static String DEFAULT_PATTERN_LAYOUT = "L4J [%d{yyyy-MM-dd HH:mm:ss,SSS}][%p][%c] - %m%n";
-
-    public static Logger getLogger(Class<?> clazz) {
-        org.apache.log4j.Logger log4jLogger = org.apache.log4j.Logger.getLogger(clazz);
-        if (log4jLogger != null && !log4jLogger.getAllAppenders().hasMoreElements())
-            log4jLogger.addAppender(new ConsoleAppender(new PatternLayout(DEFAULT_PATTERN_LAYOUT)));
-        return LoggerFactory.getLogger(clazz);
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/b7b6793f/jdbc/src/main/java/org/apache/kylin/jdbc/util/DefaultSslProtocolSocketFactory.java
----------------------------------------------------------------------
diff --git a/jdbc/src/main/java/org/apache/kylin/jdbc/util/DefaultSslProtocolSocketFactory.java b/jdbc/src/main/java/org/apache/kylin/jdbc/util/DefaultSslProtocolSocketFactory.java
index 3615568..d46111c 100644
--- a/jdbc/src/main/java/org/apache/kylin/jdbc/util/DefaultSslProtocolSocketFactory.java
+++ b/jdbc/src/main/java/org/apache/kylin/jdbc/util/DefaultSslProtocolSocketFactory.java
@@ -32,12 +32,13 @@ import org.apache.commons.httpclient.params.HttpConnectionParams;
 import org.apache.commons.httpclient.protocol.ControllerThreadSocketFactory;
 import org.apache.commons.httpclient.protocol.SecureProtocolSocketFactory;
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 /**
  */
 public class DefaultSslProtocolSocketFactory implements SecureProtocolSocketFactory {
     /** Log object for this class. */
-    private static Logger LOG = DefaultLoggerFactory.getLogger(DefaultSslProtocolSocketFactory.class);
+    private static Logger logger = LoggerFactory.getLogger(DefaultSslProtocolSocketFactory.class);
     private SSLContext sslcontext = null;
 
     /**
@@ -54,7 +55,7 @@ public class DefaultSslProtocolSocketFactory implements SecureProtocolSocketFact
 
             return context;
         } catch (Exception e) {
-            LOG.error(e.getMessage(), e);
+            logger.error(e.getMessage(), e);
             throw new HttpClientError(e.toString());
         }
     }

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/b7b6793f/jdbc/src/main/java/org/apache/kylin/jdbc/util/DefaultX509TrustManager.java
----------------------------------------------------------------------
diff --git a/jdbc/src/main/java/org/apache/kylin/jdbc/util/DefaultX509TrustManager.java b/jdbc/src/main/java/org/apache/kylin/jdbc/util/DefaultX509TrustManager.java
index 9c93676..f79aca3 100644
--- a/jdbc/src/main/java/org/apache/kylin/jdbc/util/DefaultX509TrustManager.java
+++ b/jdbc/src/main/java/org/apache/kylin/jdbc/util/DefaultX509TrustManager.java
@@ -30,6 +30,7 @@ import javax.net.ssl.TrustManagerFactory;
 import javax.net.ssl.X509TrustManager;
 
 import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 /**
  * @author xduo
@@ -38,7 +39,7 @@ import org.slf4j.Logger;
 public class DefaultX509TrustManager implements X509TrustManager {
 
     /** Log object for this class. */
-    private static Logger LOG = DefaultLoggerFactory.getLogger(DefaultX509TrustManager.class);
+    private static Logger logger = LoggerFactory.getLogger(DefaultX509TrustManager.class);
     private X509TrustManager standardTrustManager = null;
 
     /**
@@ -70,12 +71,12 @@ public class DefaultX509TrustManager implements X509TrustManager {
     }
 
     public boolean isServerTrusted(X509Certificate[] certificates) {
-        if ((certificates != null) && LOG.isDebugEnabled()) {
-            LOG.debug("Server certificate chain:");
+        if ((certificates != null) && logger.isDebugEnabled()) {
+            logger.debug("Server certificate chain:");
 
             for (int i = 0; i < certificates.length; i++) {
-                if (LOG.isDebugEnabled()) {
-                    LOG.debug("X509Certificate[" + i + "]=" + certificates[i]);
+                if (logger.isDebugEnabled()) {
+                    logger.debug("X509Certificate[" + i + "]=" + certificates[i]);
                 }
             }
         }
@@ -86,7 +87,7 @@ public class DefaultX509TrustManager implements X509TrustManager {
             try {
                 certificate.checkValidity();
             } catch (CertificateException e) {
-                LOG.error(e.toString());
+                logger.error(e.toString());
 
                 return false;
             }

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/b7b6793f/jdbc/src/main/java/org/apache/kylin/jdbc/util/Log4jConfigurer.java
----------------------------------------------------------------------
diff --git a/jdbc/src/main/java/org/apache/kylin/jdbc/util/Log4jConfigurer.java b/jdbc/src/main/java/org/apache/kylin/jdbc/util/Log4jConfigurer.java
new file mode 100644
index 0000000..715d190
--- /dev/null
+++ b/jdbc/src/main/java/org/apache/kylin/jdbc/util/Log4jConfigurer.java
@@ -0,0 +1,37 @@
+package org.apache.kylin.jdbc.util;
+
+import java.util.Enumeration;
+
+import org.apache.log4j.ConsoleAppender;
+import org.apache.log4j.LogManager;
+import org.apache.log4j.Logger;
+import org.apache.log4j.PatternLayout;
+
+/**
+ * Created by dongli on 11/24/15.
+ */
+public class Log4jConfigurer {
+    private final static String DEFAULT_PATTERN_LAYOUT = "L4J [%d{yyyy-MM-dd HH:mm:ss,SSS}][%p][%c] - %m%n";
+    private static boolean INITIALIZED = false;
+
+    public static void initLogger() {
+        if (!INITIALIZED && !isConfigured()) {
+            org.apache.log4j.BasicConfigurator.configure(new ConsoleAppender(new PatternLayout(DEFAULT_PATTERN_LAYOUT)));
+            INITIALIZED = true;
+        }
+    }
+
+    private static boolean isConfigured() {
+        if (LogManager.getRootLogger().getAllAppenders().hasMoreElements()) {
+            return true;
+        } else {
+            Enumeration loggers = LogManager.getCurrentLoggers();
+            while (loggers.hasMoreElements()) {
+                Logger logger = (Logger) loggers.nextElement();
+                if (logger.getAllAppenders().hasMoreElements())
+                    return true;
+            }
+        }
+        return false;
+    }
+}


[2/2] incubator-kylin git commit: KYLIN-1160 code review

Posted by li...@apache.org.
KYLIN-1160 code review


Project: http://git-wip-us.apache.org/repos/asf/incubator-kylin/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-kylin/commit/55c448b3
Tree: http://git-wip-us.apache.org/repos/asf/incubator-kylin/tree/55c448b3
Diff: http://git-wip-us.apache.org/repos/asf/incubator-kylin/diff/55c448b3

Branch: refs/heads/1.x-staging
Commit: 55c448b30907eefca3561b8c15c61baccc4fba66
Parents: b7b6793
Author: Li, Yang <ya...@ebay.com>
Authored: Wed Nov 25 15:39:39 2015 +0800
Committer: Li, Yang <ya...@ebay.com>
Committed: Wed Nov 25 15:39:39 2015 +0800

----------------------------------------------------------------------
 .../main/java/org/apache/kylin/common/util/Log4jConfigurer.java  | 4 ++--
 .../main/java/org/apache/kylin/jdbc/util/Log4jConfigurer.java    | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/55c448b3/common/src/main/java/org/apache/kylin/common/util/Log4jConfigurer.java
----------------------------------------------------------------------
diff --git a/common/src/main/java/org/apache/kylin/common/util/Log4jConfigurer.java b/common/src/main/java/org/apache/kylin/common/util/Log4jConfigurer.java
index c329ced..6f887b7 100644
--- a/common/src/main/java/org/apache/kylin/common/util/Log4jConfigurer.java
+++ b/common/src/main/java/org/apache/kylin/common/util/Log4jConfigurer.java
@@ -17,15 +17,15 @@ public class Log4jConfigurer {
     public static void initLogger() {
         if (!INITIALIZED && !isConfigured()) {
             org.apache.log4j.BasicConfigurator.configure(new ConsoleAppender(new PatternLayout(DEFAULT_PATTERN_LAYOUT)));
-            INITIALIZED = true;
         }
+        INITIALIZED = true;
     }
 
     private static boolean isConfigured() {
         if (LogManager.getRootLogger().getAllAppenders().hasMoreElements()) {
             return true;
         } else {
-            Enumeration loggers = LogManager.getCurrentLoggers();
+            Enumeration<?> loggers = LogManager.getCurrentLoggers();
             while (loggers.hasMoreElements()) {
                 Logger logger = (Logger) loggers.nextElement();
                 if (logger.getAllAppenders().hasMoreElements())

http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/55c448b3/jdbc/src/main/java/org/apache/kylin/jdbc/util/Log4jConfigurer.java
----------------------------------------------------------------------
diff --git a/jdbc/src/main/java/org/apache/kylin/jdbc/util/Log4jConfigurer.java b/jdbc/src/main/java/org/apache/kylin/jdbc/util/Log4jConfigurer.java
index 715d190..8bf35e2 100644
--- a/jdbc/src/main/java/org/apache/kylin/jdbc/util/Log4jConfigurer.java
+++ b/jdbc/src/main/java/org/apache/kylin/jdbc/util/Log4jConfigurer.java
@@ -17,15 +17,15 @@ public class Log4jConfigurer {
     public static void initLogger() {
         if (!INITIALIZED && !isConfigured()) {
             org.apache.log4j.BasicConfigurator.configure(new ConsoleAppender(new PatternLayout(DEFAULT_PATTERN_LAYOUT)));
-            INITIALIZED = true;
         }
+        INITIALIZED = true;
     }
 
     private static boolean isConfigured() {
         if (LogManager.getRootLogger().getAllAppenders().hasMoreElements()) {
             return true;
         } else {
-            Enumeration loggers = LogManager.getCurrentLoggers();
+            Enumeration<?> loggers = LogManager.getCurrentLoggers();
             while (loggers.hasMoreElements()) {
                 Logger logger = (Logger) loggers.nextElement();
                 if (logger.getAllAppenders().hasMoreElements())