From 8405efef94a1edcd4d58e6053d17d4dc0e1fcd26 Mon Sep 17 00:00:00 2001 From: Garrett D'Amore Date: Mon, 14 Oct 2024 22:59:45 -0700 Subject: log documentation converted to mdbook. --- docs/ref/api/log/nng_log_logger.md | 47 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 docs/ref/api/log/nng_log_logger.md (limited to 'docs/ref/api/log/nng_log_logger.md') diff --git a/docs/ref/api/log/nng_log_logger.md b/docs/ref/api/log/nng_log_logger.md new file mode 100644 index 00000000..26551091 --- /dev/null +++ b/docs/ref/api/log/nng_log_logger.md @@ -0,0 +1,47 @@ +# nng_log_logger + +## NAME + +nng_log_logger --- logging handler + +## SYNOPSIS + +```c +#include + +typedef void (*nng_logger)(nng_log_level level, nng_log_facility facility, + const char *msgid, const char *msg); + +void nng_null_logger(nng_log_level, nng_log_facility, const char *, const char *); +void nng_stderr_logger(nng_log_level, nng_log_facility, const char *, const char *); +void nng_system_logger(nng_log_level, nng_log_facility, const char *, const char *); + +void nng_log_set_logger(nng_logger logger); +``` + +## DESCRIPTION + +An {{i:`nng_logger`}}{{hi:logger}} is a function used as a handler to process logged messages. +This is responsible for the final disposition of the logged messages. + +The {{i:`nng_log_set_logger`}} function is used to set the base logging function to _logger_. +The _logger_ may be a user defined function to process log messages. +Only a single logger may be registered at a time. +If needed, the logger should make copies of either _msgid_ or _msg_, as they will not be valid after the logger returns. + +The {{i:`nng_null_logger`}} function is an implementation of `nng_logger` that simply discards the content. +This is the default logger, so logging is disabled by default. + +The {{i:`nng_stderr_logger`}} function is an implementation that logs messages to the standard error stream. +It will attempt to colorize messages by the severity, if the standard error is a terminal device. +This can be supressed by setting either the `NO_COLOR` or `NNG_LOG_NO_COLOR` environment variables. + +The {{i:`nng_system_logger`}} attempts to use an appropriate system facility to log messages. +For POSIX systems, this means using `syslog` to process the messages. +For other systems the defauilt behavior may be the same as `nng_stderr_logger`. + +## SEE ALSO + +[nng_log](./nng_log.md), +[nng_log_facility](./nng_log_facility.md), +[nng_log_level](./nng_log_level.md) -- cgit v1.2.3-70-g09d2