If burst of log messages was passed to the shell log backend, it was likely that messages were lost because shell had no means to control arrivals of log messages. Added log message enqueueing timeout to the shell instance to allow blocking logger thread if short-term arrival rate exceeded shell capabilities. Added kconfig option for setting log message queue size and timeout in RTT and UART instances. Added section in shell documentation which explains interaction between the logger and shell instance acting as a logger backend. Signed-off-by: Krzysztof Chruscinski <krzysztof.chruscinski@nordicsemi.no>
10 lines
428 B
Text
10 lines
428 B
Text
config $(module)_LOG_MESSAGE_QUEUE_SIZE
|
|
int "Log message queue size"
|
|
default $(default-size)
|
|
help
|
|
Amount of messages that can enqueued in order to be processed by shell
|
|
thread. Too small queue may lead to logger thread being blocked
|
|
(see $(module)_LOG_MESSAGE_QUEUE_TIMEOUT). Too big queue on relatively
|
|
slow shell transport may lead to situation where logs are dropped
|
|
because all log messages are enqueued.
|
|
|