diff --git a/conf/logback.groovy b/conf/logback.groovy
new file mode 100644
index 0000000000000000000000000000000000000000..9501197fcce480d4dfd5f4663bcb24dd86fa3f86
--- /dev/null
+++ b/conf/logback.groovy
@@ -0,0 +1,21 @@
+statusListener(OnConsoleStatusListener)
+
+root(WARN)
+
+/*appender("FILE", FileAppender) {
+  file = "testFile.log"
+  append = true
+  encoder(PatternLayoutEncoder) {
+    pattern = "%level %logger - %msg%n"
+  }
+}
+*/
+
+appender("CONSOLE", ConsoleAppender) {
+  append = true
+  encoder(PatternLayoutEncoder) {
+    pattern = "%d{HH:mm:ss.SSS} %level %logger - %msg%n"
+  }
+}
+
+//logger "teetime.variant.methodcallWithPorts.stage", DEBUG, ["CONSOLE"]
\ No newline at end of file
diff --git a/pom.xml b/pom.xml
index 7f14a8911d5ef1f1a3053d7ec311793bc23e4d6d..67d94dc951904cd60477106a55aa8ef68b6d9226 100644
--- a/pom.xml
+++ b/pom.xml
@@ -44,13 +44,29 @@
 			<artifactId>kieker</artifactId>
 			<version>1.10-SNAPSHOT</version>
 		</dependency>
+		<dependency>
+			<groupId>org.slf4j</groupId>
+			<artifactId>slf4j-api</artifactId>
+			<version>1.7.7</version>
+		</dependency>
+		<dependency>
+			<groupId>ch.qos.logback</groupId>
+			<artifactId>logback-classic</artifactId>
+			<version>1.1.2</version>
+		</dependency>
+		<dependency>
+			<groupId>org.codehaus.groovy</groupId>
+			<artifactId>groovy-all</artifactId>
+			<version>2.3.6</version>
+		</dependency>
 		<dependency>
 			<groupId>com.google.guava</groupId>
 			<artifactId>guava</artifactId>
 			<version>17.0</version>
 		</dependency>
 		<dependency>
-<!-- 			install the following project to your local maven repository from submodule: JCTools -->
+			<!-- install the following project to your local maven repository from 
+				submodule: JCTools -->
 			<groupId>org.jctools</groupId>
 			<artifactId>jctools-core</artifactId>
 			<version>1.0-SNAPSHOT</version>
diff --git a/src/main/java/teetime/variant/methodcallWithPorts/framework/core/AbstractStage.java b/src/main/java/teetime/variant/methodcallWithPorts/framework/core/AbstractStage.java
index f50daca15b4c6aaf565af369de88fcb7d39608bc..776fc669dc46826713861ceb80c2374f40015e48 100644
--- a/src/main/java/teetime/variant/methodcallWithPorts/framework/core/AbstractStage.java
+++ b/src/main/java/teetime/variant/methodcallWithPorts/framework/core/AbstractStage.java
@@ -5,10 +5,10 @@ import java.util.LinkedList;
 import java.util.List;
 import java.util.UUID;
 
