Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

There are multiple levels of logging supported by RDK right from having the native Linux syslog (or more recently : journal logs) facility to having a dedicated logging facility such as RDK logger library.

RDK Logger

Description

Provides logging capabilityRDK Logger is responsible for centralizing logging feature which otherwise was done by printf or other similar functionalities. It provides enable/disable log feature as well as defines logging levels thus providing a way to control amount of outgoing log messages. Available as a library, it can be easily plugged into different application to enable them in creating logs in way that is common amount the RDK system.

Capabilities

  • Abstracts logging client from underlying logging utility.
  • Dynamically enable/disable logging level at run time.
  • Provide logging format that complies with the existing format understood across RDK components(e.g. <timestamp> [mod=*, level=*]).

A detailed description on the RDK logger component can be found here: <Add reference>

TODO: add following description

  • RDK logger features
  • log4c configuration
  • Log rotation
  • API List
  • Uploading logs

Systemd Journals

systemd has its own logging system called the journal; therefore, running a syslog daemon is no longer required.
Journal stores all logs in a specified folder
journalctl allows you to filter the output as needed
In order to comply with the rdk logging formats, journalctl is used to redirect logs to specific module level log .txt files
The future plan is to switch to using journald systems-journal-upload to upload logs

...