Merge branch 'feat/ble_log_compression_module_cfg_update' into 'master'

Feat/ble log compression module cfg update

See merge request espressif/esp-idf!48467
This commit is contained in:
Island
2026-06-22 14:15:26 +08:00
11 changed files with 2365 additions and 783 deletions

View File

@@ -15,786 +15,7 @@ config BLE_COMPRESSED_LOG_ENABLE
for installation instructions.
if BLE_COMPRESSED_LOG_ENABLE
menuconfig BLE_MESH_COMPRESSED_LOG_ENABLE
bool "Enable BLE Mesh log compression(Preview)"
depends on BLE_COMPRESSED_LOG_ENABLE
depends on BLE_MESH
default n
help
Apply compression to ESP-BLE-MESH protocol stack logs. Requires
base BLE compression to be enabled. Specifically optimizes log
storage and transmission for ble mesh.
Note: This library depends on additional Python packages. It will
function correctly only after these dependencies are installed;
refer to:
"components/bt/common/ble_log/log_compression/README.en.md"
for installation instructions.
If the required packages are not installed, the log-compression
mechanism will remain disabled even when this Config is enabled.
config BLE_MESH_COMPRESSED_LOG_BUFFER_LEN
int "BLE Mesh log buffer length"
depends on BLE_MESH_COMPRESSED_LOG_ENABLE
default 400
help
Maximum output length for a single log
if BLE_MESH_COMPRESSED_LOG_ENABLE
menu "Select the stack log tag to be compressed"
config BLE_MESH_STACK_ERR_LOG_COMPRESSION
bool "Compress ERROR log of ESP-BLE-MESH"
default y
help
The error log in the BLE-MESH component will be compressed
config BLE_MESH_STACK_ERR_LOG_PRESERVE
bool "Keep the original error log statement"
depends on BLE_MESH_STACK_ERR_LOG_COMPRESSION
default y
help
When this option is enabled, the log data will be output
through both the compressed log interface and the original
UART interface at the same time, meaning that the log
statements will appear on both paths. However, please note
that this dual-output approach introduces additional code
and string constants, which will increase the size of the
firmware binary file. When this option is disabled, the
logs will no longer be printed through the original UART
output path; instead, they will only be output through the
compressed log interface. As the code and strings related
to the original UART output are omitted, the size of the
firmware binary file can be effectively reduced.
config BLE_MESH_STACK_WARN_LOG_COMPRESSION
bool "Compress warn log of ESP-BLE-MESH"
default y
help
The warn log in the BLE-MESH component will be compressed
config BLE_MESH_STACK_WARN_LOG_PRESERVE
bool "Keep the original warn log statement"
depends on BLE_MESH_STACK_WARN_LOG_COMPRESSION
default y
help
Please refer to the help information in BLE_MESH_STACK_ERR_LOG_PRESERVE
config BLE_MESH_STACK_INFO_LOG_COMPRESSION
bool "Compress info log of ESP-BLE-MESH"
default y
help
The info log in the BLE-MESH component will be compressed
config BLE_MESH_STACK_INFO_LOG_PRESERVE
bool "Keep the original info log statement"
depends on BLE_MESH_STACK_INFO_LOG_COMPRESSION
default n
help
Please refer to the help information in BLE_MESH_STACK_ERR_LOG_PRESERVE
config BLE_MESH_STACK_DEBUG_LOG_COMPRESSION
bool "Compress debug log of ESP-BLE-MESH"
default y
help
The debug log in the BLE-MESH component will be compressed
config BLE_MESH_STACK_DEBUG_LOG_PRESERVE
bool "Keep the original debug log statement"
depends on BLE_MESH_STACK_DEBUG_LOG_COMPRESSION
default n
help
Please refer to the help information in BLE_MESH_STACK_ERR_LOG_PRESERVE
endmenu
menu "Select the net buf log tag to be compressed"
config BLE_MESH_NET_BUF_ERR_LOG_COMPRESSION
bool "Compress ERROR log of ESP-BLE-MESH"
default y
help
The error log in the BLE-MESH component will be compressed
config BLE_MESH_NET_BUF_ERR_LOG_PRESERVE
bool "Keep the original error log statement"
depends on BLE_MESH_NET_BUF_ERR_LOG_COMPRESSION
default y
help
When this option is enabled, the log data will be output
through both the compressed log interface and the original
UART interface at the same time, meaning that the log
statements will appear on both paths. However, please note
that this dual-output approach introduces additional code
and string constants, which will increase the size of the
firmware binary file. When this option is disabled, the
logs will no longer be printed through the original UART
output path; instead, they will only be output through the
compressed log interface. As the code and strings related
to the original UART output are omitted, the size of the
firmware binary file can be effectively reduced.
config BLE_MESH_NET_BUF_WARN_LOG_COMPRESSION
bool "Compress warn log of ESP-BLE-MESH"
default y
help
The warn log in the BLE-MESH component will be compressed
config BLE_MESH_NET_BUF_WARN_LOG_PRESERVE
bool "Keep the original warn log statement"
depends on BLE_MESH_NET_BUF_WARN_LOG_COMPRESSION
default y
help
Please refer to the help information in BLE_MESH_NET_BUF_ERR_LOG_PRESERVE
config BLE_MESH_NET_BUF_INFO_LOG_COMPRESSION
bool "Compress info log of ESP-BLE-MESH"
default y
help
The info log in the BLE-MESH component will be compressed
config BLE_MESH_NET_BUF_INFO_LOG_PRESERVE
bool "Keep the original info log statement"
depends on BLE_MESH_NET_BUF_INFO_LOG_COMPRESSION
default n
help
Please refer to the help information in BLE_MESH_NET_BUF_ERR_LOG_PRESERVE
config BLE_MESH_NET_BUF_DEBUG_LOG_COMPRESSION
bool "Compress debug log of ESP-BLE-MESH"
default y
help
The debug log in the BLE-MESH component will be compressed
config BLE_MESH_NET_BUF_DEBUG_LOG_PRESERVE
bool "Keep the original debug log statement"
depends on BLE_MESH_NET_BUF_DEBUG_LOG_COMPRESSION
default n
help
Please refer to the help information in BLE_MESH_NET_BUF_ERR_LOG_PRESERVE
endmenu
endif
menuconfig BLE_HOST_COMPRESSED_LOG_ENABLE
bool "Enable BLE Host log compression(Preview)"
depends on BLE_COMPRESSED_LOG_ENABLE
depends on BT_BLUEDROID_ENABLED || BT_NIMBLE_ENABLED
default n
help
Apply compression to host logs. Requires
base BLE compression to be enabled. Specifically optimizes log
storage and transmission.
Note: This library depends on additional Python packages. It will
function correctly only after these dependencies are installed;
refer to:
"components/bt/common/ble_log/log_compression/README.en.md"
for installation instructions.
config BLE_HOST_COMPRESSED_LOG_BUFFER_LEN
int "Host log buffer length"
depends on BLE_HOST_COMPRESSED_LOG_ENABLE
default 300
help
Maximum output length for a single log
if BLE_HOST_COMPRESSED_LOG_ENABLE && BT_BLUEDROID_ENABLED
menu "Select the BTM layer log tag to be compressed"
config BLE_BLUEDROID_BTM_ERROR_LOG_COMPRESSION
bool "Compress error log of Bluedroid host"
default y
help
The error log in the Bluedroid host component will be compressed
config BLE_BLUEDROID_BTM_ERROR_LOG_PRESERVE
bool "Keep the original error log statement"
depends on BLE_BLUEDROID_BTM_ERROR_LOG_COMPRESSION
default y
help
When this option is enabled, the log data will be output
through both the compressed log interface and the original
UART interface at the same time, meaning that the log
statements will appear on both paths. However, please note
that this dual-output approach introduces additional code
and string constants, which will increase the size of the
firmware binary file. When this option is disabled, the
logs will no longer be printed through the original UART
output path; instead, they will only be output through the
compressed log interface. As the code and strings related
to the original UART output are omitted, the size of the
firmware binary file can be effectively reduced.
config BLE_BLUEDROID_BTM_WARNING_LOG_COMPRESSION
bool "Compress warning log of Bluedroid host"
default y
help
The warning log in the Bluedroid host component will be compressed
config BLE_BLUEDROID_BTM_WARNING_LOG_PRESERVE
bool "Keep the original warning log statement"
depends on BLE_BLUEDROID_BTM_WARNING_LOG_COMPRESSION
default y
help
Please refer to the help information in BLE_BLUEDROID_BTM_ERROR_LOG_PRESERVE
config BLE_BLUEDROID_BTM_API_LOG_COMPRESSION
bool "Compress api log of Bluedroid host"
default y
help
The api log in the Bluedroid host component will be compressed
config BLE_BLUEDROID_BTM_API_LOG_PRESERVE
bool "Keep the original api log statement"
depends on BLE_BLUEDROID_BTM_API_LOG_COMPRESSION
default n
help
Please refer to the help information in BLE_BLUEDROID_BTM_ERROR_LOG_PRESERVE
config BLE_BLUEDROID_BTM_EVENT_LOG_COMPRESSION
bool "Compress event log of Bluedroid host"
default y
help
The event log in the Bluedroid host component will be compressed
config BLE_BLUEDROID_BTM_EVENT_LOG_PRESERVE
bool "Keep the original event log statement"
depends on BLE_BLUEDROID_BTM_EVENT_LOG_COMPRESSION
default n
help
Please refer to the help information in BLE_BLUEDROID_BTM_ERROR_LOG_PRESERVE
config BLE_BLUEDROID_BTM_DEBUG_LOG_COMPRESSION
bool "Compress debug log of Bluedroid host"
default y
help
The debug log in the Bluedroid host component will be compressed
config BLE_BLUEDROID_BTM_DEBUG_LOG_PRESERVE
bool "Keep the original debug log statement"
depends on BLE_BLUEDROID_BTM_DEBUG_LOG_COMPRESSION
default n
help
Please refer to the help information in BLE_BLUEDROID_BTM_ERROR_LOG_PRESERVE
config BLE_BLUEDROID_BTM_VERBOSE_LOG_COMPRESSION
bool "Compress verbose log of Bluedroid host"
default y
help
The verbose log in the Bluedroid host component will be compressed
config BLE_BLUEDROID_BTM_VERBOSE_LOG_PRESERVE
bool "Keep the original verbose log statement"
depends on BLE_BLUEDROID_BTM_VERBOSE_LOG_COMPRESSION
default n
help
Please refer to the help information in BLE_BLUEDROID_BTM_ERROR_LOG_PRESERVE
endmenu
menu "Select the LA2CAP layer log tag to be compressed"
config BLE_BLUEDROID_L2CAP_ERROR_LOG_COMPRESSION
bool "Compress error log of Bluedroid host"
default y
help
The error log in the Bluedroid host component will be compressed
config BLE_BLUEDROID_L2CAP_ERROR_LOG_PRESERVE
bool "Keep the original error log statement"
depends on BLE_BLUEDROID_L2CAP_ERROR_LOG_COMPRESSION
default y
help
When this option is enabled, the log data will be output
through both the compressed log interface and the original
UART interface at the same time, meaning that the log
statements will appear on both paths. However, please note
that this dual-output approach introduces additional code
and string constants, which will increase the size of the
firmware binary file. When this option is disabled, the
logs will no longer be printed through the original UART
output path; instead, they will only be output through the
compressed log interface. As the code and strings related
to the original UART output are omitted, the size of the
firmware binary file can be effectively reduced.
config BLE_BLUEDROID_L2CAP_WARNING_LOG_COMPRESSION
bool "Compress warning log of Bluedroid host"
default y
help
The warning log in the Bluedroid host component will be compressed
config BLE_BLUEDROID_L2CAP_WARNING_LOG_PRESERVE
bool "Keep the original warning log statement"
depends on BLE_BLUEDROID_L2CAP_WARNING_LOG_COMPRESSION
default y
help
Please refer to the help information in BLE_BLUEDROID_L2CAP_ERROR_LOG_PRESERVE
config BLE_BLUEDROID_L2CAP_API_LOG_COMPRESSION
bool "Compress api log of Bluedroid host"
default y
help
The api log in the Bluedroid host component will be compressed
config BLE_BLUEDROID_L2CAP_API_LOG_PRESERVE
bool "Keep the original api log statement"
depends on BLE_BLUEDROID_L2CAP_API_LOG_COMPRESSION
default n
help
Please refer to the help information in BLE_BLUEDROID_L2CAP_ERROR_LOG_PRESERVE
config BLE_BLUEDROID_L2CAP_EVENT_LOG_COMPRESSION
bool "Compress event log of Bluedroid host"
default y
help
The event log in the Bluedroid host component will be compressed
config BLE_BLUEDROID_L2CAP_EVENT_LOG_PRESERVE
bool "Keep the original event log statement"
depends on BLE_BLUEDROID_L2CAP_EVENT_LOG_COMPRESSION
default n
help
Please refer to the help information in BLE_BLUEDROID_L2CAP_ERROR_LOG_PRESERVE
config BLE_BLUEDROID_L2CAP_DEBUG_LOG_COMPRESSION
bool "Compress debug log of Bluedroid host"
default y
help
The debug log in the Bluedroid host component will be compressed
config BLE_BLUEDROID_L2CAP_DEBUG_LOG_PRESERVE
bool "Keep the original debug log statement"
depends on BLE_BLUEDROID_L2CAP_DEBUG_LOG_COMPRESSION
default n
help
Please refer to the help information in BLE_BLUEDROID_L2CAP_ERROR_LOG_PRESERVE
config BLE_BLUEDROID_L2CAP_VERBOSE_LOG_COMPRESSION
bool "Compress verbose log of Bluedroid host"
default y
help
The verbose log in the Bluedroid host component will be compressed
config BLE_BLUEDROID_L2CAP_VERBOSE_LOG_PRESERVE
bool "Keep the original verbose log statement"
depends on BLE_BLUEDROID_L2CAP_VERBOSE_LOG_COMPRESSION
default n
help
Please refer to the help information in BLE_BLUEDROID_L2CAP_ERROR_LOG_PRESERVE
endmenu
menu "Select the GAP layer log tag to be compressed"
config BLE_BLUEDROID_GAP_ERROR_LOG_COMPRESSION
bool "Compress error log of Bluedroid host"
default y
help
The error log in the Bluedroid host component will be compressed
config BLE_BLUEDROID_GAP_ERROR_LOG_PRESERVE
bool "Keep the original error log statement"
depends on BLE_BLUEDROID_GAP_ERROR_LOG_COMPRESSION
default y
help
When this option is enabled, the log data will be output
through both the compressed log interface and the original
UART interface at the same time, meaning that the log
statements will appear on both paths. However, please note
that this dual-output approach introduces additional code
and string constants, which will increase the size of the
firmware binary file. When this option is disabled, the
logs will no longer be printed through the original UART
output path; instead, they will only be output through the
compressed log interface. As the code and strings related
to the original UART output are omitted, the size of the
firmware binary file can be effectively reduced.
config BLE_BLUEDROID_GAP_WARNING_LOG_COMPRESSION
bool "Compress warning log of Bluedroid host"
default y
help
The warning log in the Bluedroid host component will be compressed
config BLE_BLUEDROID_GAP_WARNING_LOG_PRESERVE
bool "Keep the original warning log statement"
depends on BLE_BLUEDROID_GAP_WARNING_LOG_COMPRESSION
default y
help
Please refer to the help information in BLE_BLUEDROID_GAP_ERROR_LOG_PRESERVE
config BLE_BLUEDROID_GAP_API_LOG_COMPRESSION
bool "Compress api log of Bluedroid host"
default y
help
The api log in the Bluedroid host component will be compressed
config BLE_BLUEDROID_GAP_API_LOG_PRESERVE
bool "Keep the original api log statement"
depends on BLE_BLUEDROID_GAP_API_LOG_COMPRESSION
default n
help
Please refer to the help information in BLE_BLUEDROID_GAP_ERROR_LOG_PRESERVE
config BLE_BLUEDROID_GAP_EVENT_LOG_COMPRESSION
bool "Compress event log of Bluedroid host"
default y
help
The event log in the Bluedroid host component will be compressed
config BLE_BLUEDROID_GAP_EVENT_LOG_PRESERVE
bool "Keep the original event log statement"
depends on BLE_BLUEDROID_GAP_EVENT_LOG_COMPRESSION
default n
help
Please refer to the help information in BLE_BLUEDROID_GAP_ERROR_LOG_PRESERVE
config BLE_BLUEDROID_GAP_DEBUG_LOG_COMPRESSION
bool "Compress debug log of Bluedroid host"
default y
help
The debug log in the Bluedroid host component will be compressed
config BLE_BLUEDROID_GAP_DEBUG_LOG_PRESERVE
bool "Keep the original debug log statement"
depends on BLE_BLUEDROID_GAP_DEBUG_LOG_COMPRESSION
default n
help
Please refer to the help information in BLE_BLUEDROID_GAP_ERROR_LOG_PRESERVE
config BLE_BLUEDROID_GAP_VERBOSE_LOG_COMPRESSION
bool "Compress verbose log of Bluedroid host"
default y
help
The verbose log in the Bluedroid host component will be compressed
config BLE_BLUEDROID_GAP_VERBOSE_LOG_PRESERVE
bool "Keep the original verbose log statement"
depends on BLE_BLUEDROID_GAP_VERBOSE_LOG_COMPRESSION
default n
help
Please refer to the help information in BLE_BLUEDROID_GAP_ERROR_LOG_PRESERVE
endmenu
menu "Select the GATT layer log tag to be compressed"
config BLE_BLUEDROID_GATT_ERROR_LOG_COMPRESSION
bool "Compress error log of Bluedroid host"
default y
help
The error log in the Bluedroid host component will be compressed
config BLE_BLUEDROID_GATT_ERROR_LOG_PRESERVE
bool "Keep the original error log statement"
depends on BLE_BLUEDROID_GATT_ERROR_LOG_COMPRESSION
default y
help
When this option is enabled, the log data will be output
through both the compressed log interface and the original
UART interface at the same time, meaning that the log
statements will appear on both paths. However, please note
that this dual-output approach introduces additional code
and string constants, which will increase the size of the
firmware binary file. When this option is disabled, the
logs will no longer be printed through the original UART
output path; instead, they will only be output through the
compressed log interface. As the code and strings related
to the original UART output are omitted, the size of the
firmware binary file can be effectively reduced.
config BLE_BLUEDROID_GATT_WARNING_LOG_COMPRESSION
bool "Compress warning log of Bluedroid host"
default y
help
The warning log in the Bluedroid host component will be compressed
config BLE_BLUEDROID_GATT_WARNING_LOG_PRESERVE
bool "Keep the original warning log statement"
depends on BLE_BLUEDROID_GATT_WARNING_LOG_COMPRESSION
default y
help
Please refer to the help information in BLE_BLUEDROID_GATT_ERROR_LOG_PRESERVE
config BLE_BLUEDROID_GATT_API_LOG_COMPRESSION
bool "Compress api log of Bluedroid host"
default y
help
The api log in the Bluedroid host component will be compressed
config BLE_BLUEDROID_GATT_API_LOG_PRESERVE
bool "Keep the original api log statement"
depends on BLE_BLUEDROID_GATT_API_LOG_COMPRESSION
default n
help
Please refer to the help information in BLE_BLUEDROID_GATT_ERROR_LOG_PRESERVE
config BLE_BLUEDROID_GATT_EVENT_LOG_COMPRESSION
bool "Compress event log of Bluedroid host"
default y
help
The event log in the Bluedroid host component will be compressed
config BLE_BLUEDROID_GATT_EVENT_LOG_PRESERVE
bool "Keep the original event log statement"
depends on BLE_BLUEDROID_GATT_EVENT_LOG_COMPRESSION
default n
help
Please refer to the help information in BLE_BLUEDROID_GATT_ERROR_LOG_PRESERVE
config BLE_BLUEDROID_GATT_DEBUG_LOG_COMPRESSION
bool "Compress debug log of Bluedroid host"
default y
help
The debug log in the Bluedroid host component will be compressed
config BLE_BLUEDROID_GATT_DEBUG_LOG_PRESERVE
bool "Keep the original debug log statement"
depends on BLE_BLUEDROID_GATT_DEBUG_LOG_COMPRESSION
default n
help
Please refer to the help information in BLE_BLUEDROID_GATT_ERROR_LOG_PRESERVE
config BLE_BLUEDROID_GATT_VERBOSE_LOG_COMPRESSION
bool "Compress verbose log of Bluedroid host"
default y
help
The verbose log in the Bluedroid host component will be compressed
config BLE_BLUEDROID_GATT_VERBOSE_LOG_PRESERVE
bool "Keep the original verbose log statement"
depends on BLE_BLUEDROID_GATT_VERBOSE_LOG_COMPRESSION
default n
help
Please refer to the help information in BLE_BLUEDROID_GATT_ERROR_LOG_PRESERVE
endmenu
menu "Select the SMP layer log tag to be compressed"
config BLE_BLUEDROID_SMP_ERROR_LOG_COMPRESSION
bool "Compress error log of Bluedroid host"
default y
help
The error log in the Bluedroid host component will be compressed
config BLE_BLUEDROID_SMP_ERROR_LOG_PRESERVE
bool "Keep the original error log statement"
depends on BLE_BLUEDROID_SMP_ERROR_LOG_COMPRESSION
default y
help
When this option is enabled, the log data will be output
through both the compressed log interface and the original
UART interface at the same time, meaning that the log
statements will appear on both paths. However, please note
that this dual-output approach introduces additional code
and string constants, which will increase the size of the
firmware binary file. When this option is disabled, the
logs will no longer be printed through the original UART
output path; instead, they will only be output through the
compressed log interface. As the code and strings related
to the original UART output are omitted, the size of the
firmware binary file can be effectively reduced.
config BLE_BLUEDROID_SMP_WARNING_LOG_COMPRESSION
bool "Compress warning log of Bluedroid host"
default y
help
The warning log in the Bluedroid host component will be compressed
config BLE_BLUEDROID_SMP_WARNING_LOG_PRESERVE
bool "Keep the original warning log statement"
depends on BLE_BLUEDROID_SMP_WARNING_LOG_COMPRESSION
default y
help
Please refer to the help information in BLE_BLUEDROID_SMP_ERROR_LOG_PRESERVE
config BLE_BLUEDROID_SMP_API_LOG_COMPRESSION
bool "Compress api log of Bluedroid host"
default y
help
The api log in the Bluedroid host component will be compressed
config BLE_BLUEDROID_SMP_API_LOG_PRESERVE
bool "Keep the original api log statement"
depends on BLE_BLUEDROID_SMP_API_LOG_COMPRESSION
default n
help
Please refer to the help information in BLE_BLUEDROID_SMP_ERROR_LOG_PRESERVE
config BLE_BLUEDROID_SMP_EVENT_LOG_COMPRESSION
bool "Compress event log of Bluedroid host"
default y
help
The event log in the Bluedroid host component will be compressed
config BLE_BLUEDROID_SMP_EVENT_LOG_PRESERVE
bool "Keep the original event log statement"
depends on BLE_BLUEDROID_SMP_EVENT_LOG_COMPRESSION
default n
help
Please refer to the help information in BLE_BLUEDROID_SMP_ERROR_LOG_PRESERVE
config BLE_BLUEDROID_SMP_DEBUG_LOG_COMPRESSION
bool "Compress debug log of Bluedroid host"
default y
help
The debug log in the Bluedroid host component will be compressed
config BLE_BLUEDROID_SMP_DEBUG_LOG_PRESERVE
bool "Keep the original debug log statement"
depends on BLE_BLUEDROID_SMP_DEBUG_LOG_COMPRESSION
default n
help
Please refer to the help information in BLE_BLUEDROID_SMP_ERROR_LOG_PRESERVE
config BLE_BLUEDROID_SMP_VERBOSE_LOG_COMPRESSION
bool "Compress verbose log of Bluedroid host"
default y
help
The verbose log in the Bluedroid host component will be compressed
config BLE_BLUEDROID_SMP_VERBOSE_LOG_PRESERVE
bool "Keep the original verbose log statement"
depends on BLE_BLUEDROID_SMP_VERBOSE_LOG_COMPRESSION
default n
help
Please refer to the help information in BLE_BLUEDROID_SMP_ERROR_LOG_PRESERVE
endmenu
menu "Select the APPL layer log tag to be compressed"
config BLE_BLUEDROID_APPL_ERROR_LOG_COMPRESSION
bool "Compress error log of Bluedroid host"
default y
help
The error log in the Bluedroid host component will be compressed
config BLE_BLUEDROID_APPL_ERROR_LOG_PRESERVE
bool "Keep the original error log statement"
depends on BLE_BLUEDROID_APPL_ERROR_LOG_COMPRESSION
default y
help
When this option is enabled, the log data will be output
through both the compressed log interface and the original
UART interface at the same time, meaning that the log
statements will appear on both paths. However, please note
that this dual-output approach introduces additional code
and string constants, which will increase the size of the
firmware binary file. When this option is disabled, the
logs will no longer be printed through the original UART
output path; instead, they will only be output through the
compressed log interface. As the code and strings related
to the original UART output are omitted, the size of the
firmware binary file can be effectively reduced.
config BLE_BLUEDROID_APPL_WARNING_LOG_COMPRESSION
bool "Compress warning log of Bluedroid host"
default y
help
The warning log in the Bluedroid host component will be compressed
config BLE_BLUEDROID_APPL_WARNING_LOG_PRESERVE
bool "Keep the original warning log statement"
depends on BLE_BLUEDROID_APPL_WARNING_LOG_COMPRESSION
default y
help
Please refer to the help information in BLE_BLUEDROID_APPL_ERROR_LOG_PRESERVE
config BLE_BLUEDROID_APPL_API_LOG_COMPRESSION
bool "Compress api log of Bluedroid host"
default y
help
The api log in the Bluedroid host component will be compressed
config BLE_BLUEDROID_APPL_API_LOG_PRESERVE
bool "Keep the original api log statement"
depends on BLE_BLUEDROID_APPL_API_LOG_COMPRESSION
default n
help
Please refer to the help information in BLE_BLUEDROID_APPL_ERROR_LOG_PRESERVE
config BLE_BLUEDROID_APPL_EVENT_LOG_COMPRESSION
bool "Compress event log of Bluedroid host"
default y
help
The event log in the Bluedroid host component will be compressed
config BLE_BLUEDROID_APPL_EVENT_LOG_PRESERVE
bool "Keep the original event log statement"
depends on BLE_BLUEDROID_APPL_EVENT_LOG_COMPRESSION
default n
help
Please refer to the help information in BLE_BLUEDROID_APPL_ERROR_LOG_PRESERVE
config BLE_BLUEDROID_APPL_DEBUG_LOG_COMPRESSION
bool "Compress debug log of Bluedroid host"
default y
help
The debug log in the Bluedroid host component will be compressed
config BLE_BLUEDROID_APPL_DEBUG_LOG_PRESERVE
bool "Keep the original debug log statement"
depends on BLE_BLUEDROID_APPL_DEBUG_LOG_COMPRESSION
default n
help
Please refer to the help information in BLE_BLUEDROID_APPL_ERROR_LOG_PRESERVE
config BLE_BLUEDROID_APPL_VERBOSE_LOG_COMPRESSION
bool "Compress verbose log of Bluedroid host"
default y
help
The verbose log in the Bluedroid host component will be compressed
config BLE_BLUEDROID_APPL_VERBOSE_LOG_PRESERVE
bool "Keep the original verbose log statement"
depends on BLE_BLUEDROID_APPL_VERBOSE_LOG_COMPRESSION
default n
help
Please refer to the help information in BLE_BLUEDROID_APPL_ERROR_LOG_PRESERVE
endmenu
endif
# ---------------------------------------------------------------------
# BLE ISO log compression (esp_ble_iso component)
# ---------------------------------------------------------------------
menuconfig BLE_ISO_COMPRESSED_LOG_ENABLE
bool "Enable BLE ISO log compression(Preview)"
depends on BLE_COMPRESSED_LOG_ENABLE
depends on BT_ISO
default n
help
Apply compression to ESP-BLE-ISO host shim logs (the
esp_ble_iso component) AND every IDF-source consumer that
shares the ISO LOG_* macro family — currently esp_ble_audio,
and future modules such as HID-over-ISO. All such sources
share one iso_log_index.h with one monotonic log-id counter.
Requires base BLE compression to be enabled.
Note: prebuilt libraries (e.g. libble_audio.a) emit logs via
an independent runtime callback (BLE_AUDIO_LIB) and are not
governed by this option.
Note: This library depends on additional Python packages. It
will function correctly only after these dependencies are
installed; refer to:
"components/bt/common/ble_log/log_compression/README.en.md"
for installation instructions.
If the required packages are not installed, the
log-compression mechanism will remain disabled even when this
Config is enabled.
config BLE_ISO_COMPRESSED_LOG_BUFFER_LEN
int "BLE ISO log buffer length"
depends on BLE_ISO_COMPRESSED_LOG_ENABLE
default 512
help
Maximum output length for a single log. Shared by every IDF
source compiled into the BLE_ISO compression channel
(esp_ble_iso, esp_ble_audio, and future ISO consumers).
if BLE_ISO_COMPRESSED_LOG_ENABLE
menu "Select the stack log tag to be compressed"
config BLE_ISO_STACK_ERR_LOG_COMPRESSION
bool "Compress ERROR log"
default y
help
The error log in the BLE-ISO component will be compressed
config BLE_ISO_STACK_ERR_LOG_PRESERVE
bool "Keep the original error log statement"
depends on BLE_ISO_STACK_ERR_LOG_COMPRESSION
default y
help
When this option is enabled, the log data will be output
through both the compressed log interface and the original
UART interface at the same time, meaning that the log
statements will appear on both paths. However, please note
that this dual-output approach introduces additional code
and string constants, which will increase the size of the
firmware binary file. When this option is disabled, the
logs will no longer be printed through the original UART
output path; instead, they will only be output through the
compressed log interface. As the code and strings related
to the original UART output are omitted, the size of the
firmware binary file can be effectively reduced.
config BLE_ISO_STACK_WARN_LOG_COMPRESSION
bool "Compress warn log"
default y
help
The warn log in the BLE-ISO component will be compressed.
config BLE_ISO_STACK_WARN_LOG_PRESERVE
bool "Keep the original warn log statement"
depends on BLE_ISO_STACK_WARN_LOG_COMPRESSION
default y
help
Please refer to the help information in BLE_ISO_STACK_ERR_LOG_PRESERVE.
config BLE_ISO_STACK_INFO_LOG_COMPRESSION
bool "Compress info log"
default y
help
The info log in the BLE-ISO component will be compressed.
config BLE_ISO_STACK_INFO_LOG_PRESERVE
bool "Keep the original info log statement"
depends on BLE_ISO_STACK_INFO_LOG_COMPRESSION
default n
help
Please refer to the help information in BLE_ISO_STACK_ERR_LOG_PRESERVE.
config BLE_ISO_STACK_DEBUG_LOG_COMPRESSION
bool "Compress debug log"
default y
help
The debug log in the BLE-ISO component will be compressed.
config BLE_ISO_STACK_DEBUG_LOG_PRESERVE
bool "Keep the original debug log statement"
depends on BLE_ISO_STACK_DEBUG_LOG_COMPRESSION
default n
help
Please refer to the help information in BLE_ISO_STACK_ERR_LOG_PRESERVE.
endmenu
endif
source "$IDF_PATH/components/bt/common/ble_log/extension/log_compression/profile/mesh/Kconfig.mesh.in"
source "$IDF_PATH/components/bt/common/ble_log/extension/log_compression/iso/audio/Kconfig.iso.in"
source "$IDF_PATH/components/bt/common/ble_log/extension/log_compression/host/Kconfig.host.in"
endif

