apboie: I think the k_sleep() call in the log thread is not ideal, the system might be idle and have some bandwidth to dump logs, but instead the log thread can be sitting there in a sleep() call. In addition the log thread will be waking up all the time even when it has nothing to do.
Actually, I think I'm mistaken, the k_wakeup() calls will ensure that it doesn't sleep for the full amount each iteration. We're probably fine. It only wakes up on its own by default every 1000ms, not a big deal.