[java-idp-testbed COMMIT] in /trunk: pom.xml src/main/java/Main.java src/main/resources/system/conf/logback-access.xm...

noreply at shibboleth.net noreply at shibboleth.net
Thu May 21 21:53:23 EDT 2015


Author: tzeller
Date: Thu May 21 21:53:23 2015
New Revision: 306

URL: http://svn.shibboleth.net/view/java-idp-testbed?rev=306&view=rev
Log:
Add optional logback-access logging as well as the TeeFilter.

Added:
    trunk/src/main/resources/system/conf/logback-access.xml
    trunk/src/main/resources/system/conf/web-override.xml
Modified:
    trunk/pom.xml
    trunk/src/main/java/Main.java

Modified: trunk/pom.xml
URL: http://svn.shibboleth.net/view/java-idp-testbed/trunk/pom.xml?rev=306&r1=305&r2=306&view=diff
==============================================================================
--- trunk/pom.xml	(original)
+++ trunk/pom.xml	Thu May 21 21:53:23 2015
@@ -236,6 +236,11 @@
         <dependency>
             <groupId>ch.qos.logback</groupId>
             <artifactId>logback-core</artifactId>
+            <scope>runtime</scope>
+        </dependency>
+        <dependency>
+            <groupId>ch.qos.logback</groupId>
+            <artifactId>logback-access</artifactId>
             <scope>runtime</scope>
         </dependency>
         <dependency>

Modified: trunk/src/main/java/Main.java
URL: http://svn.shibboleth.net/view/java-idp-testbed/trunk/src/main/java/Main.java?rev=306&r1=305&r2=306&view=diff
==============================================================================
--- trunk/src/main/java/Main.java	(original)
+++ trunk/src/main/java/Main.java	Thu May 21 21:53:23 2015
@@ -23,11 +23,17 @@
 
 import org.eclipse.jetty.jaas.JAASLoginService;
 import org.eclipse.jetty.security.ConstraintSecurityHandler;
+import org.eclipse.jetty.server.Handler;
 import org.eclipse.jetty.server.Server;
 import org.eclipse.jetty.server.handler.ContextHandlerCollection;
+import org.eclipse.jetty.server.handler.DefaultHandler;
+import org.eclipse.jetty.server.handler.HandlerCollection;
+import org.eclipse.jetty.server.handler.RequestLogHandler;
 import org.eclipse.jetty.util.resource.Resource;
 import org.eclipse.jetty.webapp.WebAppContext;
 import org.eclipse.jetty.xml.XmlConfiguration;
+
+import ch.qos.logback.access.jetty.RequestLogImpl;
 
 /** Start Jetty */
 public class Main {
@@ -103,6 +109,15 @@
             idpWebapp.setContextPath("/idp");
             idpWebapp.setWar(idpWebappPath.toString());
             
+            // Optionally enable logback-access logging as well as the TeeFilter.
+            boolean enableLogging = false;
+            
+            if (enableLogging) {
+                // TeeFilter.
+                final Path override = Paths.get("src", "main", "resources", "system", "conf", "web-override.xml");
+                idpWebapp.setOverrideDescriptor(override.toString());
+            }
+            
             final String idpJaasConfigPath = configuration.getProperties().get("jetty.jaas.path");
             final String testbedJaasConfigPath = pathToIdPConfTestResources.toAbsolutePath().toString()
                     + "/" + idpJaasConfigPath;
@@ -115,11 +130,23 @@
             securityHandler.setLoginService(jaasLogin);
             idpWebapp.setSecurityHandler(securityHandler);
 
+            final HandlerCollection handlers = new HandlerCollection();
             final ContextHandlerCollection contexts = new ContextHandlerCollection();
+            handlers.setHandlers(new Handler[] {contexts, new DefaultHandler()});
+
             contexts.addHandler(testbedWebapp);
             contexts.addHandler(idpWebapp);
-            server.setHandler(contexts);
 
+            if (enableLogging) {
+                final RequestLogImpl requestLog = new RequestLogImpl();
+                requestLog.setResource("/system/conf/logback-access.xml");
+                final RequestLogHandler requestLogHandler = new RequestLogHandler();
+                requestLogHandler.setRequestLog(requestLog);
+                handlers.addHandler(requestLogHandler);
+            }
+
+            server.setHandler(handlers);
+            
             server.start();
             server.join();
         } catch (final Exception e) {



More information about the commits mailing list