[libcamera-devel] [PATCH 2/2] libcamera: log: Print the thread ID in the log

Laurent Pinchart laurent.pinchart at ideasonboard.com
Sat Jan 18 22:33:48 CET 2020


The current thread ID is useful when debugging concurrency issues. Print
it in log messages. The syslog target is left out as the thread ID would
have little use there, and partly duplicates the process ID.

Signed-off-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
---
 src/libcamera/log.cpp | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/libcamera/log.cpp b/src/libcamera/log.cpp
index f4eb8c11adc3..1dac4666b435 100644
--- a/src/libcamera/log.cpp
+++ b/src/libcamera/log.cpp
@@ -22,6 +22,7 @@
 
 #include <libcamera/logging.h>
 
+#include "thread.h"
 #include "utils.h"
 
 /**
@@ -196,7 +197,8 @@ void LogOutput::write(const LogMessage &msg)
 		break;
 	case LoggingTargetStream:
 	case LoggingTargetFile:
-		str = "[" + utils::time_point_to_string(msg.timestamp()) + "]"
+		str = "[" + utils::time_point_to_string(msg.timestamp()) + "] ["
+		    + std::to_string(Thread::currentId()) + "]"
 		    + log_severity_name(msg.severity()) + " "
 		    + msg.category().name() + " " + msg.fileInfo() + " "
 		    + msg.msg();
-- 
Regards,

Laurent Pinchart



More information about the libcamera-devel mailing list