diff --git a/core/java/src/net/i2p/crypto/KeyStoreUtil.java b/core/java/src/net/i2p/crypto/KeyStoreUtil.java
index b73815bf6f9872db4a9dba5cd4893f7ff0bef7d2..a367534912a7b9528e9b2146e95dd5acc3d440bb 100644
--- a/core/java/src/net/i2p/crypto/KeyStoreUtil.java
+++ b/core/java/src/net/i2p/crypto/KeyStoreUtil.java
@@ -326,7 +326,10 @@ public class KeyStoreUtil {
             if (success) {
                 try {
                     success = getPrivateKey(ks, ksPW, alias, keyPW) != null;
+                    if (!success)
+                        error("Key gen failed to get private key", null);
                 } catch (Exception e) {
+                    error("Key gen failed to get private key", e);
                     success = false;
                 }
             }
@@ -458,6 +461,11 @@ public class KeyStoreUtil {
     }
 
     private static void log(I2PAppContext ctx, int level, String msg, Throwable t) {
+        if (level >= Log.WARN && !ctx.isRouterContext()) {
+            System.out.println(msg);
+            if (t != null)
+                t.printStackTrace();
+        }
         Log l = ctx.logManager().getLog(KeyStoreUtil.class);
         l.log(level, msg, t);
     }
diff --git a/core/java/src/net/i2p/crypto/SU3File.java b/core/java/src/net/i2p/crypto/SU3File.java
index 1d8d7f124a08eaf39053ded742f0f68a6c4db3e9..bf4c6b165d3aa6b3439669f79441e99ac9b5e89b 100644
--- a/core/java/src/net/i2p/crypto/SU3File.java
+++ b/core/java/src/net/i2p/crypto/SU3File.java
@@ -695,13 +695,13 @@ public class SU3File {
                                                   alias, "I2P", 3652, type.getBaseAlgorithm().getName(),
                                                   keylen, keypw);
         if (!success) {
-            System.err.println("Error writing keys:");
+            System.err.println("Error creating keys for " + alias);
             return false;
         }
         File outfile = new File(publicKeyFile);
         success = KeyStoreUtil.exportCert(ksFile, KeyStoreUtil.DEFAULT_KEYSTORE_PASSWORD, alias, outfile);
         if (!success) {
-            System.err.println("Error writing keys:");
+            System.err.println("Error writing public key for " + alias + " to " + outfile);
             return false;
         }
         return true;