diff --git a/src/rt/rust_log.cpp b/src/rt/rust_log.cpp index 8e0897919f1..50a107d59df 100644 --- a/src/rt/rust_log.cpp +++ b/src/rt/rust_log.cpp @@ -145,13 +145,22 @@ rust_log::trace_ln(rust_task *task, char *message) { #if defined(__WIN32__) uint32_t thread_id = 0; #else - uint32_t thread_id = (uint32_t) pthread_self(); + uint32_t thread_id = hash((uint32_t) pthread_self()); #endif char prefix[1024] = ""; - append_string(prefix, "0x%08" PRIxPTR ":0x%08" PRIxPTR ":", - thread_id, (uintptr_t) _dom); + if (_dom->name) { + append_string(prefix, "%04" PRIxPTR ":%.10s:", + thread_id, _dom->name); + } else { + append_string(prefix, "%04" PRIxPTR ":0x%08" PRIxPTR ":", + thread_id, (uintptr_t) _dom); + } if (task) { - append_string(prefix, "0x%08" PRIxPTR ":", (uintptr_t) task); + if (task->name) { + append_string(prefix, "%.10s:", task->name); + } else { + append_string(prefix, "0x%08" PRIxPTR ":", (uintptr_t) task); + } } trace_ln(thread_id, prefix, message); }