Add --debug switch to MetaDataTool that alters the log4j configuration.
authorwassa <wassa@ab3bd59b-922f-494d-bb5f-6f0a3c29deca>
Fri, 21 Jan 2005 20:41:13 +0000 (20:41 +0000)
committerwassa <wassa@ab3bd59b-922f-494d-bb5f-6f0a3c29deca>
Fri, 21 Jan 2005 20:41:13 +0000 (20:41 +0000)
git-svn-id: https://subversion.switch.ch/svn/shibboleth/java-idp/trunk@1215 ab3bd59b-922f-494d-bb5f-6f0a3c29deca

src/edu/internet2/middleware/shibboleth/utils/MetadataTool.java

index d999b15..8316778 100644 (file)
@@ -55,6 +55,11 @@ import java.io.*;
 import java.security.*;
 import java.security.cert.Certificate;
 import java.security.cert.*;
+
+import org.apache.log4j.ConsoleAppender;
+import org.apache.log4j.Level;
+import org.apache.log4j.Logger;
+import org.apache.log4j.PatternLayout;
 import org.apache.xml.security.c14n.*;
 import org.apache.xml.security.signature.*;
 import org.apache.xml.security.transforms.*;
@@ -89,7 +94,15 @@ public class MetadataTool
         CmdLineParser.Option pwOption = parser.addStringOption('p', "password");
         CmdLineParser.Option nsOption = parser.addStringOption('x', "ns");
         CmdLineParser.Option nameOption = parser.addStringOption('n', "name");
-
+        CmdLineParser.Option debugOption = parser.addBooleanOption('d', "debug");
+               
+               Boolean debugEnabled = ((Boolean) parser.getOptionValue(debugOption));
+               boolean debug = false;
+               if (debugEnabled != null) {
+                       debug = debugEnabled.booleanValue();
+               }
+        configureLogging(debug);
+        
         try {
             parser.parse(args);
         }
@@ -260,5 +273,23 @@ public class MetadataTool
         out.println();
         System.exit(1);
     }
+    
+       private static void configureLogging(boolean debugEnabled) 
+       {
+               ConsoleAppender rootAppender = new ConsoleAppender();
+               rootAppender.setWriter(new PrintWriter(System.out));
+               rootAppender.setName("stdout");
+               Logger.getRootLogger().addAppender(rootAppender);
+
+               if (debugEnabled) {
+                       Logger.getRootLogger().setLevel(Level.DEBUG);
+                       rootAppender.setLayout(new PatternLayout("%-5p %-41X{serviceId} %d{ISO8601} (%c:%L) - %m%n")); 
+               } else {
+                       Logger.getRootLogger().setLevel(Level.INFO);
+                       Logger.getLogger("edu.internet2.middleware.shibboleth.aa.attrresolv").setLevel(Level.WARN);
+                       rootAppender.setLayout(new PatternLayout(PatternLayout.TTCC_CONVERSION_PATTERN)); 
+               }
+               Logger.getLogger("org.apache.xml.security").setLevel(Level.OFF);
+       }
 }