Versions Compared

Key

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

Table of Contents
maxLevel2

Info

This page is under development

Introduction

RDK logger is a general purpose logging mechanism which is used for logging in RDK-B. Internally this uses log4c for formatting and supporting multiple log levels for different modules. The log level for each component is read from a configuration file debug.ini (rdkb_debug.ini) during component initialisation. Logger is implemented as a shared library and components need to link this library in order to  include logging functionality.

RDK logger is linked to RDK-B modules to enable component wise logging. When the unit boots-up, each RDK-B component will be initialised which in turn will initialise logger and start logging into the corresponding log file depending on the log level set for the component.

Architecture

Note: The RDK data model naming convention prefix was changed in March 2020 to “X_RDK_”. We request you use this new prefix going forward.

Architecture

draw.io Diagram
diagramName
Gliffy Diagram
size850
nameRDK-B_Logger_Archi.drawio
size850
revision1pagePin4

  1. All logs from modules (CcspTraceError, CcspTraceInfo, etc..) are routed to RDK logger library. RDK logger logs these into log files based on module wise LogLevels & LoggerEnable options.  RDK  logger uses log4c library internally to achieve the functionality.

  2. CCSPLogAgent:

...

Steps to add rdklogger to a new component:

Step 1:

Need to add LoggerEnable and LogLevel parameters in “LogAgent.xml” file for new component.

Code Block
X_RDKCENTRAL-COM_New_LoggerEnable

...


X_RDKCENTRAL-COM_New_LogLevel


Step 2:

Need to add the new parameters in  “system_defaults_arm”  file for persistent storage.           

Code Block
$ X_RDKCENTRAL-COM_New_LogLevel=4

...


$ X_RDKCENTRAL-COM_New_LoggerEnable=1

Code functionality for Loglevel & LoggerEnable parameters set/get in “cosa_apis_logagentplugin.c” file

Initialise rdklogger by calling  rdk_logger_init (/fss/gw/lib/debug.ini)  in the new component


Step 3:

Add new component entry in “rdkb_debug.ini” file

Code Block
LOG.RDK.New = ALL FATAL ERROR WARNING NOTICE INFO DEBUG TRACE


Step 4:

Add the below configuration in “rdkb_log4src” file for new component

...

For Doxygen documentation on the RDK Logger please refer: Doxygen RDK Logger