diff --git a/VECTO/app.config b/VECTO/app.config
index b769e35b03bd4e5421d17b155f9af3059bbcec93..45ad93e0f06bbae24bc038c097101ae13f95eb04 100644
--- a/VECTO/app.config
+++ b/VECTO/app.config
@@ -16,10 +16,17 @@
 				<parameter layout="${level}" />
 				<parameter layout="${message}" />
 			</target>
-			<target xsi:type="File" name="LogFile" fileName="${basedir}/logs/log.txt"
-							layout="${longdate} [${processid}:${threadid}@${machinename}] ${callsite} ${level:uppercase=true}: ${message} ${exception:format=tostring}" />
+			<target xsi:type="File"
+							name="LogFile"
+							fileName="${basedir}/logs/log.txt"
+							layout="${longdate} [${processid}:${threadid}@${machinename}] ${callsite:skipFrames=1} ${level:uppercase=true}: ${message} ${exception:format=tostring}"
+							keepFileOpen="false"
+							archiveFileName="${basedir}/logs/archive{#}.txt"
+							maxArchiveFiles="1"
+							archiveAboveSize="10000000" />
 		</targets>
 		<rules>
+			<logger name="TUGraz.VectoCore.Models.Simulation.Impl.SimulatorFactory" minlevel="Info" writeTo="LogFile" />
 			<logger name="*" minlevel="Warn" writeTo="LogFile" />
 			<logger name="*" minlevel="Error" writeTo="WarningLogger" />
 		</rules>
diff --git a/VectoConsole/App.config b/VectoConsole/App.config
index 81aa14050a9bda89423206eadfba9694c4f4741d..0118145833f876dac701cd4569041be4608add55 100644
--- a/VectoConsole/App.config
+++ b/VectoConsole/App.config
@@ -12,13 +12,23 @@
 				xsi:schemaLocation="http://www.nlog-project.org/schemas/NLog.xsd NLog.xsd"
 				autoReload="false"
 				throwExceptions="false"
-				internalLogLevel="Off" internalLogFile="c:\temp\nlog-internal.log">
+				internalLogLevel="Off"
+				internalLogFile="c:\temp\nlog-internal.log">
 		<targets async="true">
-			<target xsi:type="Console" name="ConsoleLogger" error="true" />
-			<target xsi:type="File" name="LogFile" fileName="${basedir}/logs/log_${threadid}.txt"
-							layout="${longdate} [${processid}:${threadid}@${machinename}] ${callsite} ${level:uppercase=true}: ${message} ${exception:format=tostring}" />
+			<target xsi:type="Console"
+							name="ConsoleLogger"
+							error="true" />
+			<target xsi:type="File"
+							name="LogFile"
+							fileName="${basedir}/logs/log.txt"
+							layout="${longdate} [${processid}:${threadid}@${machinename}] ${callsite:skipFrames=1} ${level:uppercase=true}: ${message} ${exception:format=tostring}"
+							keepFileOpen="false"
+							archiveFileName="${basedir}/logs/archive{#}.txt"
+							maxArchiveFiles="1"
+							archiveAboveSize="10000000" />
 		</targets>
 		<rules>
+			<logger name="TUGraz.VectoCore.Models.Simulation.Impl.SimulatorFactory" minlevel="Info" writeTo="LogFile" />
 			<logger name="*" minlevel="Warn" writeTo="LogFile" />
 		</rules>
 	</nlog>
diff --git a/VectoCore/VectoCore/Models/Simulation/Impl/SimulatorFactory.cs b/VectoCore/VectoCore/Models/Simulation/Impl/SimulatorFactory.cs
index c5a091d0eb5ad3dd0fa81cd6da6d897bcf014659..2cfa5c97201010363b8c144a345305db7c5fcf5a 100644
--- a/VectoCore/VectoCore/Models/Simulation/Impl/SimulatorFactory.cs
+++ b/VectoCore/VectoCore/Models/Simulation/Impl/SimulatorFactory.cs
@@ -59,7 +59,7 @@ namespace TUGraz.VectoCore.Models.Simulation.Impl
 		public SimulatorFactory(ExecutionMode mode, IInputDataProvider dataProvider, IOutputDataWriter writer,
 			DeclarationReport declarationReport = null)
 		{
-			Log.Fatal("########## VectoCore Version {0} ##########", Assembly.GetExecutingAssembly().GetName().Version);
+			Log.Info("########## VectoCore Version {0} ##########", Assembly.GetExecutingAssembly().GetName().Version);
 			JobNumber = Interlocked.Increment(ref _jobNumberCounter);
 			_mode = mode;
 			ModWriter = writer;
@@ -101,7 +101,6 @@ namespace TUGraz.VectoCore.Models.Simulation.Impl
 
 		public IOutputDataWriter ModWriter { get; private set; }
 
-
 		public int JobNumber { get; set; }
 
 		public bool WriteModalResults { get; set; }
@@ -152,7 +151,6 @@ namespace TUGraz.VectoCore.Models.Simulation.Impl
 											"\n".Join(validationErrors.Select(r => r.ErrorMessage)));
 				}
 
-
 				yield return run;
 			}
 		}
diff --git a/VectoCore/VectoCore/Models/SimulationComponent/Impl/Vehicle.cs b/VectoCore/VectoCore/Models/SimulationComponent/Impl/Vehicle.cs
index 1b691725ab1b27ffdeccd2dc117ba5931db8948c..f1f79f63bbba35ba6b2e2070e73bf259c50582fb 100644
--- a/VectoCore/VectoCore/Models/SimulationComponent/Impl/Vehicle.cs
+++ b/VectoCore/VectoCore/Models/SimulationComponent/Impl/Vehicle.cs
@@ -173,6 +173,7 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Impl
 			container[ModalResultField.P_air] = CurrentState.AirDragResistance * averageVelocity;
 			container[ModalResultField.P_slope] = CurrentState.SlopeResistance * averageVelocity;
 			container[ModalResultField.P_trac] = CurrentState.VehicleTractionForce * averageVelocity;
+
 			// sanity check: is the vehicle in step with the cycle?
 			if (container[ModalResultField.dist] == DBNull.Value) {
 				Log.Warn("Distance field is not set!");