View File

@@ -149,6 +149,358 @@ set(_BLE_HOST_TAG_MAP
CONFIG_BLE_BLUEDROID_APPL_VERBOSE_LOG_PRESERVE
APPL_TRACE_VERBOSE
# HCI Layer
CONFIG_BLE_BLUEDROID_HCI_ERROR_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_HCI_ERROR_LOG_PRESERVE
HCI_TRACE_ERROR
CONFIG_BLE_BLUEDROID_HCI_WARNING_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_HCI_WARNING_LOG_PRESERVE
HCI_TRACE_WARNING
CONFIG_BLE_BLUEDROID_HCI_EVENT_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_HCI_EVENT_LOG_PRESERVE
HCI_TRACE_EVENT
CONFIG_BLE_BLUEDROID_HCI_DEBUG_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_HCI_DEBUG_LOG_PRESERVE
HCI_TRACE_DEBUG
# SDP Layer
CONFIG_BLE_BLUEDROID_SDP_ERROR_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_SDP_ERROR_LOG_PRESERVE
SDP_TRACE_ERROR
CONFIG_BLE_BLUEDROID_SDP_WARNING_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_SDP_WARNING_LOG_PRESERVE
SDP_TRACE_WARNING
CONFIG_BLE_BLUEDROID_SDP_API_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_SDP_API_LOG_PRESERVE
SDP_TRACE_API
CONFIG_BLE_BLUEDROID_SDP_EVENT_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_SDP_EVENT_LOG_PRESERVE
SDP_TRACE_EVENT
CONFIG_BLE_BLUEDROID_SDP_DEBUG_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_SDP_DEBUG_LOG_PRESERVE
SDP_TRACE_DEBUG
# RFCOMM Layer
CONFIG_BLE_BLUEDROID_RFCOMM_ERROR_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_RFCOMM_ERROR_LOG_PRESERVE
RFCOMM_TRACE_ERROR
CONFIG_BLE_BLUEDROID_RFCOMM_WARNING_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_RFCOMM_WARNING_LOG_PRESERVE
RFCOMM_TRACE_WARNING
CONFIG_BLE_BLUEDROID_RFCOMM_API_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_RFCOMM_API_LOG_PRESERVE
RFCOMM_TRACE_API
CONFIG_BLE_BLUEDROID_RFCOMM_EVENT_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_RFCOMM_EVENT_LOG_PRESERVE
RFCOMM_TRACE_EVENT
CONFIG_BLE_BLUEDROID_RFCOMM_DEBUG_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_RFCOMM_DEBUG_LOG_PRESERVE
RFCOMM_TRACE_DEBUG
# BNEP Layer
CONFIG_BLE_BLUEDROID_BNEP_ERROR_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_BNEP_ERROR_LOG_PRESERVE
BNEP_TRACE_ERROR
CONFIG_BLE_BLUEDROID_BNEP_WARNING_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_BNEP_WARNING_LOG_PRESERVE
BNEP_TRACE_WARNING
CONFIG_BLE_BLUEDROID_BNEP_API_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_BNEP_API_LOG_PRESERVE
BNEP_TRACE_API
CONFIG_BLE_BLUEDROID_BNEP_EVENT_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_BNEP_EVENT_LOG_PRESERVE
BNEP_TRACE_EVENT
CONFIG_BLE_BLUEDROID_BNEP_DEBUG_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_BNEP_DEBUG_LOG_PRESERVE
BNEP_TRACE_DEBUG
# PAN Layer
CONFIG_BLE_BLUEDROID_PAN_ERROR_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_PAN_ERROR_LOG_PRESERVE
PAN_TRACE_ERROR
CONFIG_BLE_BLUEDROID_PAN_WARNING_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_PAN_WARNING_LOG_PRESERVE
PAN_TRACE_WARNING
CONFIG_BLE_BLUEDROID_PAN_API_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_PAN_API_LOG_PRESERVE
PAN_TRACE_API
CONFIG_BLE_BLUEDROID_PAN_EVENT_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_PAN_EVENT_LOG_PRESERVE
PAN_TRACE_EVENT
CONFIG_BLE_BLUEDROID_PAN_DEBUG_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_PAN_DEBUG_LOG_PRESERVE
PAN_TRACE_DEBUG
# A2D Layer
CONFIG_BLE_BLUEDROID_A2D_ERROR_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_A2D_ERROR_LOG_PRESERVE
A2D_TRACE_ERROR
CONFIG_BLE_BLUEDROID_A2D_WARNING_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_A2D_WARNING_LOG_PRESERVE
A2D_TRACE_WARNING
CONFIG_BLE_BLUEDROID_A2D_API_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_A2D_API_LOG_PRESERVE
A2D_TRACE_API
CONFIG_BLE_BLUEDROID_A2D_EVENT_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_A2D_EVENT_LOG_PRESERVE
A2D_TRACE_EVENT
CONFIG_BLE_BLUEDROID_A2D_DEBUG_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_A2D_DEBUG_LOG_PRESERVE
A2D_TRACE_DEBUG
# AVDT Layer
CONFIG_BLE_BLUEDROID_AVDT_ERROR_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_AVDT_ERROR_LOG_PRESERVE
AVDT_TRACE_ERROR
CONFIG_BLE_BLUEDROID_AVDT_WARNING_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_AVDT_WARNING_LOG_PRESERVE
AVDT_TRACE_WARNING
CONFIG_BLE_BLUEDROID_AVDT_API_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_AVDT_API_LOG_PRESERVE
AVDT_TRACE_API
CONFIG_BLE_BLUEDROID_AVDT_EVENT_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_AVDT_EVENT_LOG_PRESERVE
AVDT_TRACE_EVENT
CONFIG_BLE_BLUEDROID_AVDT_DEBUG_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_AVDT_DEBUG_LOG_PRESERVE
AVDT_TRACE_DEBUG
# AVCT Layer
CONFIG_BLE_BLUEDROID_AVCT_ERROR_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_AVCT_ERROR_LOG_PRESERVE
AVCT_TRACE_ERROR
CONFIG_BLE_BLUEDROID_AVCT_WARNING_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_AVCT_WARNING_LOG_PRESERVE
AVCT_TRACE_WARNING
CONFIG_BLE_BLUEDROID_AVCT_API_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_AVCT_API_LOG_PRESERVE
AVCT_TRACE_API
CONFIG_BLE_BLUEDROID_AVCT_EVENT_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_AVCT_EVENT_LOG_PRESERVE
AVCT_TRACE_EVENT
CONFIG_BLE_BLUEDROID_AVCT_DEBUG_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_AVCT_DEBUG_LOG_PRESERVE
AVCT_TRACE_DEBUG
# AVRC Layer
CONFIG_BLE_BLUEDROID_AVRC_ERROR_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_AVRC_ERROR_LOG_PRESERVE
AVRC_TRACE_ERROR
CONFIG_BLE_BLUEDROID_AVRC_WARNING_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_AVRC_WARNING_LOG_PRESERVE
AVRC_TRACE_WARNING
CONFIG_BLE_BLUEDROID_AVRC_API_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_AVRC_API_LOG_PRESERVE
AVRC_TRACE_API
CONFIG_BLE_BLUEDROID_AVRC_EVENT_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_AVRC_EVENT_LOG_PRESERVE
AVRC_TRACE_EVENT
CONFIG_BLE_BLUEDROID_AVRC_DEBUG_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_AVRC_DEBUG_LOG_PRESERVE
AVRC_TRACE_DEBUG
# MCA Layer
CONFIG_BLE_BLUEDROID_MCA_ERROR_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_MCA_ERROR_LOG_PRESERVE
MCA_TRACE_ERROR
CONFIG_BLE_BLUEDROID_MCA_WARNING_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_MCA_WARNING_LOG_PRESERVE
MCA_TRACE_WARNING
CONFIG_BLE_BLUEDROID_MCA_API_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_MCA_API_LOG_PRESERVE
MCA_TRACE_API
CONFIG_BLE_BLUEDROID_MCA_EVENT_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_MCA_EVENT_LOG_PRESERVE
MCA_TRACE_EVENT
CONFIG_BLE_BLUEDROID_MCA_DEBUG_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_MCA_DEBUG_LOG_PRESERVE
MCA_TRACE_DEBUG
# HIDH Layer
CONFIG_BLE_BLUEDROID_HIDH_ERROR_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_HIDH_ERROR_LOG_PRESERVE
HIDH_TRACE_ERROR
CONFIG_BLE_BLUEDROID_HIDH_WARNING_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_HIDH_WARNING_LOG_PRESERVE
HIDH_TRACE_WARNING
CONFIG_BLE_BLUEDROID_HIDH_API_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_HIDH_API_LOG_PRESERVE
HIDH_TRACE_API
CONFIG_BLE_BLUEDROID_HIDH_EVENT_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_HIDH_EVENT_LOG_PRESERVE
HIDH_TRACE_EVENT
CONFIG_BLE_BLUEDROID_HIDH_DEBUG_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_HIDH_DEBUG_LOG_PRESERVE
HIDH_TRACE_DEBUG
# HIDD Layer
CONFIG_BLE_BLUEDROID_HIDD_ERROR_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_HIDD_ERROR_LOG_PRESERVE
HIDD_TRACE_ERROR
CONFIG_BLE_BLUEDROID_HIDD_WARNING_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_HIDD_WARNING_LOG_PRESERVE
HIDD_TRACE_WARNING
CONFIG_BLE_BLUEDROID_HIDD_API_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_HIDD_API_LOG_PRESERVE
HIDD_TRACE_API
CONFIG_BLE_BLUEDROID_HIDD_EVENT_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_HIDD_EVENT_LOG_PRESERVE
HIDD_TRACE_EVENT
CONFIG_BLE_BLUEDROID_HIDD_DEBUG_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_HIDD_DEBUG_LOG_PRESERVE
HIDD_TRACE_DEBUG
CONFIG_BLE_BLUEDROID_HIDD_VERBOSE_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_HIDD_VERBOSE_LOG_PRESERVE
HIDD_TRACE_VERBOSE
# BTIF Layer
CONFIG_BLE_BLUEDROID_BTIF_ERROR_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_BTIF_ERROR_LOG_PRESERVE
BTIF_TRACE_ERROR
CONFIG_BLE_BLUEDROID_BTIF_WARNING_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_BTIF_WARNING_LOG_PRESERVE
BTIF_TRACE_WARNING
CONFIG_BLE_BLUEDROID_BTIF_API_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_BTIF_API_LOG_PRESERVE
BTIF_TRACE_API
CONFIG_BLE_BLUEDROID_BTIF_EVENT_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_BTIF_EVENT_LOG_PRESERVE
BTIF_TRACE_EVENT
CONFIG_BLE_BLUEDROID_BTIF_DEBUG_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_BTIF_DEBUG_LOG_PRESERVE
BTIF_TRACE_DEBUG
CONFIG_BLE_BLUEDROID_BTIF_VERBOSE_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_BTIF_VERBOSE_LOG_PRESERVE
BTIF_TRACE_VERBOSE
# BTC Layer
CONFIG_BLE_BLUEDROID_BTC_ERROR_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_BTC_ERROR_LOG_PRESERVE
BTC_TRACE_ERROR
CONFIG_BLE_BLUEDROID_BTC_WARNING_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_BTC_WARNING_LOG_PRESERVE
BTC_TRACE_WARNING
CONFIG_BLE_BLUEDROID_BTC_API_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_BTC_API_LOG_PRESERVE
BTC_TRACE_API
CONFIG_BLE_BLUEDROID_BTC_EVENT_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_BTC_EVENT_LOG_PRESERVE
BTC_TRACE_EVENT
CONFIG_BLE_BLUEDROID_BTC_DEBUG_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_BTC_DEBUG_LOG_PRESERVE
BTC_TRACE_DEBUG
CONFIG_BLE_BLUEDROID_BTC_VERBOSE_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_BTC_VERBOSE_LOG_PRESERVE
BTC_TRACE_VERBOSE
# OSI Layer
CONFIG_BLE_BLUEDROID_OSI_ERROR_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_OSI_ERROR_LOG_PRESERVE
OSI_TRACE_ERROR
CONFIG_BLE_BLUEDROID_OSI_WARNING_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_OSI_WARNING_LOG_PRESERVE
OSI_TRACE_WARNING
CONFIG_BLE_BLUEDROID_OSI_API_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_OSI_API_LOG_PRESERVE
OSI_TRACE_API
CONFIG_BLE_BLUEDROID_OSI_EVENT_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_OSI_EVENT_LOG_PRESERVE
OSI_TRACE_EVENT
CONFIG_BLE_BLUEDROID_OSI_DEBUG_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_OSI_DEBUG_LOG_PRESERVE
OSI_TRACE_DEBUG
CONFIG_BLE_BLUEDROID_OSI_VERBOSE_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_OSI_VERBOSE_LOG_PRESERVE
OSI_TRACE_VERBOSE
# BLUFI Layer
CONFIG_BLE_BLUEDROID_BLUFI_ERROR_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_BLUFI_ERROR_LOG_PRESERVE
BLUFI_TRACE_ERROR
CONFIG_BLE_BLUEDROID_BLUFI_WARNING_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_BLUFI_WARNING_LOG_PRESERVE
BLUFI_TRACE_WARNING
CONFIG_BLE_BLUEDROID_BLUFI_API_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_BLUFI_API_LOG_PRESERVE
BLUFI_TRACE_API
CONFIG_BLE_BLUEDROID_BLUFI_EVENT_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_BLUFI_EVENT_LOG_PRESERVE
BLUFI_TRACE_EVENT
CONFIG_BLE_BLUEDROID_BLUFI_DEBUG_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_BLUFI_DEBUG_LOG_PRESERVE
BLUFI_TRACE_DEBUG
CONFIG_BLE_BLUEDROID_BLUFI_VERBOSE_LOG_COMPRESSION
CONFIG_BLE_BLUEDROID_BLUFI_VERBOSE_LOG_PRESERVE
BLUFI_TRACE_VERBOSE
)
include(${CMAKE_CURRENT_LIST_DIR}/tag_table_function.cmake)

