|  | # Copyright (c) 2021 Nordic Semiconductor ASA | 
|  | # SPDX-License-Identifier: Apache-2.0 | 
|  |  | 
|  | menu "Output Formatting" | 
|  |  | 
|  | menu "Prepend non-hexdump log message with function name" | 
|  | depends on !LOG_FRONTEND_ONLY | 
|  |  | 
|  | config LOG_FUNC_NAME_PREFIX_ERR | 
|  | bool "Error messages prepended" | 
|  |  | 
|  | config LOG_FUNC_NAME_PREFIX_WRN | 
|  | bool "Warning messages prepended" | 
|  |  | 
|  | config LOG_FUNC_NAME_PREFIX_INF | 
|  | bool "Info messages prepended" | 
|  |  | 
|  | config LOG_FUNC_NAME_PREFIX_DBG | 
|  | bool "Debug messages prepended" | 
|  | default y | 
|  |  | 
|  | endmenu | 
|  |  | 
|  | menuconfig LOG_MIPI_SYST_ENABLE | 
|  | bool "MIPI SyS-T format output" | 
|  | select MIPI_SYST_LIB | 
|  | select LOG_OUTPUT | 
|  | help | 
|  | Enable MIPI SyS-T format output for the logger system. | 
|  |  | 
|  | if LOG_MIPI_SYST_ENABLE | 
|  |  | 
|  | config LOG_MIPI_SYST_USE_CATALOG | 
|  | bool "Use MIPI Sys-T Catalog for logging" | 
|  | depends on !PICOLIBC | 
|  | select LOG_FMT_SECTION | 
|  | select LOG_USE_TAGGED_ARGUMENTS | 
|  | help | 
|  | Use MIPI Sys-T Catalog for logging instead of plain text. | 
|  |  | 
|  | config LOG_MIPI_SYST_DISABLE_TIMESTAMP | 
|  | bool "Disable MIPI Sys-T protocol timestamp" | 
|  | help | 
|  | Remove the timestamp from the MIPI Sys-T protocol. | 
|  |  | 
|  | config LOG_MIPI_SYST_CATALOG_ARGS_BUFFER_SIZE | 
|  | int "Size of temporary arguments buffer when using Sys-T Catalog" | 
|  | depends on LOG_MIPI_SYST_USE_CATALOG | 
|  | default 1024 | 
|  | help | 
|  | The size (in bytes) of the temporary buffer to store the expanded | 
|  | argument list needed for the MIPI Sys-T library for processing | 
|  | catalog messages. | 
|  |  | 
|  | config LOG_MIPI_SYST_ARGS_BUFFER_SIZE | 
|  | int "Buffer size in bytes" | 
|  | default 1024 | 
|  | help | 
|  | This user-configurable option specifies the maximum size (in bytes) to reserve in | 
|  | the call stack for processing the logging format strings MIPI Sys-T library. | 
|  | Increasing it will allow for longer strings to be logged at the expense of used | 
|  | stack space. Conversely decreasing it will lessen the stack burden at the expense | 
|  | of shorter maximum log strings. | 
|  |  | 
|  | config LOG_MIPI_SYST_OUTPUT_LOG_MSG_SRC_ID | 
|  | bool "Output Log Message Source ID as Module ID" | 
|  | default y if LOG_MIPI_SYST_USE_CATALOG | 
|  | help | 
|  | Enable this option to output the log message source ID | 
|  | as the Sys-T message module ID (as in origin unit in Sys-T | 
|  | message header). | 
|  |  | 
|  | config LOG_MIPI_SYST_MSG_DEFAULT_MODULE_ID | 
|  | int "Default module ID in Sys-T message" | 
|  | range 0 127 | 
|  | default 127 if LOG_MIPI_SYST_OUTPUT_LOG_MSG_SRC_ID | 
|  | default 0 | 
|  | help | 
|  | The default module ID embedded in the origin unit in | 
|  | Sys-T message header. | 
|  |  | 
|  | If CONFIG_LOG_MIPI_SYST_OUTPUT_LOG_MSG_SRC_ID is disabled, | 
|  | this will be used for all Sys-T messages. | 
|  |  | 
|  | If CONFIG_LOG_MIPI_SYST_OUTPUT_LOG_MSG_SRC_ID is enabled, | 
|  | this will be used for log messages without source IDs, | 
|  | for example, printk() if CONFIG_LOG_PRINTK is enabled. | 
|  |  | 
|  | config LOG_MIPI_SYST_MSG_DEFAULT_UNIT_ID | 
|  | int "Default unit ID in Sys-T message" | 
|  | range 0 15 | 
|  | default 0 | 
|  | help | 
|  | The default unit ID embedded in the origin unit in | 
|  | Sys-T message header. | 
|  |  | 
|  | endif # LOG_MIPI_SYST_ENABLE | 
|  |  | 
|  | config LOG_DICTIONARY_SUPPORT | 
|  | bool | 
|  | select LOG_DICTIONARY_DB | 
|  | help | 
|  | Enable support for dictionary based logging. | 
|  |  | 
|  | Dictionary based logging is binary based where predefined strings | 
|  | are replaced with their equivalent addresses from the built binary | 
|  | image file in log output. This reduces the size required to store | 
|  | the log output when there are long format strings to be logged. | 
|  |  | 
|  | This should be selected by the backend automatically. | 
|  |  | 
|  | config LOG_THREAD_ID_PREFIX | 
|  | bool "Thread ID prefix" | 
|  | help | 
|  | Enable support for prefixing log message with thread name or ID. | 
|  | Thread name is used if THREAD_NAME is enabled. | 
|  |  | 
|  | config LOG_CUSTOM_FORMAT_SUPPORT | 
|  | bool "Custom format support" | 
|  | default n | 
|  | help | 
|  | Enable support for custom formatter. | 
|  | Allows custom format callbacks registering for logging backend. | 
|  |  | 
|  | config LOG_IMMEDIATE_CLEAN_OUTPUT | 
|  | bool "Clean log output" | 
|  | depends on LOG_MODE_IMMEDIATE | 
|  | help | 
|  | If enabled, interrupts are locked during whole log message processing. | 
|  | As a result, processing on one log message cannot be interrupted by | 
|  | another one and output is clean, not interleaved. However, enabling | 
|  | this option is causing interrupts locking for significant amount of | 
|  | time (up to multiple milliseconds). | 
|  |  | 
|  | config LOG_BACKEND_SHOW_COLOR | 
|  | bool "Colors in the backend" | 
|  | default y if LOG_BACKEND_UART || LOG_BACKEND_NATIVE_POSIX || LOG_BACKEND_RTT \ | 
|  | || LOG_BACKEND_SWO || LOG_BACKEND_XTENSA_SIM || SHELL_LOG_BACKEND | 
|  | help | 
|  | When enabled selected backend prints errors in red and warning in yellow. | 
|  |  | 
|  | if LOG_BACKEND_SHOW_COLOR | 
|  |  | 
|  | config LOG_INFO_COLOR_GREEN | 
|  | bool "Use green color for info level logs" | 
|  |  | 
|  | config LOG_DBG_COLOR_BLUE | 
|  | bool "Use blue color for debug level logs" | 
|  |  | 
|  | endif # LOG_BACKEND_SHOW_COLOR | 
|  |  | 
|  | config LOG_TAG_MAX_LEN | 
|  | int "Tag max length" | 
|  | default 0 | 
|  | range 0 64 | 
|  | help | 
|  | Setting non-zero value enables option to specify a tag which is | 
|  | prepended to each log message. Tag can be changed at runtime. | 
|  |  | 
|  | config LOG_TAG_DEFAULT | 
|  | string "Default tag" | 
|  | depends on LOG_TAG_MAX_LEN > 0 | 
|  | default "" | 
|  | help | 
|  | Initial tag. | 
|  |  | 
|  | config LOG_BACKEND_SUPPORTS_FORMAT_TIMESTAMP | 
|  | bool | 
|  | help | 
|  | Selected by log backends that supports timestamp formatting. | 
|  |  | 
|  | config LOG_BACKEND_FORMAT_TIMESTAMP | 
|  | bool "Timestamp formatting in the backend" | 
|  | depends on LOG_BACKEND_SUPPORTS_FORMAT_TIMESTAMP | 
|  | default y | 
|  | help | 
|  | When enabled timestamp is formatted. | 
|  |  | 
|  | choice LOG_BACKEND_FORMAT_TIMESTAMP_MODE | 
|  | prompt "Timestamp format mode" | 
|  | default LOG_OUTPUT_FORMAT_DATE_TIMESTAMP if LOG_TIMESTAMP_USE_REALTIME && POSIX_C_LANG_SUPPORT_R | 
|  | default LOG_OUTPUT_FORMAT_TIME_TIMESTAMP | 
|  |  | 
|  | config LOG_OUTPUT_FORMAT_TIME_TIMESTAMP | 
|  | bool "Format timestamp in time format" | 
|  | help | 
|  | When enabled timestamp is formatted to hh:mm:ss.ms,us. | 
|  |  | 
|  | config LOG_OUTPUT_FORMAT_DATE_TIMESTAMP | 
|  | bool "Format timestamp in date format" | 
|  | depends on POSIX_C_LANG_SUPPORT_R | 
|  | help | 
|  | When enabled timestamp is formatted to YYYY-MM-DD hh:mm:ss.ms,us. | 
|  |  | 
|  | config LOG_OUTPUT_FORMAT_ISO8601_TIMESTAMP | 
|  | bool "Format timestamp in ISO 8601 format" | 
|  | depends on POSIX_C_LANG_SUPPORT_R | 
|  | help | 
|  | When enabled timestamp is formatted to YYYY-MM-DDThh:mm:ss,ffffffZ. | 
|  |  | 
|  | config LOG_OUTPUT_FORMAT_LINUX_TIMESTAMP | 
|  | bool "Format timestamp in Linux format" | 
|  | help | 
|  | This formatting is something in the middle between the pure raw format | 
|  | and the hh:mm:ss:ms,us one. It resembles the Linux's kernel format in | 
|  | which timestamps are printed as fixed point values with seconds on the | 
|  | left side of the point and microseconds on the right side. | 
|  |  | 
|  | config LOG_OUTPUT_FORMAT_CUSTOM_TIMESTAMP | 
|  | bool "Custom timestamp format support" | 
|  | help | 
|  | Enable support for custom formatter for the timestamp. | 
|  | It will be applied to all backends except the syslog net backend. | 
|  |  | 
|  | endchoice | 
|  |  | 
|  | endmenu |