NO-JIRA: Log enviornment and JVM settings in Kerberos tests for debug purposes
diff --git a/broker-core/src/test/java/org/apache/qpid/server/security/auth/manager/KerberosAuthenticationManagerTest.java b/broker-core/src/test/java/org/apache/qpid/server/security/auth/manager/KerberosAuthenticationManagerTest.java
index eea1eef..6e89da7 100644
--- a/broker-core/src/test/java/org/apache/qpid/server/security/auth/manager/KerberosAuthenticationManagerTest.java
+++ b/broker-core/src/test/java/org/apache/qpid/server/security/auth/manager/KerberosAuthenticationManagerTest.java
@@ -120,7 +120,7 @@
         when(_broker.getChildren(AuthenticationProvider.class))
                 .thenReturn(Collections.singleton(_kerberosAuthenticationProvider));
 
-        UTILS.debugConfig();
+        KerberosUtilities.debugConfig();
     }
 
     @Test
@@ -201,18 +201,22 @@
         final LoginContext lc = UTILS.createKerberosKeyTabLoginContext(getTestName(),
                                                                        CLIENT_PRINCIPAL_FULL_NAME,
                                                                        _clientKeyTabFile);
+
+        Subject clientSubject = null;
         try
         {
             lc.login();
-
-            final Subject clientSubject = lc.getSubject();
+            clientSubject = lc.getSubject();
             debug("LoginContext subject {}", clientSubject);
             final SaslClient saslClient = createSaslClient(clientSubject);
             return performNegotiation(clientSubject, saslClient, negotiator);
         }
         finally
         {
-            lc.logout();
+            if (clientSubject != null)
+            {
+                lc.logout();
+            }
         }
     }
 
diff --git a/broker-core/src/test/java/org/apache/qpid/server/security/auth/manager/SpnegoAuthenticatorTest.java b/broker-core/src/test/java/org/apache/qpid/server/security/auth/manager/SpnegoAuthenticatorTest.java
index d3f8342..7fadbf7 100644
--- a/broker-core/src/test/java/org/apache/qpid/server/security/auth/manager/SpnegoAuthenticatorTest.java
+++ b/broker-core/src/test/java/org/apache/qpid/server/security/auth/manager/SpnegoAuthenticatorTest.java
@@ -32,7 +32,9 @@
 import java.net.URLDecoder;
 import java.security.Principal;
 import java.util.Base64;
+import java.util.LinkedHashMap;
 import java.util.Map;
+import java.util.Properties;
 
 import org.ietf.jgss.GSSException;
 import org.junit.Before;
@@ -81,6 +83,8 @@
         assertNotNull(resource);
         SYSTEM_PROPERTY_SETTER.setSystemProperty("java.security.auth.login.config", URLDecoder.decode(resource.getPath(), UTF_8));
         SYSTEM_PROPERTY_SETTER.setSystemProperty("javax.security.auth.useSubjectCredsOnly", "false");
+
+        KerberosUtilities.debugConfig();
     }
 
     @Before
diff --git a/broker-core/src/test/java/org/apache/qpid/server/test/KerberosUtilities.java b/broker-core/src/test/java/org/apache/qpid/server/test/KerberosUtilities.java
index 74cb2d2..0e65988 100644
--- a/broker-core/src/test/java/org/apache/qpid/server/test/KerberosUtilities.java
+++ b/broker-core/src/test/java/org/apache/qpid/server/test/KerberosUtilities.java
@@ -24,7 +24,9 @@
 import java.io.File;
 import java.util.Collections;
 import java.util.HashMap;
+import java.util.LinkedHashMap;
 import java.util.Map;
+import java.util.Properties;
 
 import javax.security.auth.DestroyFailedException;
 import javax.security.auth.Subject;
@@ -228,6 +230,12 @@
             {
                 LOGGER.warn("JVM system property 'java.security.krb5.conf' is not set");
             }
+
+            Map<String, String> env = new LinkedHashMap<>(System.getenv());
+            env.forEach((k, v) -> debug("Environment setting: {}={}", k ,v));
+
+            Properties properties = new Properties(System.getProperties());
+            properties.forEach((k, v) -> debug("JVM setting: {}={}", k ,v));
         }
     }