diff --git a/src/main/java/de/tlc4b/Log.java b/src/main/java/de/tlc4b/Log.java
index a44ce8decdac0b0e3601858cfcc73ab8ce93b9a7..88c50401cf9724dc04d73772f2a244d251bd72b2 100644
--- a/src/main/java/de/tlc4b/Log.java
+++ b/src/main/java/de/tlc4b/Log.java
@@ -10,14 +10,16 @@ import de.tlc4b.tlc.TLCResults;
 import de.tlc4b.util.StopWatch;
 import de.tlc4b.util.StopWatch.Watches;
 
-public class Log {
+public final class Log {
 
 	public static final String DELIMITER = ";";
 
-	private final List<String> fieldNames = new ArrayList<>();
-	private final List<String> fieldValues = new ArrayList<>();
+	private Log() {}
+
+	public static String getCSVString(TLC4B tlc4b, TLCResults tlcResults) {
+		List<String> fieldNames = new ArrayList<>();
+		List<String> fieldValues = new ArrayList<>();
 
-	public Log(TLC4B tlc4b, TLCResults tlcResults) {
 		fieldNames.add("Machine File");
 		String machineFile = tlc4b.getMainFile().getAbsolutePath();
 		fieldValues.add(machineFile);
@@ -65,14 +67,11 @@ public class Log {
 
 		fieldNames.add("Trace File");
 		fieldValues.add(tlc4b.getTraceFile() != null ? tlc4b.getTraceFile().getAbsolutePath() : "");
-	}
 
-	public String getCSVString() {
 		StringBuilder sb = new StringBuilder();
 		for (int i = 0; i < fieldNames.size(); i++) {
 			sb.append(fieldNames.get(i)).append(DELIMITER).append(fieldValues.get(i)).append("\n");
 		}
 		return sb.toString();
 	}
-
 }
diff --git a/src/main/java/de/tlc4b/TLC4B.java b/src/main/java/de/tlc4b/TLC4B.java
index 723a0f40bfa2476893b0139fc64da4f0cffbf5c2..31566f7a69f8c601d9c11284d949c18bd3efd4b4 100644
--- a/src/main/java/de/tlc4b/TLC4B.java
+++ b/src/main/java/de/tlc4b/TLC4B.java
@@ -91,8 +91,7 @@ public class TLC4B {
 				results = new TLCResults(tlc4b.tlcOutputInfo);
 				results.evalResults();
 				tlc4b.printResults(results);
-				Log log = new Log(tlc4b, results);
-				tlc4b.createLogFile(log);
+				tlc4b.createLogFile(results);
 			} catch (NoClassDefFoundError e) {
 				printlnErr("Can not find TLC. The tlatools.jar must be included in the classpath.");
 			}
@@ -213,8 +212,7 @@ public class TLC4B {
 			TLCResults results = new TLCResults(tlc4b.tlcOutputInfo);
 			results.evalResults();
 			tlc4b.printResults(results);
-			Log log = new Log(tlc4b, results);
-			tlc4b.createLogFile(log);
+			tlc4b.createLogFile(results);
 
 			System.exit(0);
 		}
@@ -421,11 +419,12 @@ public class TLC4B {
 		}
 	}
 
-	private void createLogFile(Log log) {
+	private void createLogFile(TLCResults results) {
 		if (logFileString != null) {
+			String logCsvString = Log.getCSVString(this, results);
 			File logFile = new File(logFileString);
 			try (FileWriter fw = new FileWriter(logFile, true)) { // the true will append the new data
-				fw.write(log.getCSVString());
+				fw.write(logCsvString);
 				fw.close();
 				println("Log file: " + logFile.getAbsolutePath());
 			} catch (IOException e) {