aboutsummaryrefslogtreecommitdiff
path: root/nuttx/drivers/syslog/README.txt
diff options
context:
space:
mode:
Diffstat (limited to 'nuttx/drivers/syslog/README.txt')
-rw-r--r--nuttx/drivers/syslog/README.txt64
1 files changed, 64 insertions, 0 deletions
diff --git a/nuttx/drivers/syslog/README.txt b/nuttx/drivers/syslog/README.txt
new file mode 100644
index 000000000..bfef73ae8
--- /dev/null
+++ b/nuttx/drivers/syslog/README.txt
@@ -0,0 +1,64 @@
+drivers/syslog README File
+==========================
+
+This README file discusses the SYLOG drivers that can be found in the
+drivers/syslog directory. In NuttX, syslog output is equivalent to
+debug output and, therefore, the syslogging interfaces are defined in the
+header file include/debug.h.
+
+By default, all system log output goes to console (/dev/console). But that
+behavior can be changed by the defining CONFIG_SYSLOG in the NuttX
+configuration. In that, case all low-level debug output will go through
+syslog_putc().
+
+One version of syslog_putc() is defined in fs/fs_syslog.c; that version is
+used when CONFIG_SYSLOG_CHAR is defined. That version of syslog_putc()
+just integrates with the file system to re-direct debug output to a
+character device or to a file. A disadvantage of using the generic character
+device for the SYSLOG is that it cannot handle debug output generated from
+interrupt level handles.
+
+If CONFIG_SYSLOG_CHAR is not defined, then other custom SYSLOG drivers
+can be used. These custom SYSLOG drivers can do things like handle
+unusual logging media and since they can avoid the general file system
+interfaces, can be designed to support debug output from interrupt handlers.
+
+Those custom SYSLOG drivers reside in this directory.
+
+ramlog.c
+--------
+ The RAM logging driver is a driver that was intended to support debugging
+ output (syslogging) when the normal serial output is not available. For
+ example, if you are using a telnet or USB serial console, the debug
+ output will get lost.
+
+ The RAM logging driver is similar to a pipe in that it saves the
+ debugging output in a FIFO in RAM. It differs from a pipe in numerous
+ details as needed to support logging.
+
+ This driver is built when CONFIG_RAMLOG is defined in the Nuttx
+ configuration.
+
+ Configuration options:
+
+ CONFIG_RAMLOG - Enables the RAM logging feature
+ CONFIG_RAMLOG_CONSOLE - Use the RAM logging device as a system console.
+ If this feature is enabled (along with CONFIG_DEV_CONSOLE), then all
+ console output will be re-directed to a circular buffer in RAM. This
+ is useful, for example, if the only console is a Telnet console. Then
+ in that case, console output from non-Telnet threads will go to the
+ circular buffer and can be viewed using the NSH 'dmesg' command.
+ CONFIG_RAMLOG_SYSLOG - Use the RAM logging device for the syslogging
+ interface. If this feature is enabled (along with CONFIG_SYSLOG),
+ then all debug output (only) will be re-directed to the circular
+ buffer in RAM. This RAM log can be view from NSH using the 'dmesg'
+ command. NOTE: Unlike the limited, generic character driver SYSLOG
+ device, the RAMLOG *can* be used to generate debug output from interrupt
+ level handlers.
+ CONFIG_RAMLOG_NPOLLWAITERS - The number of threads than can be waiting
+ for this driver on poll(). Default: 4
+
+ If CONFIG_RAMLOG_CONSOLE or CONFIG_RAMLOG_SYSLOG is selected, then the
+ following may also be provided:
+
+ CONFIG_RAMLOG_CONSOLE_BUFSIZE - Size of the console RAM log. Default: 1024