Logger class is used for sending log messages coming from LOG macros:
LOG_PRINTFLOG_TRACELOG_DEBUGLOG_INFOLOG_WARNLOG_ERRORLOG_FATALLOG_CUSTOMto a proper device (SEGGER_RTT, console output, SYSTEMVIEW)
and at the same time to put them to a circular buffer.
Circular buffer has a limited size which sometimes results in losing some logs.
In such a case, proper lost message info is added to msg received from the buffer.
However, it should not happen because the logger has a worker and 2 logger buffers. When the buffer is full the logger switch buffer and sends message to the worker to dump logs.
Logs from Circular buffer are dumped to a file named MuditaOS.log when:
Circular buffer is fullCurrent max log file size is 15MB. After reaching this size the Rotator save file and add
extension at the end of file extension eg. MuditaOS.log.1. Then create the new file.
Logs can be accessed using mount_user_lfs_partition.py script from tools directory.
Additionally, test/get_os_log.py script allows getting a log file from a running phone.
There are a series of useful system logging capabilities defined in:
module-utils/log/api/log/debug.hpp