diff --git a/libpod/container_exec.go b/libpod/container_exec.go
index 7ed7a3343a..6b88e5205d 100644
--- a/libpod/container_exec.go
+++ b/libpod/container_exec.go
@@ -575,7 +575,7 @@ func (c *Container) ExecResize(sessionID string, newSize remotecommand.TerminalS
 		return errors.Wrapf(define.ErrNoSuchExecSession, "container %s has no exec session with ID %s", c.ID(), sessionID)
 	}
 
-	logrus.Infof("Removing container %s exec session %s", c.ID(), session.ID())
+	logrus.Infof("Resizing container %s exec session %s to %+v", c.ID(), session.ID(), newSize)
 
 	if session.State != define.ExecStateRunning {
 		return errors.Wrapf(define.ErrExecSessionStateInvalid, "cannot resize container %s exec session %s as it is not running", c.ID(), session.ID())
@@ -592,9 +592,6 @@ func (c *Container) Exec(config *ExecConfig, streams *AttachStreams, resize <-ch
 	if err != nil {
 		return -1, err
 	}
-	if err := c.ExecStartAndAttach(sessionID, streams); err != nil {
-		return -1, err
-	}
 
 	// Start resizing if we have a resize channel.
 	// This goroutine may likely leak, given that we cannot close it here.
@@ -605,6 +602,7 @@ func (c *Container) Exec(config *ExecConfig, streams *AttachStreams, resize <-ch
 	// session.
 	if resize != nil {
 		go func() {
+			logrus.Debugf("Sending resize events to exec session %s", sessionID)
 			for resizeRequest := range resize {
 				if err := c.ExecResize(sessionID, resizeRequest); err != nil {
 					// Assume the exec session went down.
@@ -615,6 +613,10 @@ func (c *Container) Exec(config *ExecConfig, streams *AttachStreams, resize <-ch
 		}()
 	}
 
+	if err := c.ExecStartAndAttach(sessionID, streams); err != nil {
+		return -1, err
+	}
+
 	session, err := c.ExecSession(sessionID)
 	if err != nil {
 		return -1, err
diff --git a/libpod/oci_conmon_linux.go b/libpod/oci_conmon_linux.go
index 82c5d70201..6d9a976cb9 100644
--- a/libpod/oci_conmon_linux.go
+++ b/libpod/oci_conmon_linux.go
@@ -793,7 +793,6 @@ func (r *ConmonOCIRuntime) ExecAttachResize(ctr *Container, sessionID string, ne
 	}
 	defer controlFile.Close()
 
-	logrus.Debugf("Received a resize event for container %s exec session %s: %+v", ctr.ID(), sessionID, newSize)
 	if _, err = fmt.Fprintf(controlFile, "%d %d %d\n", 1, newSize.Height, newSize.Width); err != nil {
 		return errors.Wrapf(err, "failed to write to ctl file to resize terminal")
 	}