blob: a047da3d22eb96c863b3903fd68fc5d975907d9f [file] [log] [blame]
# Copyright (c) 2016 Intel Corporation
# SPDX-License-Identifier: Apache-2.0
menu "Logging"
config LOG
bool "Logging"
select PRINTK if USERSPACE
help
Global switch for the logger, when turned off log calls will not be
compiled in.
if LOG
config LOG_CORE_INIT_PRIORITY
int "Log Core Initialization Priority"
range 0 99
default 0
rsource "Kconfig.mode"
rsource "Kconfig.filtering"
rsource "Kconfig.processing"
if !LOG_MODE_MINIMAL
rsource "Kconfig.formatting"
if !LOG_FRONTEND_ONLY
rsource "backends/Kconfig"
endif # !LOG_FRONTEND_ONLY
endif # !LOG_MODE_MINIMAL
if LOG_FRONTEND
rsource "frontends/Kconfig"
endif #LOG_FRONTEND
if LOG_MULTIDOMAIN
rsource "Kconfig.links"
endif
rsource "Kconfig.misc"
config LOG_RATELIMIT
bool "Rate-limited logging macros"
default y
help
When enabled, provides rate-limited logging macros that prevent
log flooding when messages are generated frequently. Rate limiting
is per-macro-call-site, meaning each unique call has its own
independent rate limit.
if LOG_RATELIMIT
config LOG_RATELIMIT_INTERVAL_MS
int "Default rate limit interval (milliseconds)"
default 5000
range 100 60000
help
Default interval between rate-limited log messages.
This is used by the convenience macros LOG_*_RATELIMIT
when no explicit rate is provided. Can be overridden per call
using LOG_*_RATELIMIT_RATE macros.
endif # LOG_RATELIMIT
if !LOG_RATELIMIT
choice LOG_RATELIMIT_FALLBACK
prompt "Fallback behavior for rate-limited logging macros"
default LOG_RATELIMIT_FALLBACK_DROP
help
Select fallback behavior for rate-limited logging macros when
LOG_RATELIMIT is disabled.
- "Log all prints": All log prints are output, i.e., rate limiting is ignored.
- "Drop all prints": All log prints using rate-limited macros are dropped.
This option allows you to control whether rate-limited log macros
should always print or be completely suppressed when rate limiting
is not available.
config LOG_RATELIMIT_FALLBACK_LOG
bool "Log all prints (ignore rate limiting)"
help
All log prints using rate-limited macros are output as normal logs.
config LOG_RATELIMIT_FALLBACK_DROP
bool "Drop all prints"
help
All log prints using rate-limited macros are dropped (no output).
endchoice
endif # !LOG_RATELIMIT
endif # LOG
config LOG_OUTPUT
bool "Formatter helper"
help
Module which provides formatting of log messages to a human-readable
strings.
endmenu