View File

@@ -0,0 +1,26 @@
menuconfig BLE_HOST_COMPRESSED_LOG_ENABLE
bool "Enable BLE Host log compression(Preview)"
depends on BLE_COMPRESSED_LOG_ENABLE
depends on BT_BLUEDROID_ENABLED || BT_NIMBLE_ENABLED
default n
help
Apply compression to host logs. Requires
base BLE compression to be enabled. Specifically optimizes log
storage and transmission.
Note: This library depends on additional Python packages. It will
function correctly only after these dependencies are installed;
refer to:
"components/bt/common/ble_log/log_compression/README.en.md"
for installation instructions.
config BLE_HOST_COMPRESSED_LOG_BUFFER_LEN
int "Host log buffer length"
depends on BLE_HOST_COMPRESSED_LOG_ENABLE
default 300
help
Maximum output length for a single log
source "$IDF_PATH/components/bt/common/ble_log/extension/log_compression/host/Kconfig.host.bluedroid.in"
source "$IDF_PATH/components/bt/common/ble_log/extension/log_compression/host/Kconfig.host.nimble.in"

View File

@@ -0,0 +1,3 @@
if BLE_HOST_COMPRESSED_LOG_ENABLE && BT_NIMBLE_ENABLED
endif

View File

@@ -0,0 +1,28 @@
menuconfig BLE_ISO_COMPRESSED_LOG_ENABLE
bool "Enable BLE Audio/ISO log compression(Preview)"
depends on BLE_COMPRESSED_LOG_ENABLE
depends on BT_ISO
default n
help
Apply compression to BLE Audio/ISO protocol stack logs. Requires
base BLE compression to be enabled. Specifically optimizes log
storage and transmission for BLE Audio and ISO.
Note: This library depends on additional Python packages. It will
function correctly only after these dependencies are installed;
refer to:
"components/bt/common/ble_log/log_compression/README.en.md"
for installation instructions.
If the required packages are not installed, the log-compression
mechanism will remain disabled even when this Config is enabled.
config BLE_ISO_COMPRESSED_LOG_BUFFER_LEN
int "BLE Audio/ISO log buffer length"
depends on BLE_ISO_COMPRESSED_LOG_ENABLE
default 300
help
Maximum output length for a single log
source "$IDF_PATH/components/bt/common/ble_log/extension/log_compression/iso/audio/Kconfig.iso.tags.in"

