diff --git a/emper/log/log.cpp b/emper/log/log.cpp
index b975f1d9cd8b61d9331e512fd9b168d3516a214e..cf562ea1525af9b14a268955cb5996f6f50f75a3 100644
--- a/emper/log/log.cpp
+++ b/emper/log/log.cpp
@@ -1,6 +1,5 @@
 // SPDX-License-Identifier: LGPL-3.0-or-later
-// Copyright © 2020 Florian Schmaus
-// Copyright © 2021 Florian Fischer
+// Copyright © 2020-2022 Florian Schmaus, Florian Fischer
 #include "log.hpp"
 
 #include <pthread.h>
@@ -44,15 +43,15 @@ static void add_timestamp_to(std::ostringstream& logMessage) {
 		}
 	}();
 
-	logMessage << std::put_time(now_localtime, "%H%M.");
+	logMessage << std::put_time(now_localtime, "%H%M.%S");
 
 	auto now_nanos = std::chrono::time_point_cast<std::chrono::nanoseconds>(now);
 	auto time_since_epoch = now_nanos.time_since_epoch();
 	long time_since_epoch_long = time_since_epoch.count();
 
-	const long NanosInAMinute = 60L * 1000 * 1000 * 1000;
-	long remaining_nanos = time_since_epoch_long % NanosInAMinute;
-	logMessage << remaining_nanos;
+	constexpr long NanosInASecond = 1000L * 1000 * 1000;
+	long remaining_nanos = time_since_epoch_long % NanosInASecond;
+	logMessage << " " << std::setfill('0') << std::setw(9) << remaining_nanos;
 }
 
 static std::mutex log_mutex;