-import teetime.variant.methodcallWithPorts.framework.core.pipe.IPipe;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
-import kieker.common.logging.Log;
-import kieker.common.logging.LogFactory;
+import teetime.variant.methodcallWithPorts.framework.core.pipe.IPipe;
 
 public abstract class AbstractStage implements StageWithPort {
 
@@ -16,7 +16,7 @@ public abstract class AbstractStage implements StageWithPort {
 	/**
 	 * A unique logger instance per stage instance
 	 */
-	protected final Log logger; // BETTER use SLF4J as interface and logback as impl
+	protected final Logger logger; // BETTER use SLF4J as interface and logback as impl
 
 	private StageWithPort parentStage;
 
@@ -32,12 +32,12 @@ public abstract class AbstractStage implements StageWithPort {
 
 	public AbstractStage() {
 		this.id = UUID.randomUUID().toString(); // the id should only be represented by a UUID, not additionally by the class name
-		this.logger = LogFactory.getLog(this.getClass().getName() + "(" + this.id + ")");
+		this.logger = LoggerFactory.getLogger(this.getClass().getName() + "(" + this.id + ")");
 	}
 
 	/**
 	 * Sends the given <code>element</code> using the default output port
-	 * 
+	 *
 	 * @param element
 	 * @return <code>true</code> iff the given element could be sent, <code>false</code> otherwise (then use a re-try strategy)
 	 */
diff --git a/src/main/java/teetime/variant/methodcallWithPorts/stage/kieker/className/MappingFileParser.java b/src/main/java/teetime/variant/methodcallWithPorts/stage/kieker/className/MappingFileParser.java
index 030ac62e2005d642a24b40ced2f562be96975803..107f7233da5bb49138f94fc874433fd3b13aa148 100644
--- a/src/main/java/teetime/variant/methodcallWithPorts/stage/kieker/className/MappingFileParser.java
+++ b/src/main/java/teetime/variant/methodcallWithPorts/stage/kieker/className/MappingFileParser.java
@@ -23,17 +23,18 @@ import java.io.InputStreamReader;
 import java.util.HashMap;
 import java.util.Map;
 
-import kieker.common.logging.Log;
+import org.slf4j.Logger;
+
 import kieker.common.util.filesystem.FSUtil;
 
 /**
  * @author Christian Wulf
- * 
+ *
  * @since 1.10
  */
 public class MappingFileParser {
 
-	protected Log logger;
+	protected Logger logger;
 
 	private static final Map<String, String> filePrefixRegistry = new HashMap<String, String>();
 
@@ -42,7 +43,7 @@ public class MappingFileParser {
 		filePrefixRegistry.put(FSUtil.LEGACY_MAP_FILENAME, FSUtil.LEGACY_FILE_PREFIX);
 	}
 
-	public MappingFileParser(final Log logger) {
+	public MappingFileParser(final Logger logger) {
 		this.logger = logger;
 	}
 
diff --git a/src/main/java/teetime/variant/methodcallWithPorts/stage/kieker/fileToRecord/RecordFromBinaryFileCreator.java b/src/main/java/teetime/variant/methodcallWithPorts/stage/kieker/fileToRecord/RecordFromBinaryFileCreator.java
index fd1258eb1a874b12cfd43b59b2f7e5f2aa7eff0a..ad01b5d4b0f149a8050ae4a82ba108d80d0cda10 100644
--- a/src/main/java/teetime/variant/methodcallWithPorts/stage/kieker/fileToRecord/RecordFromBinaryFileCreator.java
+++ b/src/main/java/teetime/variant/methodcallWithPorts/stage/kieker/fileToRecord/RecordFromBinaryFileCreator.java
@@ -20,25 +20,26 @@ import java.io.EOFException;
 import java.io.File;
 import java.io.IOException;
 
+import org.slf4j.Logger;
+
 import teetime.variant.methodcallWithPorts.stage.kieker.className.ClassNameRegistry;
 import teetime.variant.methodcallWithPorts.stage.kieker.className.ClassNameRegistryRepository;
 
 import kieker.common.exception.MonitoringRecordException;
-import kieker.common.logging.Log;
 import kieker.common.record.AbstractMonitoringRecord;
 import kieker.common.record.IMonitoringRecord;
 
 /**
  * @author Christian Wulf
- * 
+ *
  * @since 1.10
  */
 public class RecordFromBinaryFileCreator {
 
-	private final Log logger;
+	private final Logger logger;
 	private final ClassNameRegistryRepository classNameRegistryRepository;
 
-	public RecordFromBinaryFileCreator(final Log logger, final ClassNameRegistryRepository classNameRegistryRepository) {
+	public RecordFromBinaryFileCreator(final Logger logger, final ClassNameRegistryRepository classNameRegistryRepository) {
 		this.logger = logger;
 		this.classNameRegistryRepository = classNameRegistryRepository;
 	}
diff --git a/src/main/java/teetime/variant/methodcallWithPorts/stage/stringBuffer/handler/AbstractDataTypeHandler.java b/src/main/java/teetime/variant/methodcallWithPorts/stage/stringBuffer/handler/AbstractDataTypeHandler.java
index 64e4e8bd62237a48adef5371bf4510f8bd297452..353662eee3993f1dd84ffb2596565784249c81cd 100644
--- a/src/main/java/teetime/variant/methodcallWithPorts/stage/stringBuffer/handler/AbstractDataTypeHandler.java
+++ b/src/main/java/teetime/variant/methodcallWithPorts/stage/stringBuffer/handler/AbstractDataTypeHandler.java
@@ -15,18 +15,18 @@
  ***************************************************************************/
 package teetime.variant.methodcallWithPorts.stage.stringBuffer.handler;
 
-import teetime.variant.methodcallWithPorts.stage.stringBuffer.util.KiekerHashMap;
+import org.slf4j.Logger;
 
-import kieker.common.logging.Log;
+import teetime.variant.methodcallWithPorts.stage.stringBuffer.util.KiekerHashMap;
 
 /**
  * @author Christian Wulf
- * 
+ *
  * @since 1.10
  */
 public abstract class AbstractDataTypeHandler<T> {
 
-	protected Log logger;
+	protected Logger logger;
 	protected KiekerHashMap stringRepository;
 
 	/**
@@ -42,7 +42,7 @@ public abstract class AbstractDataTypeHandler<T> {
 	/**
 	 * @since 1.10
 	 */
-	public void setLogger(final Log logger) {
+	public void setLogger(final Logger logger) {
 		this.logger = logger;
 	}