View File

@@ -0,0 +1,62 @@
if BLE_ISO_COMPRESSED_LOG_ENABLE
menu "Select the Audio/ISO stack log tag to be compressed"
config BLE_ISO_STACK_ERR_LOG_COMPRESSION
bool "Compress ERROR log of BLE Audio/ISO"
default y
help
The error log in the BLE Audio/ISO component will be compressed
config BLE_ISO_STACK_ERR_LOG_PRESERVE
bool "Keep the original error log statement"
depends on BLE_ISO_STACK_ERR_LOG_COMPRESSION
default y
help
When this option is enabled, the log data will be output
through both the compressed log interface and the original
UART interface at the same time, meaning that the log
statements will appear on both paths. However, please note
that this dual-output approach introduces additional code
and string constants, which will increase the size of the
firmware binary file. When this option is disabled, the
logs will no longer be printed through the original UART
output path; instead, they will only be output through the
compressed log interface. As the code and strings related
to the original UART output are omitted, the size of the
firmware binary file can be effectively reduced.
config BLE_ISO_STACK_WARN_LOG_COMPRESSION
bool "Compress WARN log of BLE Audio/ISO"
default y
help
The warn log in the BLE Audio/ISO component will be compressed
config BLE_ISO_STACK_WARN_LOG_PRESERVE
bool "Keep the original warn log statement"
depends on BLE_ISO_STACK_WARN_LOG_COMPRESSION
default y
help
Please refer to the help information in BLE_ISO_STACK_ERR_LOG_PRESERVE
config BLE_ISO_STACK_INFO_LOG_COMPRESSION
bool "Compress INFO log of BLE Audio/ISO"
default y
help
The info log in the BLE Audio/ISO component will be compressed
config BLE_ISO_STACK_INFO_LOG_PRESERVE
bool "Keep the original info log statement"
depends on BLE_ISO_STACK_INFO_LOG_COMPRESSION
default n
help
Please refer to the help information in BLE_ISO_STACK_ERR_LOG_PRESERVE
config BLE_ISO_STACK_DEBUG_LOG_COMPRESSION
bool "Compress DEBUG log of BLE Audio/ISO"
default y
help
The debug log in the BLE Audio/ISO component will be compressed
config BLE_ISO_STACK_DEBUG_LOG_PRESERVE
bool "Keep the original debug log statement"
depends on BLE_ISO_STACK_DEBUG_LOG_COMPRESSION
default n
help
Please refer to the help information in BLE_ISO_STACK_ERR_LOG_PRESERVE
endmenu
endif

