summaryrefslogtreecommitdiff
path: root/doc/logging.txt
diff options
context:
space:
mode:
Diffstat (limited to 'doc/logging.txt')
-rw-r--r--doc/logging.txt101
1 files changed, 101 insertions, 0 deletions
diff --git a/doc/logging.txt b/doc/logging.txt
new file mode 100644
index 0000000..ee98160
--- /dev/null
+++ b/doc/logging.txt
@@ -0,0 +1,101 @@
+dLeyna components allow information to be output using a logging mechanism.
+This service currently implements 2 output mechanisms and different 'levels' of
+importance for messages.
+
+Logging type:
+-------------
+
+dLeyna components can choose between 'syslog' or glib logging system.
+
+The logging type can be set at configuration time and changed dynamically at
+runtime.
+
+When configuring the project, use the --with-log-type option to select your
+desired logging service.
+
+ --with-log-type=0: syslog service will be used.
+ --with-log-type=1: glib system will be used.
+
+
+The logging options of a dLeyna service can also be modified at runtime
+by modifying the service's configuration file. Each dLeyna service has
+its own configuration file, e.g., dleyna-server.conf or dleyna-renderer.conf,
+and these files are located in the default local configuration folder (usually
+in your home folder, /home/<user>/.config/).
+
+Each configuration file has an option called log-type.
+
+ log-type=0: syslog service will be used.
+ log-type=1: glib system will be used.
+
+dLeyna components monitor these configuration files. Any changes on it are
+applied immediately.
+
+
+Logging level:
+--------------
+
+The logging level selects which kind of messages in the code are going to be
+logged.
+
+The logging level is set at configuration time and a subset of this initial
+configuration can be changed dynamically at run time.
+
+dLeyna components define 6 levels of importance:
+
+ 1: errors
+ 2: critical messages
+ 3: warnings
+ 4: messages/notices
+ 5: informational messages
+ 6: debug messages
+
+When configuring the project, use the --with-log-level option to select your
+desired logging messages.
+
+Allowed values for --with-log-level are:
+ 0 = disabled
+ 7 = default (=1,2,5)
+ 8 = all (=1,2,3,4,5,6)
+ 1,..,6 = a comma separated list of log level
+
+ex: --with-log-level=2,5,6 will log only critical, informational and debug
+messages.
+
+The service can also be changed at runtime by modifying the configuration file.
+The service's configuration file has an option called log-level.
+The values for log-level are the same as for --with-log-level.
+
+Be careful, logging messages not selected during the configuration of the
+project, could not be enabled at runtime. These messages are stripped at
+compilation time. You can only specify a sub selection of the one defined with
+--with-log-level option.
+
+ex:
+--with-log-level=2,5,6
+At run time you can change log-level to
+log-level=2: Only critical messages will be logged.
+log-level=5,6: sub selection of --with-log-level.
+log-level=8: enable all options define by --with-log-level. Same as =2,5,6
+log-level=0: disable logging
+
+DOES NOT WORK: log-level=1,3. Not part of --with-log-level option.
+
+
+Macros:
+-------
+
+To log messages, use the predefined macros below:
+
+DLEYNA_LOG_LEVEL_ERROR
+DLEYNA_LOG_LEVEL_CRITICAL
+DLEYNA_LOG_LEVEL_WARNING
+DLEYNA_LOG_LEVEL_MESSAGE
+DLEYNA_LOG_LEVEL_INFO
+DLEYNA_LOG_LEVEL_DEBUG
+
+DLEYNA_LOG_LEVEL_ERROR should not be used in release code but only for debug
+purpose.
+When log-level=1 (error message) is used with log-type=1 (glib), a call to
+the the logging function is always fatal, and results in a call to abort().
+This is not acceptable in release.