zephyr/samples/subsys/logging/logger
Krzysztof Chruscinski a15438e8f5 logging: add mechanism for handling transient strings
Extending logger to support logging transient strings (with %s).
With dedicated call (log_strdup), string is duplicated to a buffer
from internal logger pool. Logger implicitly manages the pool.

Signed-off-by: Krzysztof Chruscinski <krzysztof.chruscinski@nordicsemi.no>
2018-10-01 15:26:14 -04:00
..
src logging: add mechanism for handling transient strings 2018-10-01 15:26:14 -04:00
CMakeLists.txt cmake: Remove unnecessary KCONFIG_ROOT configuration 2018-09-21 13:37:21 -04:00
Kconfig samples: subsys: logging: example of kconfig.log_template usage 2018-09-14 12:32:56 -04:00
README.rst
prj.conf logging: Internal processing thread enabled by default 2018-07-19 09:50:18 -04:00
sample.yaml

README.rst

.. _logger_sample:

Logging
###########

Overview
********
A simple application that demonstrates use of logging subsystem. It demonstrates
main features: severity levels, timestamping, module level filtering and
instance level filtering. It also showcases logging capabilities in terms of
performance.

Building and Running
********************

This project outputs multiple log message to the console.  It can be built and
executed on QEMU as follows:

.. zephyr-app-commands::
   :zephyr-app: samples/subsys/logging/logger
   :host-os: unix
   :board: qemu_x86
   :goals: run
   :compact:


Sample Output
=============

.. code-block:: console

         Module logging showcase.
         [00:00:00.000,122] <info> foo: log in test_module 11
         Disabling logging in the foo module
         Function called again but with logging disabled.
         Instance level logging showcase.
         [00:00:00.000,274] <info> sample_instance.inst1: counter_value: 0
         [00:00:00.000,274] <warn> sample_instance.inst1: Example of hexdump:
         [00:00:00.000,305] <warn> sample_instance.inst1:  01 02 03 04            |....
         [00:00:00.000,305] <info> sample_instance.inst2: counter_value: 0
         [00:00:00.000,305] <warn> sample_instance.inst2: Example of hexdump:
         [00:00:00.000,305] <warn> sample_instance.inst2:  01 02 03 04            |....
         Changing filter to warning on sample_instance.inst1 instance.
         [00:00:00.000,396] <warn> sample_instance.inst1: Example of hexdump:
         [00:00:00.000,427] <warn> sample_instance.inst1:  01 02 03 04            |....
         [00:00:00.000,427] <info> sample_instance.inst2: counter_value: 1
         [00:00:00.000,427] <warn> sample_instance.inst2: Example of hexdump:
         [00:00:00.000,427] <warn> sample_instance.inst2:  01 02 03 04            |....
         Disabling logging on both instances.
         Function call on both instances with logging disabled.
         Severity levels showcase.
         [00:00:00.000,610] <err> main: Error message example.
         [00:00:00.000,610] <warn> main: Warning message example.
         [00:00:00.000,610] <info> main: Info message example.
         Logging performance showcase.
         [00:00:00.134,887] <info> main: performance test - log message 0
         [00:00:00.134,887] <info> main: performance test - log message 1
         [00:00:00.134,887] <info> main: performance test - log message 2
         [00:00:00.134,887] <info> main: performance test - log message 3
         [00:00:00.134,887] <info> main: performance test - log message 4
         [00:00:00.134,887] <info> main: performance test - log message 5
         [00:00:00.134,887] <info> main: performance test - log message 6
         [00:00:00.134,918] <info> main: performance test - log message 7
         [00:00:00.134,918] <info> main: performance test - log message 8
         [00:00:00.134,918] <info> main: performance test - log message 9
         [00:00:00.134,918] <info> main: performance test - log message 10
         [00:00:00.134,918] <info> main: performance test - log message 11
         [00:00:00.134,918] <info> main: performance test - log message 12
         [00:00:00.134,918] <info> main: performance test - log message 13
         [00:00:00.134,948] <info> main: performance test - log message 14
         Estimated logging capabilities: 245760 messages/second