View File

@@ -0,0 +1,28 @@
menuconfig BLE_MESH_COMPRESSED_LOG_ENABLE
bool "Enable BLE Mesh log compression(Preview)"
depends on BLE_COMPRESSED_LOG_ENABLE
depends on BLE_MESH
default n
help
Apply compression to ESP-BLE-MESH protocol stack logs. Requires
base BLE compression to be enabled. Specifically optimizes log
storage and transmission for ble mesh.
Note: This library depends on additional Python packages. It will
function correctly only after these dependencies are installed;
refer to:
"components/bt/common/ble_log/log_compression/README.en.md"
for installation instructions.
If the required packages are not installed, the log-compression
mechanism will remain disabled even when this Config is enabled.
config BLE_MESH_COMPRESSED_LOG_BUFFER_LEN
int "BLE Mesh log buffer length"
depends on BLE_MESH_COMPRESSED_LOG_ENABLE
default 400
help
Maximum output length for a single log
source "$IDF_PATH/components/bt/common/ble_log/extension/log_compression/profile/mesh/Kconfig.mesh.tags.in"

View File

@@ -0,0 +1,117 @@
if BLE_MESH_COMPRESSED_LOG_ENABLE
menu "Select the stack log tag to be compressed"
config BLE_MESH_STACK_ERR_LOG_COMPRESSION
bool "Compress ERROR log of ESP-BLE-MESH"
default y
help
The error log in the BLE-MESH component will be compressed
config BLE_MESH_STACK_ERR_LOG_PRESERVE
bool "Keep the original error log statement"
depends on BLE_MESH_STACK_ERR_LOG_COMPRESSION
default y
help
When this option is enabled, the log data will be output
through both the compressed log interface and the original
UART interface at the same time, meaning that the log
statements will appear on both paths. However, please note
that this dual-output approach introduces additional code
and string constants, which will increase the size of the
firmware binary file. When this option is disabled, the
logs will no longer be printed through the original UART
output path; instead, they will only be output through the
compressed log interface. As the code and strings related
to the original UART output are omitted, the size of the
firmware binary file can be effectively reduced.
config BLE_MESH_STACK_WARN_LOG_COMPRESSION
bool "Compress warn log of ESP-BLE-MESH"
default y
help
The warn log in the BLE-MESH component will be compressed
config BLE_MESH_STACK_WARN_LOG_PRESERVE
bool "Keep the original warn log statement"
depends on BLE_MESH_STACK_WARN_LOG_COMPRESSION
default y
help
Please refer to the help information in BLE_MESH_STACK_ERR_LOG_PRESERVE
config BLE_MESH_STACK_INFO_LOG_COMPRESSION
bool "Compress info log of ESP-BLE-MESH"
default y
help
The info log in the BLE-MESH component will be compressed
config BLE_MESH_STACK_INFO_LOG_PRESERVE
bool "Keep the original info log statement"
depends on BLE_MESH_STACK_INFO_LOG_COMPRESSION
default n
help
Please refer to the help information in BLE_MESH_STACK_ERR_LOG_PRESERVE
config BLE_MESH_STACK_DEBUG_LOG_COMPRESSION
bool "Compress debug log of ESP-BLE-MESH"
default y
help
The debug log in the BLE-MESH component will be compressed
config BLE_MESH_STACK_DEBUG_LOG_PRESERVE
bool "Keep the original debug log statement"
depends on BLE_MESH_STACK_DEBUG_LOG_COMPRESSION
default n
help
Please refer to the help information in BLE_MESH_STACK_ERR_LOG_PRESERVE
endmenu
menu "Select the net buf log tag to be compressed"
config BLE_MESH_NET_BUF_ERR_LOG_COMPRESSION
bool "Compress ERROR log of ESP-BLE-MESH"
default y
help
The error log in the BLE-MESH component will be compressed
config BLE_MESH_NET_BUF_ERR_LOG_PRESERVE
bool "Keep the original error log statement"
depends on BLE_MESH_NET_BUF_ERR_LOG_COMPRESSION
default y
help
When this option is enabled, the log data will be output
through both the compressed log interface and the original
UART interface at the same time, meaning that the log
statements will appear on both paths. However, please note
that this dual-output approach introduces additional code
and string constants, which will increase the size of the
firmware binary file. When this option is disabled, the
logs will no longer be printed through the original UART
output path; instead, they will only be output through the
compressed log interface. As the code and strings related
to the original UART output are omitted, the size of the
firmware binary file can be effectively reduced.
config BLE_MESH_NET_BUF_WARN_LOG_COMPRESSION
bool "Compress warn log of ESP-BLE-MESH"
default y
help
The warn log in the BLE-MESH component will be compressed
config BLE_MESH_NET_BUF_WARN_LOG_PRESERVE
bool "Keep the original warn log statement"
depends on BLE_MESH_NET_BUF_WARN_LOG_COMPRESSION
default y
help
Please refer to the help information in BLE_MESH_NET_BUF_ERR_LOG_PRESERVE
config BLE_MESH_NET_BUF_INFO_LOG_COMPRESSION
bool "Compress info log of ESP-BLE-MESH"
default y
help
The info log in the BLE-MESH component will be compressed
config BLE_MESH_NET_BUF_INFO_LOG_PRESERVE
bool "Keep the original info log statement"
depends on BLE_MESH_NET_BUF_INFO_LOG_COMPRESSION
default n
help
Please refer to the help information in BLE_MESH_NET_BUF_ERR_LOG_PRESERVE
config BLE_MESH_NET_BUF_DEBUG_LOG_COMPRESSION
bool "Compress debug log of ESP-BLE-MESH"
default y
help
The debug log in the BLE-MESH component will be compressed
config BLE_MESH_NET_BUF_DEBUG_LOG_PRESERVE
bool "Keep the original debug log statement"
depends on BLE_MESH_NET_BUF_DEBUG_LOG_COMPRESSION
default n
help
Please refer to the help information in BLE_MESH_NET_BUF_ERR_LOG_PRESERVE
endmenu
endif

