You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kylin.apache.org by bi...@apache.org on 2017/02/23 07:28:23 UTC

[09/11] kylin git commit: minor, replace system out in kylin-it with slf4j

minor, replace system out in kylin-it with slf4j


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

Branch: refs/heads/master-hbase0.98
Commit: 6cf9749e23ef784eebc4a0604632eaf1c9efc301
Parents: 730f5d7
Author: Hongbin Ma <ma...@apache.org>
Authored: Thu Feb 23 14:04:07 2017 +0800
Committer: Hongbin Ma <ma...@apache.org>
Committed: Thu Feb 23 14:04:12 2017 +0800

----------------------------------------------------------------------
 .../org/apache/kylin/common/util/ClassUtil.java |  6 +-
 kylin-it/pom.xml                                | 45 ++++++++++---
 .../apache/kylin/query/ITCombinationTest.java   | 10 ++-
 .../apache/kylin/query/ITFailfastQueryTest.java |  8 ++-
 .../apache/kylin/query/ITKylinQueryTest.java    | 19 +++---
 .../apache/kylin/query/ITMassInQueryTest.java   | 18 +++--
 .../org/apache/kylin/query/KylinTestBase.java   | 70 ++++++++++----------
 7 files changed, 110 insertions(+), 66 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/kylin/blob/6cf9749e/core-common/src/main/java/org/apache/kylin/common/util/ClassUtil.java
----------------------------------------------------------------------
diff --git a/core-common/src/main/java/org/apache/kylin/common/util/ClassUtil.java b/core-common/src/main/java/org/apache/kylin/common/util/ClassUtil.java
index 9af34c3..35a3277 100644
--- a/core-common/src/main/java/org/apache/kylin/common/util/ClassUtil.java
+++ b/core-common/src/main/java/org/apache/kylin/common/util/ClassUtil.java
@@ -29,12 +29,16 @@ import java.util.HashMap;
 import java.util.Map;
 import java.util.WeakHashMap;
 
