Index: trunk/sources/HeuristicLab.Persistence/Core/ConfigurationService.cs
===================================================================
--- trunk/sources/HeuristicLab.Persistence/Core/ConfigurationService.cs	(revision 1472)
+++ trunk/sources/HeuristicLab.Persistence/Core/ConfigurationService.cs	(revision 1473)
@@ -50,6 +50,6 @@
           customConfigurations[config.Key] = config.Value;
         }
-      } catch {
-        Logger.Warn("Could not load settings.");        
+      } catch (Exception e) {
+        Logger.Warn("Could not load settings.", e);        
       }
     }
@@ -95,6 +95,6 @@
             }
             Formatters[formatter.Format].Add(formatter);
-          } catch (MissingMethodException) {
-            Logger.Warn("Could not instantiate " + t.VersionInvariantName());            
+          } catch (MissingMethodException e) {
+            Logger.Warn("Could not instantiate " + t.VersionInvariantName(), e);            
           }          
         }
@@ -102,6 +102,6 @@
           try {
             Decomposers.Add((IDecomposer) Activator.CreateInstance(t, true));
-          } catch (MissingMethodException) {
-            Logger.Warn("Could not instantiate " + t.VersionInvariantName());            
+          } catch (MissingMethodException e) {
+            Logger.Warn("Could not instantiate " + t.VersionInvariantName(), e);            
           }
         }
Index: trunk/sources/HeuristicLab.Tracing/HeuristicLab.log4net.xml
===================================================================
--- trunk/sources/HeuristicLab.Tracing/HeuristicLab.log4net.xml	(revision 1472)
+++ trunk/sources/HeuristicLab.Tracing/HeuristicLab.log4net.xml	(revision 1473)
@@ -10,5 +10,5 @@
     <lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
     <layout type="log4net.Layout.PatternLayout">
-      <conversionPattern value="%-4timestamp [%appdomain/%thread] %-5level %logger %ndc - %message%newline" />
+      <conversionPattern value="%-4timestamp [%appdomain/%thread] %-5level %logger %ndc - %message%newline%exception" />
     </layout>
   </appender>
@@ -26,5 +26,4 @@
     <level value="INFO" />
     <appender-ref ref="BufferingForwardingAppender" />
-    <appender-ref ref="RollingFileAppender" />
   </root>
   
Index: trunk/sources/HeuristicLab.Tracing/Logger.cs
===================================================================
--- trunk/sources/HeuristicLab.Tracing/Logger.cs	(revision 1472)
+++ trunk/sources/HeuristicLab.Tracing/Logger.cs	(revision 1473)
@@ -23,5 +23,5 @@
       XmlConfigurator.ConfigureAndWatch(
         new FileInfo(Settings.Default.log4netConfigFile));
-      Info("logging initialized");
+      Info("logging initialized " + DateTime.Now);
     }
 
@@ -30,4 +30,10 @@
       StackFrame frame = new StackFrame(nParents + 1);
       return LogManager.GetLogger(frame.GetMethod().DeclaringType);      
+    }
+
+    public static ILog GetDefaultLogger() {
+      Configure();
+      StackFrame frame = new StackFrame(1);
+      return LogManager.GetLogger(frame.GetMethod().DeclaringType);
     }
 
@@ -54,5 +60,5 @@
     public static void Debug(Type type, object message) {
       Configure();
-      LogManager.GetLogger(type).Debug(message);      
+      LogManager.GetLogger(type).Debug(message);
     }
 
@@ -77,4 +83,49 @@
     }
 
+    public static void Debug(object message, Exception exception) {
+      GetDefaultLogger(1).Debug(message, exception);
+    }
+
+    public static void Info(object message, Exception exception) {
+      GetDefaultLogger(1).Info(message, exception);
+    }
+
+    public static void Warn(object message, Exception exception) {
+      GetDefaultLogger(1).Warn(message, exception);
+    }
+
+    public static void Error(object message, Exception exception) {
+      GetDefaultLogger(1).Error(message, exception);
+    }
+
+    public static void Fatal(object message, Exception exception) {
+      GetDefaultLogger(1).Fatal(message, exception);
+    }
+
+    public static void Debug(Type type, object message, Exception exception) {
+      Configure();
+      LogManager.GetLogger(type).Debug(message, exception);
+    }
+
+    public static void Info(Type type, object message, Exception exception) {
+      Configure();
+      LogManager.GetLogger(type).Info(message, exception);
+    }
+
+    public static void Warn(Type type, object message, Exception exception) {
+      Configure();
+      LogManager.GetLogger(type).Warn(message, exception);
+    }
+
+    public static void Error(Type type, object message, Exception exception) {
+      Configure();
+      LogManager.GetLogger(type).Error(message, exception);
+    }
+
+    public static void Fatal(Type type, object message, Exception exception) {
+      Configure();
+      LogManager.GetLogger(type).Fatal(message, exception);
+    }
+
   }
 }
