| # Copyright (c) 2021 Nordic Semiconductor ASA |
| # SPDX-License-Identifier: Apache-2.0 |
| |
| choice LOG_MODE |
| prompt "Mode" |
| depends on !LOG_FRONTEND_ONLY |
| default LOG_MODE_MINIMAL if LOG_DEFAULT_MINIMAL |
| default LOG_MODE_DEFERRED |
| |
| config LOG_MODE_DEFERRED |
| bool "Deferred logging" |
| select MPSC_PBUF |
| help |
| Log messages are buffered and processed later. This mode has the |
| least impact on the application. Time consuming processing is |
| deferred to the known context. |
| |
| config LOG_MODE_IMMEDIATE |
| bool "Synchronous" |
| help |
| When enabled log is processed in the context of the call. It impacts |
| performance of the system since time consuming operations are |
| performed in the context of the log entry (e.g. high priority |
| interrupt).Logger backends must support exclusive access to work |
| flawlessly in that mode because one log operation can be interrupted |
| by another one in the higher priority context. |
| |
| config LOG_MODE_MINIMAL |
| bool "Minimal-footprint" |
| imply PRINTK |
| help |
| Enable minimal logging implementation. This has very little footprint |
| overhead on top of the printk() implementation for standard |
| logging macros. Hexdump macros are also supported, with a small |
| amount of code pulled in if used. Build time filtering is supported, |
| but not runtime filtering. There are no timestamps, prefixes, |
| colors, or asynchronous logging, and all messages are simply |
| sent to printk(). |
| |
| endchoice |
| |
| config LOG_FRONTEND |
| bool "Frontend" |
| help |
| When enabled, logs are redirected to a custom frontend which is the |
| fastest way of getting logs out. |
| |
| config LOG_FRONTEND_ONLY |
| bool "No backends" |
| depends on LOG_FRONTEND |
| help |
| Option indicates that there are no backends intended to be used. |
| Code asserts if any backend is enabled. |
| |
| config LOG_DEFAULT_MINIMAL |
| bool |