+import org.slf4j.LoggerFactory;
+
 /**
  */
 public class ClassUtil {
 
+    private static final org.slf4j.Logger logger = LoggerFactory.getLogger(ClassUtil.class);
+
     public static void addClasspath(String path) {
-        System.out.println("Adding path " + path + " to class path");
+        logger.info("Adding path " + path + " to class path");
         File file = new File(path);
 
         try {

http://git-wip-us.apache.org/repos/asf/kylin/blob/6cf9749e/kylin-it/pom.xml
----------------------------------------------------------------------
diff --git a/kylin-it/pom.xml b/kylin-it/pom.xml
index d58a895..e039c3c 100644
--- a/kylin-it/pom.xml
+++ b/kylin-it/pom.xml
@@ -18,7 +18,8 @@
 -->
 
 
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
     <modelVersion>4.0.0</modelVersion>
 
@@ -241,6 +242,18 @@
             <scope>provided</scope>
         </dependency>
 
+        <!-- log dependency -->
+        <dependency>
+            <groupId>log4j</groupId>
+            <artifactId>log4j</artifactId>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.slf4j</groupId>
+            <artifactId>slf4j-log4j12</artifactId>
+            <scope>test</scope>
+        </dependency>
+
         <!-- Spark dependency -->
         <dependency>
             <groupId>org.apache.spark</groupId>
@@ -294,10 +307,14 @@
                             <systemProperties>
                                 <property>
                                     <name>log4j.configuration</name>
-                                    <value>file:${project.basedir}/..//build/conf/kylin-tools-log4j.properties</value>
+                                    <value>
+                                        file:${project.basedir}/..//build/conf/kylin-tools-log4j.properties
+                                    </value>
                                 </property>
                             </systemProperties>
-                            <argLine>-Xms1G -Xmx2G -XX:PermSize=128M -XX:MaxPermSize=512M -Dkylin.server.cluster-servers=localhost:7070</argLine>
+                            <argLine>-Xms1G -Xmx2G -XX:PermSize=128M -XX:MaxPermSize=512M
+                                -Dkylin.server.cluster-servers=localhost:7070
+                            </argLine>
                         </configuration>
                     </plugin>
                     <plugin>
@@ -317,12 +334,17 @@
                                     <arguments>
                                         <argument>-Dhdp.version=${hdp.version}</argument>
                                         <argument>-DfastBuildMode=${fastBuildMode}</argument>
-                                        <argument>-DbuildCubeUsingProvidedData=${buildCubeUsingProvidedData}</argument>
+                                        <argument>
+                                            -DbuildCubeUsingProvidedData=${buildCubeUsingProvidedData}
+                                        </argument>
                                         <argument>-DengineType=${engineType}</argument>
-                                        <argument>-Dlog4j.configuration=file:${project.basedir}/..//build/conf/kylin-tools-log4j.properties</argument>
+                                        <argument>
+                                            -Dlog4j.configuration=file:${project.basedir}/..//build/conf/kylin-tools-log4j.properties
+                                        </argument>
                                         <argument>-classpath</argument>
                                         <classpath/>
-                                        <argument>org.apache.kylin.provision.BuildCubeWithEngine</argument>
+                                        <argument>org.apache.kylin.provision.BuildCubeWithEngine
+                                        </argument>
                                     </arguments>
                                     <workingDirectory>${project.basedir}</workingDirectory>
                                 </configuration>
@@ -340,11 +362,16 @@
                                     <arguments>
                                         <argument>-Dhdp.version=${hdp.version}</argument>
                                         <argument>-DfastBuildMode=${fastBuildMode}</argument>
-                                        <argument>-DbuildCubeUsingProvidedData=${buildCubeUsingProvidedData}</argument>
-                                        <argument>-Dlog4j.configuration=file:${project.basedir}/..//build/conf/kylin-tools-log4j.properties</argument>
+                                        <argument>
+                                            -DbuildCubeUsingProvidedData=${buildCubeUsingProvidedData}
+                                        </argument>
+                                        <argument>
+                                            -Dlog4j.configuration=file:${project.basedir}/..//build/conf/kylin-tools-log4j.properties
+                                        </argument>
                                         <argument>-classpath</argument>
                                         <classpath/>
-                                        <argument>org.apache.kylin.provision.BuildCubeWithStream</argument>
+                                        <argument>org.apache.kylin.provision.BuildCubeWithStream
+                                        </argument>
                                     </arguments>
                                     <workingDirectory>${project.basedir}</workingDirectory>
                                 </configuration>

http://git-wip-us.apache.org/repos/asf/kylin/blob/6cf9749e/kylin-it/src/test/java/org/apache/kylin/query/ITCombinationTest.java
----------------------------------------------------------------------
diff --git a/kylin-it/src/test/java/org/apache/kylin/query/ITCombinationTest.java b/kylin-it/src/test/java/org/apache/kylin/query/ITCombinationTest.java
index 23eadaf..0bed5ed 100644
--- a/kylin-it/src/test/java/org/apache/kylin/query/ITCombinationTest.java
+++ b/kylin-it/src/test/java/org/apache/kylin/query/ITCombinationTest.java
@@ -30,6 +30,8 @@ import org.junit.AfterClass;
 import org.junit.BeforeClass;
 import org.junit.runner.RunWith;
 import org.junit.runners.Parameterized;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import com.google.common.collect.Maps;
 
@@ -38,6 +40,8 @@ import com.google.common.collect.Maps;
 @RunWith(Parameterized.class)
 public class ITCombinationTest extends ITKylinQueryTest {
 
+    private static final Logger logger = LoggerFactory.getLogger(ITCombinationTest.class);
+
     @BeforeClass
     public static void setUp() throws SQLException {
         Map<RealizationType, Integer> priorities = Maps.newHashMap();
@@ -45,12 +49,12 @@ public class ITCombinationTest extends ITKylinQueryTest {
         priorities.put(RealizationType.CUBE, 0);
         Candidate.setPriorities(priorities);
 
-        printInfo("setUp in ITCombinationTest");
+        logger.info("setUp in ITCombinationTest");
     }
 
     @AfterClass
     public static void tearDown() {
-        printInfo("tearDown in ITCombinationTest");
+        logger.info("tearDown in ITCombinationTest");
         clean();
         Candidate.restorePriorities();
     }
@@ -70,7 +74,7 @@ public class ITCombinationTest extends ITKylinQueryTest {
 
     public ITCombinationTest(String joinType, String coprocessorToggle, String queryEngine) throws Exception {
 
-        printInfo("Into combination join type: " + joinType + ", coprocessor toggle: " + coprocessorToggle + ", query engine: " + queryEngine);
+        logger.info("Into combination join type: " + joinType + ", coprocessor toggle: " + coprocessorToggle + ", query engine: " + queryEngine);
 
         ITKylinQueryTest.clean();
 

http://git-wip-us.apache.org/repos/asf/kylin/blob/6cf9749e/kylin-it/src/test/java/org/apache/kylin/query/ITFailfastQueryTest.java
----------------------------------------------------------------------
diff --git a/kylin-it/src/test/java/org/apache/kylin/query/ITFailfastQueryTest.java b/kylin-it/src/test/java/org/apache/kylin/query/ITFailfastQueryTest.java
index 73a597a..17b804a 100644
--- a/kylin-it/src/test/java/org/apache/kylin/query/ITFailfastQueryTest.java
+++ b/kylin-it/src/test/java/org/apache/kylin/query/ITFailfastQueryTest.java
@@ -31,17 +31,21 @@ import org.junit.BeforeClass;
 import org.junit.Rule;
 import org.junit.Test;
 import org.junit.rules.ExpectedException;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import com.google.common.collect.Maps;
 
 public class ITFailfastQueryTest extends KylinTestBase {
 
+    private static final Logger logger = LoggerFactory.getLogger(ITFailfastQueryTest.class);
+
     @Rule
     public ExpectedException thrown = ExpectedException.none();
 
     @BeforeClass
     public static void setUp() throws Exception {
-        printInfo("setUp in ITFailfastQueryTest");
+        logger.info("setUp in ITFailfastQueryTest");
         Map<RealizationType, Integer> priorities = Maps.newHashMap();
         priorities.put(RealizationType.HYBRID, 0);
         priorities.put(RealizationType.CUBE, 0);
@@ -58,7 +62,7 @@ public class ITFailfastQueryTest extends KylinTestBase {
 
     @AfterClass
     public static void tearDown() throws Exception {
-        printInfo("tearDown in ITFailfastQueryTest");
+        logger.info("tearDown in ITFailfastQueryTest");
         Candidate.restorePriorities();
         clean();
     }

http://git-wip-us.apache.org/repos/asf/kylin/blob/6cf9749e/kylin-it/src/test/java/org/apache/kylin/query/ITKylinQueryTest.java
----------------------------------------------------------------------
diff --git a/kylin-it/src/test/java/org/apache/kylin/query/ITKylinQueryTest.java b/kylin-it/src/test/java/org/apache/kylin/query/ITKylinQueryTest.java
index 1158704..cdaa10b 100644
--- a/kylin-it/src/test/java/org/apache/kylin/query/ITKylinQueryTest.java
+++ b/kylin-it/src/test/java/org/apache/kylin/query/ITKylinQueryTest.java
@@ -44,18 +44,22 @@ import org.junit.Ignore;
 import org.junit.Rule;
 import org.junit.Test;
 import org.junit.rules.ExpectedException;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import com.google.common.collect.Maps;
 
 @Ignore("KylinQueryTest is contained by ITCombinationTest")
 public class ITKylinQueryTest extends KylinTestBase {
 
+    private static final Logger logger = LoggerFactory.getLogger(ITKylinQueryTest.class);
+
     @Rule
     public ExpectedException thrown = ExpectedException.none();
 
     @BeforeClass
     public static void setUp() throws Exception {
-        printInfo("setUp in ITKylinQueryTest");
+        logger.info("setUp in ITKylinQueryTest");
         Map<RealizationType, Integer> priorities = Maps.newHashMap();
         priorities.put(RealizationType.HYBRID, 0);
         priorities.put(RealizationType.CUBE, 0);
@@ -69,7 +73,7 @@ public class ITKylinQueryTest extends KylinTestBase {
 
     @AfterClass
     public static void tearDown() throws Exception {
-        printInfo("tearDown in ITKylinQueryTest");
+        logger.info("tearDown in ITKylinQueryTest");
         Candidate.restorePriorities();
         clean();
     }
@@ -127,11 +131,10 @@ public class ITKylinQueryTest extends KylinTestBase {
 
     }
 
-    @Ignore
     @Test
     public void testSingleRunQuery() throws Exception {
 
-        String queryFileName = getQueryFolderPrefix() + "src/test/resources/query/sql_multi_model/query01.sql";
+        String queryFileName = getQueryFolderPrefix() + "src/test/resources/query/sql_verifyCount/query03.sql";
 
         File sqlFile = new File(queryFileName);
         if (sqlFile.exists()) {
@@ -301,12 +304,12 @@ public class ITKylinQueryTest extends KylinTestBase {
     @Test
     public void testInvalidQuery() throws Exception {
 
-        printInfo("-------------------- Test Invalid Query --------------------");
+        logger.info("-------------------- Test Invalid Query --------------------");
         String queryFolder = getQueryFolderPrefix() + "src/test/resources/query/sql_invalid";
         List<File> sqlFiles = getFilesFromFolder(new File(queryFolder), ".sql");
         for (File sqlFile : sqlFiles) {
             String queryName = StringUtils.split(sqlFile.getName(), '.')[0];
-            printInfo("Testing Query " + queryName);
+            logger.info("Testing Query " + queryName);
             String sql = getTextFromFile(sqlFile);
             IDatabaseConnection cubeConn = new DatabaseConnection(cubeConnection);
             try {
@@ -359,13 +362,13 @@ public class ITKylinQueryTest extends KylinTestBase {
     @Test
     public void testVersionQuery() throws Exception {
         String expectVersion = KylinVersion.getCurrentVersion().toString();
-        printInfo("---------- verify expect version: " + expectVersion);
+        logger.info("---------- verify expect version: " + expectVersion);
 
         String queryName = "QueryKylinVersion";
         String sql = "SELECT VERSION() AS version";
 
         // execute Kylin
-        printInfo("Query Result from Kylin - " + queryName);
+        logger.info("Query Result from Kylin - " + queryName);
         IDatabaseConnection kylinConn = new DatabaseConnection(cubeConnection);
         ITable kylinTable = executeQuery(kylinConn, queryName, sql, false);
         String queriedVersion = String.valueOf(kylinTable.getValue(0, "version"));

http://git-wip-us.apache.org/repos/asf/kylin/blob/6cf9749e/kylin-it/src/test/java/org/apache/kylin/query/ITMassInQueryTest.java
----------------------------------------------------------------------
diff --git a/kylin-it/src/test/java/org/apache/kylin/query/ITMassInQueryTest.java b/kylin-it/src/test/java/org/apache/kylin/query/ITMassInQueryTest.java
index 8859329..cca0be6 100644
--- a/kylin-it/src/test/java/org/apache/kylin/query/ITMassInQueryTest.java
+++ b/kylin-it/src/test/java/org/apache/kylin/query/ITMassInQueryTest.java
@@ -39,6 +39,8 @@ import org.junit.Before;
 import org.junit.BeforeClass;
 import org.junit.Ignore;
 import org.junit.Test;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import com.google.common.collect.Sets;
 
@@ -46,6 +48,8 @@ import com.google.common.collect.Sets;
  */
 public class ITMassInQueryTest extends KylinTestBase {
 
+    private static final Logger logger = LoggerFactory.getLogger(ITMassInQueryTest.class);
+
     FileSystem fileSystem;
     Set<Long> vipSellers;
 
@@ -100,7 +104,7 @@ public class ITMassInQueryTest extends KylinTestBase {
     }
 
     protected void run(String queryFolder, String[] exclusiveQuerys, boolean needSort) throws Exception {
-        printInfo("---------- test folder: " + queryFolder);
+        logger.info("---------- test folder: " + queryFolder);
         Set<String> exclusiveSet = buildExclusiveSet(exclusiveQuerys);
 
         List<File> sqlFiles = getFilesFromFolder(new File(queryFolder), ".sql");
@@ -112,7 +116,7 @@ public class ITMassInQueryTest extends KylinTestBase {
             String sql = getTextFromFile(sqlFile);
 
             // execute Kylin
-            printInfo("Query Result from Kylin - " + queryName + "  (" + queryFolder + ")");
+            logger.info("Query Result from Kylin - " + queryName + "  (" + queryFolder + ")");
             IDatabaseConnection kylinConn = new DatabaseConnection(cubeConnection);
             ITable kylinTable = executeQuery(kylinConn, queryName, sql, needSort);
             printResult(kylinTable);
@@ -121,7 +125,7 @@ public class ITMassInQueryTest extends KylinTestBase {
     }
 
     protected void compare(String queryFolder, String[] exclusiveQuerys, boolean needSort) throws Exception {
-        printInfo("---------- test folder: " + queryFolder);
+        logger.info("---------- test folder: " + queryFolder);
         Set<String> exclusiveSet = buildExclusiveSet(exclusiveQuerys);
 
         List<File> sqlFiles = getFilesFromFolder(new File(queryFolder), ".sql");
@@ -133,21 +137,21 @@ public class ITMassInQueryTest extends KylinTestBase {
             String sql = getTextFromFile(sqlFile);
 
             // execute Kylin
-            printInfo("Query Result from Kylin - " + queryName + "  (" + queryFolder + ")");
+            logger.info("Query Result from Kylin - " + queryName + "  (" + queryFolder + ")");
             IDatabaseConnection kylinConn = new DatabaseConnection(cubeConnection);
             ITable kylinTable = executeQuery(kylinConn, queryName, sql, needSort);
 
             // execute H2
             sql = sql.replace("massin(test_kylin_fact.SELLER_ID,'vip_customers')", "test_kylin_fact.SELLER_ID in ( " + org.apache.commons.lang.StringUtils.join(vipSellers, ",") + ")");
-            printInfo("Query Result from H2 - " + queryName);
-            printInfo("Query for H2 - " + sql);
+            logger.info("Query Result from H2 - " + queryName);
+            logger.info("Query for H2 - " + sql);
             ITable h2Table = executeQuery(newH2Connection(), queryName, sql, needSort);
 
             try {
                 // compare the result
                 assertTableEquals(h2Table, kylinTable);
             } catch (Throwable t) {
-                printInfo("execAndCompQuery failed on: " + sqlFile.getAbsolutePath());
+                logger.info("execAndCompQuery failed on: " + sqlFile.getAbsolutePath());
                 throw t;
             }
         }

http://git-wip-us.apache.org/repos/asf/kylin/blob/6cf9749e/kylin-it/src/test/java/org/apache/kylin/query/KylinTestBase.java
----------------------------------------------------------------------
diff --git a/kylin-it/src/test/java/org/apache/kylin/query/KylinTestBase.java b/kylin-it/src/test/java/org/apache/kylin/query/KylinTestBase.java
index fd04b2f..d0524c6 100644
--- a/kylin-it/src/test/java/org/apache/kylin/query/KylinTestBase.java
+++ b/kylin-it/src/test/java/org/apache/kylin/query/KylinTestBase.java
@@ -32,7 +32,6 @@ import java.sql.ResultSet;
 import java.sql.ResultSetMetaData;
 import java.sql.SQLException;
 import java.sql.Statement;
-import java.sql.Timestamp;
 import java.sql.Types;
 import java.util.ArrayList;
 import java.util.Arrays;
@@ -65,6 +64,8 @@ import org.dbunit.dataset.xml.FlatXmlDataSetBuilder;
 import org.dbunit.ext.h2.H2Connection;
 import org.dbunit.ext.h2.H2DataTypeFactory;
 import org.junit.Assert;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import com.google.common.collect.ImmutableSet;
 import com.google.common.io.Files;
@@ -73,6 +74,7 @@ import com.google.common.io.Files;
  */
 public class KylinTestBase {
 
+    private static final Logger logger = LoggerFactory.getLogger(KylinTestBase.class);
     public static boolean PRINT_RESULT = false;
 
     class ObjectArray {
@@ -181,10 +183,6 @@ public class KylinTestBase {
         return parameters;
     }
 
-    protected static void printInfo(String info) {
-        System.out.println(new Timestamp(System.currentTimeMillis()) + " - " + info);
-    }
-
     protected static void printResult(ITable resultTable) throws DataSetException {
         StringBuilder sb = new StringBuilder();
 
@@ -251,10 +249,10 @@ public class KylinTestBase {
         Statement statement = null;
         ResultSet resultSet = null;
         try {
-            printInfo("start running...");
+            logger.info("start running...");
             statement = cubeConnection.createStatement();
             resultSet = statement.executeQuery(sql);
-            printInfo("stop running...");
+            logger.info("stop running...");
 
             return output(resultSet, needDisplay);
         } finally {
@@ -319,13 +317,13 @@ public class KylinTestBase {
 
         String ret = StringUtils.join(tokens, " ");
         ret = ret.replaceAll(specialStr, System.getProperty("line.separator"));
-        System.out.println("The actual sql executed is: " + ret);
+        logger.info("The actual sql executed is: " + ret);
 
         return ret;
     }
 
     protected void execQueryUsingH2(String queryFolder, boolean needSort) throws Exception {
-        printInfo("---------- Running H2 queries: " + queryFolder);
+        logger.info("---------- Running H2 queries: " + queryFolder);
 
         List<File> sqlFiles = getFilesFromFolder(new File(queryFolder), ".sql");
         for (File sqlFile : sqlFiles) {
@@ -333,13 +331,13 @@ public class KylinTestBase {
             String sql = getTextFromFile(sqlFile);
 
             // execute H2
-            printInfo("Query Result from H2 - " + queryName);
+            logger.info("Query Result from H2 - " + queryName);
             executeQuery(newH2Connection(), queryName, sql, needSort);
         }
     }
 
     protected void verifyResultRowColCount(String queryFolder) throws Exception {
-        printInfo("---------- verify result count in folder: " + queryFolder);
+        logger.info("---------- verify result count in folder: " + queryFolder);
 
         List<File> sqlFiles = getFilesFromFolder(new File(queryFolder), ".sql");
         for (File sqlFile : sqlFiles) {
@@ -352,7 +350,7 @@ public class KylinTestBase {
             int expectColCount = pair.getSecond();
 
             // execute Kylin
-            printInfo("Query Result from Kylin - " + queryName + "  (" + queryFolder + ")");
+            logger.info("Query Result from Kylin - " + queryName + "  (" + queryFolder + ")");
             IDatabaseConnection kylinConn = new DatabaseConnection(cubeConnection);
             ITable kylinTable = executeQuery(kylinConn, queryName, sql, false);
 
@@ -381,7 +379,7 @@ public class KylinTestBase {
     }
 
     protected void verifyResultContent(String queryFolder) throws Exception {
-        printInfo("---------- verify result content in folder: " + queryFolder);
+        logger.info("---------- verify result content in folder: " + queryFolder);
 
         List<File> sqlFiles = getFilesFromFolder(new File(queryFolder), ".sql");
         for (File sqlFile : sqlFiles) {
@@ -394,7 +392,7 @@ public class KylinTestBase {
             ITable expectTable = expect.getTable("expect");
 
             // execute Kylin
-            printInfo("Query Result from Kylin - " + queryName + "  (" + queryFolder + ")");
+            logger.info("Query Result from Kylin - " + queryName + "  (" + queryFolder + ")");
             IDatabaseConnection kylinConn = new DatabaseConnection(cubeConnection);
             ITable kylinTable = executeQuery(kylinConn, queryName, sql, false);
 
@@ -404,7 +402,7 @@ public class KylinTestBase {
     }
 
     protected void execAndCompResultSize(String queryFolder, String[] exclusiveQuerys, boolean needSort) throws Exception {
-        printInfo("---------- test folder: " + queryFolder);
+        logger.info("---------- test folder: " + queryFolder);
         Set<String> exclusiveSet = buildExclusiveSet(exclusiveQuerys);
 
         List<File> sqlFiles = getFilesFromFolder(new File(queryFolder), ".sql");
@@ -416,19 +414,19 @@ public class KylinTestBase {
             String sql = getTextFromFile(sqlFile);
 
             // execute Kylin
-            printInfo("Query Result from Kylin - " + queryName + "  (" + queryFolder + ")");
+            logger.info("Query Result from Kylin - " + queryName + "  (" + queryFolder + ")");
             IDatabaseConnection kylinConn = new DatabaseConnection(cubeConnection);
             ITable kylinTable = executeQuery(kylinConn, queryName, sql, needSort);
 
             // execute H2
-            printInfo("Query Result from H2 - " + queryName);
+            logger.info("Query Result from H2 - " + queryName);
             ITable h2Table = executeQuery(newH2Connection(), queryName, sql, needSort);
 
             try {
                 // compare the result
                 Assert.assertEquals(h2Table.getRowCount(), kylinTable.getRowCount());
             } catch (Throwable t) {
-                printInfo("execAndCompResultSize failed on: " + sqlFile.getAbsolutePath());
+                logger.info("execAndCompResultSize failed on: " + sqlFile.getAbsolutePath());
                 throw t;
             }
 
@@ -440,12 +438,12 @@ public class KylinTestBase {
     }
 
     protected void execAndCompColumnCount(String input, int expectedColumnCount) throws Exception {
-        printInfo("---------- test column count: " + input);
+        logger.info("---------- test column count: " + input);
         Set<String> sqlSet = ImmutableSet.of(input);
 
         for (String sql : sqlSet) {
             // execute Kylin
-            printInfo("Query Result from Kylin - " + sql);
+            logger.info("Query Result from Kylin - " + sql);
             IDatabaseConnection kylinConn = new DatabaseConnection(cubeConnection);
             ITable kylinTable = executeQuery(kylinConn, sql, sql, false);
 
@@ -453,14 +451,14 @@ public class KylinTestBase {
                 // compare the result
                 Assert.assertEquals(expectedColumnCount, kylinTable.getTableMetaData().getColumns().length);
             } catch (Throwable t) {
-                printInfo("execAndCompColumnCount failed on: " + sql);
+                logger.info("execAndCompColumnCount failed on: " + sql);
                 throw t;
             }
         }
     }
 
     protected void execLimitAndValidate(String queryFolder) throws Exception {
-        printInfo("---------- test folder: " + new File(queryFolder).getAbsolutePath());
+        logger.info("---------- test folder: " + new File(queryFolder).getAbsolutePath());
 
         int appendLimitQueries = 0;
         List<File> sqlFiles = getFilesFromFolder(new File(queryFolder), ".sql");
@@ -477,18 +475,18 @@ public class KylinTestBase {
             }
 
             // execute Kylin
-            printInfo("Query Result from Kylin - " + queryName + "  (" + queryFolder + ")");
+            logger.info("Query Result from Kylin - " + queryName + "  (" + queryFolder + ")");
             IDatabaseConnection kylinConn = new DatabaseConnection(cubeConnection);
             ITable kylinTable = executeQuery(kylinConn, queryName, sqlWithLimit, false);
 
             // execute H2
-            printInfo("Query Result from H2 - " + queryName);
+            logger.info("Query Result from H2 - " + queryName);
             ITable h2Table = executeQuery(newH2Connection(), queryName, sql, false);
 
             try {
                 assertTableContains(h2Table, kylinTable);
             } catch (Throwable t) {
-                printInfo("execAndCompQuery failed on: " + sqlFile.getAbsolutePath());
+                logger.info("execAndCompQuery failed on: " + sqlFile.getAbsolutePath());
                 throw t;
             }
 
@@ -497,11 +495,11 @@ public class KylinTestBase {
                 zeroResultQueries.add(sql);
             }
         }
-        printInfo("Queries appended with limit: " + appendLimitQueries);
+        logger.info("Queries appended with limit: " + appendLimitQueries);
     }
 
     protected void execAndCompQuery(String queryFolder, String[] exclusiveQuerys, boolean needSort) throws Exception {
-        printInfo("---------- test folder: " + new File(queryFolder).getAbsolutePath());
+        logger.info("---------- test folder: " + new File(queryFolder).getAbsolutePath());
         Set<String> exclusiveSet = buildExclusiveSet(exclusiveQuerys);
 
         List<File> sqlFiles = getFilesFromFolder(new File(queryFolder), ".sql");
@@ -513,21 +511,21 @@ public class KylinTestBase {
             String sql = getTextFromFile(sqlFile);
 
             // execute Kylin
-            printInfo("Query Result from Kylin - " + queryName + "  (" + queryFolder + ")");
+            logger.info("Query Result from Kylin - " + queryName + "  (" + queryFolder + ")");
             IDatabaseConnection kylinConn = new DatabaseConnection(cubeConnection);
             ITable kylinTable = executeQuery(kylinConn, queryName, sql, needSort);
 
             // execute H2
-            printInfo("Query Result from H2 - " + queryName);
+            logger.info("Query Result from H2 - " + queryName);
             long currentTime = System.currentTimeMillis();
             ITable h2Table = executeQuery(newH2Connection(), queryName, sql, needSort);
-            printInfo("H2 spent " + (System.currentTimeMillis() - currentTime) + " mili-seconds.");
+            logger.info("H2 spent " + (System.currentTimeMillis() - currentTime) + " mili-seconds.");
 
             try {
                 // compare the result
                 assertTableEquals(h2Table, kylinTable);
             } catch (Throwable t) {
-                printInfo("execAndCompQuery failed on: " + sqlFile.getAbsolutePath());
+                logger.info("execAndCompQuery failed on: " + sqlFile.getAbsolutePath());
                 throw t;
             }
 
@@ -539,7 +537,7 @@ public class KylinTestBase {
     }
 
     protected void execAndCompDynamicQuery(String queryFolder, String[] exclusiveQuerys, boolean needSort) throws Exception {
-        printInfo("---------- test folder: " + queryFolder);
+        logger.info("---------- test folder: " + queryFolder);
         Set<String> exclusiveSet = buildExclusiveSet(exclusiveQuerys);
 
         List<File> sqlFiles = getFilesFromFolder(new File(queryFolder), ".sql");
@@ -552,12 +550,12 @@ public class KylinTestBase {
             List<String> parameters = getParameterFromFile(sqlFile);
 
             // execute Kylin
-            printInfo("Query Result from Kylin - " + queryName + "  (" + queryFolder + ")");
+            logger.info("Query Result from Kylin - " + queryName + "  (" + queryFolder + ")");
             IDatabaseConnection kylinConn = new DatabaseConnection(cubeConnection);
             ITable kylinTable = executeDynamicQuery(kylinConn, queryName, sql, parameters, needSort);
 
             // execute H2
-            printInfo("Query Result from H2 - " + queryName);
+            logger.info("Query Result from H2 - " + queryName);
             ITable h2Table = executeDynamicQuery(newH2Connection(), queryName, sql, parameters, needSort);
 
             // compare the result
@@ -598,7 +596,7 @@ public class KylinTestBase {
         }
 
         String queryName = StringUtils.split(sqlFile.getName(), '.')[0];
-        printInfo("Testing Query " + queryName);
+        logger.info("Testing Query " + queryName);
         String sql = getTextFromFile(sqlFile);
         if (explain) {
             sql = "explain plan for " + sql;
@@ -651,7 +649,7 @@ public class KylinTestBase {
             }
             count++;
         }
-        printInfo(sb.toString());
+        logger.info(sb.toString());
         return count;
     }