summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--doc/developer/logging.rst8
1 files changed, 6 insertions, 2 deletions
diff --git a/doc/developer/logging.rst b/doc/developer/logging.rst
index 69c385e2f1..0430ad72a3 100644
--- a/doc/developer/logging.rst
+++ b/doc/developer/logging.rst
@@ -251,8 +251,12 @@ message buffers in order to improve logging performance. The following rules
apply for this buffering:
* Only messages of priority *DEBUG* or *INFO* are buffered.
-* Any higher-priority message causes the entire buffer to be flushed, thus
- message ordering is preserved properly.
+* Any higher-priority message causes the thread's entire buffer to be flushed,
+ thus message ordering is preserved on a per-thread level.
+* There is no guarantee on ordering between different threads; in most cases
+ this is arbitrary to begin with since the threads essentially race each
+ other in printing log messages. If an order is established with some
+ synchronization primitive, add calls to :c:func:`zlog_tls_buffer_flush()`.
* The buffers are only ever accessed by the thread they are created by. This
means no locking is necessary.