Repository: apex-malhar Updated Branches: refs/heads/master 571db6c06 -> c528980a9
APEXMALHAR-2028 #resolve #comment add stderr for ConsoleOperator Project: http://git-wip-us.apache.org/repos/asf/apex-malhar/repo Commit: http://git-wip-us.apache.org/repos/asf/apex-malhar/commit/d2a5481b Tree: http://git-wip-us.apache.org/repos/asf/apex-malhar/tree/d2a5481b Diff: http://git-wip-us.apache.org/repos/asf/apex-malhar/diff/d2a5481b Branch: refs/heads/master Commit: d2a5481bcda949ee2458dd9449ec7c975428c35e Parents: 37cb584 Author: Siyuan Hua <[email protected]> Authored: Wed Aug 17 23:20:58 2016 -0700 Committer: Siyuan Hua <[email protected]> Committed: Wed Aug 17 23:20:58 2016 -0700 ---------------------------------------------------------------------- .../lib/io/ConsoleOutputOperator.java | 22 +++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/apex-malhar/blob/d2a5481b/library/src/main/java/com/datatorrent/lib/io/ConsoleOutputOperator.java ---------------------------------------------------------------------- diff --git a/library/src/main/java/com/datatorrent/lib/io/ConsoleOutputOperator.java b/library/src/main/java/com/datatorrent/lib/io/ConsoleOutputOperator.java index 64046b2..38e15b1 100644 --- a/library/src/main/java/com/datatorrent/lib/io/ConsoleOutputOperator.java +++ b/library/src/main/java/com/datatorrent/lib/io/ConsoleOutputOperator.java @@ -18,6 +18,8 @@ */ package com.datatorrent.lib.io; +import java.io.PrintStream; + import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -43,6 +45,8 @@ public class ConsoleOutputOperator extends BaseOperator { private static final Logger logger = LoggerFactory.getLogger(ConsoleOutputOperator.class); + private transient PrintStream stream = isStderr() ? System.err : System.out; + /** * This is the input port which receives the tuples that will be written to stdout. */ @@ -59,7 +63,7 @@ public class ConsoleOutputOperator extends BaseOperator s = String.format(stringFormat, t); } if (!silent) { - System.out.println(s); + stream.println(s); } if (debug) { logger.info(s); @@ -88,6 +92,11 @@ public class ConsoleOutputOperator extends BaseOperator * When set to true, tuples are also logged at INFO level. */ private boolean debug; + + /** + * When set to true, output to stderr + */ + private boolean stderr = false; /** * A formatter for {@link String#format} */ @@ -103,6 +112,17 @@ public class ConsoleOutputOperator extends BaseOperator this.debug = debug; } + public boolean isStderr() + { + return stderr; + } + + public void setStderr(boolean stderr) + { + this.stderr = stderr; + stream = stderr ? System.err : System.out; + } + public String getStringFormat() { return stringFormat;
