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/01/31 13:00:04 UTC
[10/11] incubator-kylin git commit: add error log for
FactDistinctColumnsJob.java
add error log for FactDistinctColumnsJob.java
Project: http://git-wip-us.apache.org/repos/asf/incubator-kylin/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-kylin/commit/49df68a1
Tree: http://git-wip-us.apache.org/repos/asf/incubator-kylin/tree/49df68a1
Diff: http://git-wip-us.apache.org/repos/asf/incubator-kylin/diff/49df68a1
Branch: refs/heads/staging
Commit: 49df68a1e27e1d08c10b66d655431a5abc7fa8fd
Parents: ccf8703
Author: qianhao.zhou <qi...@ebay.com>
Authored: Tue Jan 27 14:18:01 2015 +0800
Committer: qianhao.zhou <qi...@ebay.com>
Committed: Tue Jan 27 14:18:01 2015 +0800
----------------------------------------------------------------------
.../com/kylinolap/job/cmd/JavaHadoopCmd.java | 6 +++-
.../kylinolap/job/hadoop/AbstractHadoopJob.java | 38 ++++++++++++--------
.../job/hadoop/cube/FactDistinctColumnsJob.java | 1 +
3 files changed, 29 insertions(+), 16 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/49df68a1/job/src/main/java/com/kylinolap/job/cmd/JavaHadoopCmd.java
----------------------------------------------------------------------
diff --git a/job/src/main/java/com/kylinolap/job/cmd/JavaHadoopCmd.java b/job/src/main/java/com/kylinolap/job/cmd/JavaHadoopCmd.java
index 12b4d2c..69fdf60 100644
--- a/job/src/main/java/com/kylinolap/job/cmd/JavaHadoopCmd.java
+++ b/job/src/main/java/com/kylinolap/job/cmd/JavaHadoopCmd.java
@@ -16,6 +16,7 @@
package com.kylinolap.job.cmd;
+import org.apache.commons.lang3.StringUtils;
import org.apache.hadoop.util.ToolRunner;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -56,7 +57,10 @@ public class JavaHadoopCmd implements IJobCommand {
output.appendOutput(e.getLocalizedMessage());
output.setExitCode(-1);
}
-
+ final String errorLog = job.getErrorLog();
+ if (!StringUtils.isEmpty(errorLog)) {
+ output.appendOutput(errorLog);
+ }
output.appendOutput("Command execute return code " + output.getExitCode());
if (output.getExitCode() != 0) {
http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/49df68a1/job/src/main/java/com/kylinolap/job/hadoop/AbstractHadoopJob.java
----------------------------------------------------------------------
diff --git a/job/src/main/java/com/kylinolap/job/hadoop/AbstractHadoopJob.java b/job/src/main/java/com/kylinolap/job/hadoop/AbstractHadoopJob.java
index 81769e1..94ced88 100644
--- a/job/src/main/java/com/kylinolap/job/hadoop/AbstractHadoopJob.java
+++ b/job/src/main/java/com/kylinolap/job/hadoop/AbstractHadoopJob.java
@@ -19,13 +19,16 @@ package com.kylinolap.job.hadoop;
* @author George Song (ysong1)
*
*/
-import java.io.File;
-import java.io.IOException;
-import java.io.InputStream;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Map;
+import com.kylinolap.common.KylinConfig;
+import com.kylinolap.common.persistence.ResourceStore;
+import com.kylinolap.common.util.StringSplitter;
+import com.kylinolap.cube.CubeInstance;
+import com.kylinolap.cube.CubeSegment;
+import com.kylinolap.job.JobInstance;
+import com.kylinolap.job.exception.JobException;
+import com.kylinolap.job.tools.OptionsHelper;
+import com.kylinolap.metadata.model.schema.TableDesc;
import org.apache.commons.cli.Option;
import org.apache.commons.cli.OptionBuilder;
import org.apache.commons.cli.Options;
@@ -47,15 +50,10 @@ import org.apache.hadoop.util.ToolRunner;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import com.kylinolap.common.KylinConfig;
-import com.kylinolap.common.persistence.ResourceStore;
-import com.kylinolap.common.util.StringSplitter;
-import com.kylinolap.cube.CubeInstance;
-import com.kylinolap.cube.CubeSegment;
-import com.kylinolap.job.JobInstance;
-import com.kylinolap.job.exception.JobException;
-import com.kylinolap.job.tools.OptionsHelper;
-import com.kylinolap.metadata.model.schema.TableDesc;
+import java.io.*;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.Map;
@SuppressWarnings("static-access")
public abstract class AbstractHadoopJob extends Configured implements Tool {
@@ -90,6 +88,16 @@ public abstract class AbstractHadoopJob extends Configured implements Tool {
optionsHelper.printUsage(getClass().getSimpleName(), options);
}
+ private final StringWriter stringWriter = new StringWriter();
+
+ public final void addErrorLog(Exception ex) {
+ ex.printStackTrace(new PrintWriter(stringWriter));
+ }
+
+ public final String getErrorLog() {
+ return stringWriter.toString();
+ }
+
public Option[] getOptions() {
return optionsHelper.getOptions();
}
http://git-wip-us.apache.org/repos/asf/incubator-kylin/blob/49df68a1/job/src/main/java/com/kylinolap/job/hadoop/cube/FactDistinctColumnsJob.java
----------------------------------------------------------------------
diff --git a/job/src/main/java/com/kylinolap/job/hadoop/cube/FactDistinctColumnsJob.java b/job/src/main/java/com/kylinolap/job/hadoop/cube/FactDistinctColumnsJob.java
index 556f690..c85a5d4 100644
--- a/job/src/main/java/com/kylinolap/job/hadoop/cube/FactDistinctColumnsJob.java
+++ b/job/src/main/java/com/kylinolap/job/hadoop/cube/FactDistinctColumnsJob.java
@@ -81,6 +81,7 @@ public class FactDistinctColumnsJob extends AbstractHadoopJob {
} catch (Exception e) {
printUsage(options);
log.error(e.getLocalizedMessage(), e);
+ addErrorLog(e);
return 2;
}