diff --git a/heron/instance/src/java/com/twitter/heron/instance/OutgoingTupleCollection.java b/heron/instance/src/java/com/twitter/heron/instance/OutgoingTupleCollection.java
index f89d765..3c982bc 100644
--- a/heron/instance/src/java/com/twitter/heron/instance/OutgoingTupleCollection.java
+++ b/heron/instance/src/java/com/twitter/heron/instance/OutgoingTupleCollection.java
@@ -14,6 +14,8 @@
 
 package com.twitter.heron.instance;
 
+import java.util.logging.Logger;
+
 import com.twitter.heron.api.generated.TopologyAPI;
 import com.twitter.heron.common.basics.ByteAmount;
 import com.twitter.heron.common.basics.Communicator;
@@ -30,6 +32,8 @@
  * In fact, when talking about to send out tuples, we mean we push them to the out queues.
  */
 public class OutgoingTupleCollection {
+
+  private static final Logger LOG = Logger.getLogger(OutgoingTupleCollection.class.getName());
   protected final String componentName;
   // We have just one outQueue responsible for both control tuples and data tuples
   private final Communicator<HeronTuples.HeronTupleSet> outQueue;
@@ -81,6 +85,9 @@
       initNewDataTuple(streamId);
     }
     currentDataTuple.addTuples(newTuple);
+    if (tupleSizeInBytes > 8 * 1024 * 1024) {
+      LOG.info("Large tuple size!!!!: " + tupleSizeInBytes);
+    }
 
     currentDataTupleSizeInBytes += tupleSizeInBytes;
     totalDataEmittedInBytes += tupleSizeInBytes;
diff --git a/heron/stmgr/src/cpp/manager/stmgr.cpp b/heron/stmgr/src/cpp/manager/stmgr.cpp
index 02dbbce..c6257ad 100644
--- a/heron/stmgr/src/cpp/manager/stmgr.cpp
+++ b/heron/stmgr/src/cpp/manager/stmgr.cpp
@@ -636,8 +636,7 @@
   // Note:- Process data before control
   // This is to make sure that anchored emits are sent out
   // before any acks/fails
-  //
-  LOG(INFO) << "WEEEEEEE SRC TASK ID: " << _src_task_id;
+
   if (_message->has_data()) {
     proto::system::HeronDataTupleSet* d = _message->mutable_data();
     std::pair<sp_string, sp_string> stream =
