diff --git a/SingularityRunnerBase/src/main/java/com/hubspot/singularity/runner/base/shared/SimpleProcessManager.java b/SingularityRunnerBase/src/main/java/com/hubspot/singularity/runner/base/shared/SimpleProcessManager.java
index <HASH>..<HASH> 100644
--- a/SingularityRunnerBase/src/main/java/com/hubspot/singularity/runner/base/shared/SimpleProcessManager.java
+++ b/SingularityRunnerBase/src/main/java/com/hubspot/singularity/runner/base/shared/SimpleProcessManager.java
@@ -14,6 +14,7 @@ import java.util.Set;
 import java.util.concurrent.TimeUnit;
 import java.util.concurrent.TimeoutException;
 import java.util.stream.Collectors;
+import jdk.internal.joptsimple.internal.Strings;
 import org.slf4j.Logger;
 
 public class SimpleProcessManager extends SafeProcessManager {
@@ -136,9 +137,12 @@ public class SimpleProcessManager extends SafeProcessManager {
     if (exitCode.isPresent() && !acceptableExitCodes.contains(exitCode.get())) {
       throw new ProcessFailedException(
         String.format(
-          "Got unacceptable exit code %s while running %s",
+          "Got unacceptable exit code %s while running %s. %s",
           exitCode,
-          processToString
+          processToString,
+          reader.isPresent()
+            ? "Output was " + Strings.join(reader.get().output, "\n")
+            : ""
         )
       );
     }
Include output in the exception when the command fails.