View File

@@ -290,7 +290,7 @@ class LogCompressor:
logs.append(log_info)
except Exception as e:
LOGGER.error(f'Error processing log node: {e}\n{traceback.format_exc()}')
raise
continue
return logs

View File

@@ -9,6 +9,22 @@ BLUEDROID_LOG_MODE_LEVEL_GET = {
'GATT': 'gatt_cb.trace_level',
'SMP': 'smp_cb.trace_level',
'APPL': 'appl_trace_level',
'HCI': 'HCI_INITIAL_TRACE_LEVEL',
'SDP': 'sdp_cb.trace_level',
'RFCOMM': 'rfc_cb.trace_level',
'BNEP': 'bnep_cb.trace_level',
'PAN': 'pan_cb.trace_level',
'A2D': 'a2d_cb.trace_level',
'AVDT': 'avdt_cb.trace_level',
'AVCT': 'avct_cb.trace_level',
'AVRC': 'avrc_cb.trace_level',
'MCA': 'mca_cb.trace_level',
'HIDH': 'hh_cb.trace_level',
'HIDD': 'hd_cb.trace_level',
'BTIF': 'btif_trace_level',
'BTC': 'BTC_INITIAL_TRACE_LEVEL',
'OSI': 'OSI_INITIAL_TRACE_LEVEL',
'BLUFI': 'BLUFI_INITIAL_TRACE_LEVEL',
}