DPDK patches and discussions
 help / color / mirror / Atom feed
From: Stephen Hemminger <stephen@networkplumber.org>
To: dev@dpdk.org
Cc: Stephen Hemminger <stephen@networkplumber.org>
Subject: [PATCH v19 13/15] log: add optional support of syslog
Date: Fri, 29 Mar 2024 20:00:56 -0700	[thread overview]
Message-ID: <20240330030429.4630-14-stephen@networkplumber.org> (raw)
In-Reply-To: <20240330030429.4630-1-stephen@networkplumber.org>

Log to syslog only if option is specified. And if syslog is used
then normally only log to syslog, don't duplicate output.
Also enables syslog support on FreeBSD.

Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
---
 app/test/test_eal_flags.c                     |  5 +-
 doc/guides/linux_gsg/linux_eal_parameters.rst | 27 ------
 doc/guides/prog_guide/log_lib.rst             | 17 ++++
 lib/eal/common/eal_common_options.c           |  5 +-
 lib/log/log.c                                 | 25 +++---
 lib/log/log_private.h                         |  4 +
 lib/log/log_stubs.c                           | 28 ++++++
 lib/log/log_syslog.c                          | 89 +++++++++++++++++++
 lib/log/meson.build                           |  6 ++
 9 files changed, 165 insertions(+), 41 deletions(-)
 create mode 100644 lib/log/log_stubs.c
 create mode 100644 lib/log/log_syslog.c

diff --git a/app/test/test_eal_flags.c b/app/test/test_eal_flags.c
index e54f6e8b7f..08f4866461 100644
--- a/app/test/test_eal_flags.c
+++ b/app/test/test_eal_flags.c
@@ -987,9 +987,10 @@ test_misc_flags(void)
 	/* With empty --syslog */
 	const char *argv3[] = {prgname, prefix, mp_flag, "--syslog"};
 	/* With valid --syslog */
-	const char *argv4[] = {prgname, prefix, mp_flag, "--syslog", "always"};
+	const char *argv4[] = {prgname, prefix, mp_flag, "--syslog=both"};
 	/* With invalid --syslog */
-	const char *argv5[] = {prgname, prefix, mp_flag, "--syslog", "error"};
+	const char *argv5[] = {prgname, prefix, mp_flag, "--syslog=invalid"};
+
 	/* With no-sh-conf, also use no-huge to ensure this test runs on BSD */
 	const char *argv6[] = {prgname, "-m", DEFAULT_MEM_SIZE,
 			no_shconf, nosh_prefix, no_huge};
diff --git a/doc/guides/linux_gsg/linux_eal_parameters.rst b/doc/guides/linux_gsg/linux_eal_parameters.rst
index ea8f381391..d86f94d8a8 100644
--- a/doc/guides/linux_gsg/linux_eal_parameters.rst
+++ b/doc/guides/linux_gsg/linux_eal_parameters.rst
@@ -108,30 +108,3 @@ Memory-related options
 *   ``--match-allocations``
 
     Free hugepages back to system exactly as they were originally allocated.
-
-Other options
-~~~~~~~~~~~~~
-
-*   ``--syslog <syslog facility>``
-
-    Set syslog facility. Valid syslog facilities are::
-
-        auth
-        cron
-        daemon
-        ftp
-        kern
-        lpr
-        mail
-        news
-        syslog
-        user
-        uucp
-        local0
-        local1
-        local2
-        local3
-        local4
-        local5
-        local6
-        local7
diff --git a/doc/guides/prog_guide/log_lib.rst b/doc/guides/prog_guide/log_lib.rst
index 504eefe1d2..abaedc7212 100644
--- a/doc/guides/prog_guide/log_lib.rst
+++ b/doc/guides/prog_guide/log_lib.rst
@@ -83,6 +83,23 @@ To prefix all console messages with ISO format time the syntax is::
 
 	/path/to/app --log-timestamp=iso
 
+Log output
+~~~~~~~~~~
+
+If desired, messages can be redirected to syslog (on Linux and FreeBSD) with the ``--syslog``
+option. There are three possible settings for this option:
+
+*always*
+    Redirect all log output to syslog.
+
+*auto*
+    Use console if it is a terminal, and use syslog if is not.
+
+*both*
+    Print to both console and syslog.
+
+If ``--syslog`` option is not specified, then only console (stderr) will be used.
+
 
 
 Using Logging APIs to Generate Log Messages
diff --git a/lib/eal/common/eal_common_options.c b/lib/eal/common/eal_common_options.c
index 5173835c2c..9ca7db04aa 100644
--- a/lib/eal/common/eal_common_options.c
+++ b/lib/eal/common/eal_common_options.c
@@ -91,7 +91,7 @@ eal_long_options[] = {
 	{OPT_PROC_TYPE,         1, NULL, OPT_PROC_TYPE_NUM        },
 	{OPT_SOCKET_MEM,        1, NULL, OPT_SOCKET_MEM_NUM       },
 	{OPT_SOCKET_LIMIT,      1, NULL, OPT_SOCKET_LIMIT_NUM     },
-	{OPT_SYSLOG,            1, NULL, OPT_SYSLOG_NUM           },
+	{OPT_SYSLOG,            2, NULL, OPT_SYSLOG_NUM           },
 	{OPT_VDEV,              1, NULL, OPT_VDEV_NUM             },
 	{OPT_VFIO_INTR,         1, NULL, OPT_VFIO_INTR_NUM        },
 	{OPT_VFIO_VF_TOKEN,     1, NULL, OPT_VFIO_VF_TOKEN_NUM    },
@@ -2221,6 +2221,9 @@ eal_common_usage(void)
 	       "                      (can be used multiple times)\n"
 	       "  --"OPT_VMWARE_TSC_MAP"    Use VMware TSC map instead of native RDTSC\n"
 	       "  --"OPT_PROC_TYPE"         Type of this process (primary|secondary|auto)\n"
+#ifndef RTE_EXEC_ENV_WINDOWS
+	       "  --"OPT_SYSLOG"[=<when>]   Enable use of syslog\n"
+#endif
 	       "  --"OPT_LOG_LEVEL"=<level> Set global log level\n"
 	       "  --"OPT_LOG_LEVEL"=<type-match>:<level>\n"
 	       "                      Set specific log level\n"
diff --git a/lib/log/log.c b/lib/log/log.c
index 3c15f2a560..ddb8400d73 100644
--- a/lib/log/log.c
+++ b/lib/log/log.c
@@ -12,18 +12,19 @@
 #include <regex.h>
 #include <fnmatch.h>
 #include <sys/queue.h>
+#include <unistd.h>
 
 #include <rte_common.h>
 #include <rte_log.h>
 #include <rte_per_lcore.h>
 
-#include "log_internal.h"
-#include "log_private.h"
-
 #ifdef RTE_EXEC_ENV_WINDOWS
 #include <rte_os_shim.h>
 #endif
 
+#include "log_internal.h"
+#include "log_private.h"
+
 struct rte_log_dynamic_type {
 	const char *name;
 	uint32_t loglevel;
@@ -496,13 +497,6 @@ rte_log(uint32_t level, uint32_t logtype, const char *format, ...)
 	return ret;
 }
 
-/* Placeholder */
-int
-eal_log_syslog(const char *mode __rte_unused)
-{
-	return -1;
-}
-
 /* default log print function */
 int
 log_print(FILE *f, uint32_t level __rte_unused,  const char *format, va_list ap)
@@ -514,8 +508,17 @@ log_print(FILE *f, uint32_t level __rte_unused,  const char *format, va_list ap)
  * Called by rte_eal_init
  */
 void
-eal_log_init(const char *id __rte_unused)
+eal_log_init(const char *id)
 {
+#ifdef RTE_EXEC_ENV_WINDOWS
+	RTE_SET_USED(id);
+#else
+	bool is_terminal = isatty(STDERR_FILENO);
+
+	if (log_syslog_enabled(is_terminal))
+		log_syslog_open(id, is_terminal);
+	else
+#endif
 	if (log_timestamp_enabled())
 		rte_logs.print_func = log_print_with_timestamp;
 	else
diff --git a/lib/log/log_private.h b/lib/log/log_private.h
index 070baee8dd..0e7d10ffca 100644
--- a/lib/log/log_private.h
+++ b/lib/log/log_private.h
@@ -15,4 +15,8 @@ ssize_t log_timestamp(char *tsbuf, size_t tsbuflen);
 __rte_format_printf(3, 0)
 int log_print_with_timestamp(FILE *f, uint32_t level, const char *format, va_list ap);
 
+bool log_syslog_enabled(bool is_tty);
+void log_syslog_open(const char *id, bool is_terminal);
+
+
 #endif /* LOG_PRIVATE_H */
diff --git a/lib/log/log_stubs.c b/lib/log/log_stubs.c
new file mode 100644
index 0000000000..cb34217af8
--- /dev/null
+++ b/lib/log/log_stubs.c
@@ -0,0 +1,28 @@
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(c) 2010-2014 Intel Corporation
+ */
+
+#include <stdio.h>
+#include <stdint.h>
+#include <stdarg.h>
+#include <stdlib.h>
+#include <string.h>
+#include <errno.h>
+#include <regex.h>
+#include <fnmatch.h>
+#include <sys/queue.h>
+#include <unistd.h>
+#include <rte_os_shim.h>
+
+#include <rte_log.h>
+#include <rte_per_lcore.h>
+
+#include "log_internal.h"
+#include "log_private.h"
+
+/* Stubs for Windows */
+int
+eal_log_syslog(const char *str __rte_unused)
+{
+	return -1;
+}
diff --git a/lib/log/log_syslog.c b/lib/log/log_syslog.c
new file mode 100644
index 0000000000..33eff3a1cf
--- /dev/null
+++ b/lib/log/log_syslog.c
@@ -0,0 +1,89 @@
+/* SPDX-License-Identifier: BSD-3-Clause */
+#include <stdbool.h>
+#include <stdio.h>
+#include <string.h>
+#include <syslog.h>
+
+#include <rte_common.h>
+#include <rte_log.h>
+
+#include "log_internal.h"
+#include "log_private.h"
+
+static enum {
+	LOG_SYSLOG_NONE = 0,	/* do not use syslog */
+	LOG_SYSLOG_AUTO,	/* use syslog only if not a terminal */
+	LOG_SYSLOG_ALWAYS,	/* always use syslog */
+	LOG_SYSLOG_BOTH,	/* log to both syslog and stderr */
+} log_syslog_opt;
+
+int
+eal_log_syslog(const char *str)
+{
+	if (str == NULL || strcmp(str, "auto") == 0)
+		log_syslog_opt = LOG_SYSLOG_AUTO;
+	else if (strcmp(str, "both") == 0)
+		log_syslog_opt = LOG_SYSLOG_BOTH;
+	else if (strcmp(str, "always") == 0)
+		log_syslog_opt = LOG_SYSLOG_ALWAYS;
+	else
+		return -1;
+	return 0;
+}
+
+bool
+log_syslog_enabled(bool is_terminal)
+{
+	switch (log_syslog_opt) {
+	default:
+		return false;
+
+	case LOG_SYSLOG_ALWAYS:
+	case LOG_SYSLOG_BOTH:
+		return true;
+
+	case LOG_SYSLOG_AUTO:
+		return !is_terminal;
+	}
+}
+
+/*
+ * wrapper for log stream to put messages into syslog
+ * useful for cases like:
+ *   rte_hex_dump(rte_get_log_stream(), ...)
+ */
+static ssize_t
+syslog_log_write(__rte_unused void *c, const char *buf, size_t size)
+{
+	/* Syslog error levels are from 0 to 7, so subtract 1 to convert */
+	syslog(rte_log_cur_msg_loglevel() - 1, "%.*s", (int)size, buf);
+	return size;
+}
+
+static int
+syslog_log_close(__rte_unused void *c)
+{
+	closelog();
+	return 0;
+}
+
+static cookie_io_functions_t syslog_log_func = {
+	.write = syslog_log_write,
+	.close = syslog_log_close,
+};
+
+void
+log_syslog_open(const char *id, bool is_terminal)
+{
+	int flags = LOG_NDELAY | LOG_PID;
+
+	if (log_syslog_opt == LOG_SYSLOG_BOTH)
+		flags |= LOG_PERROR;
+
+	openlog(id, flags, is_terminal ? LOG_USER : LOG_DAEMON);
+
+	/* redirect other log messages to syslog as well */
+	FILE *log_stream = fopencookie(NULL, "w", syslog_log_func);
+	if (log_stream != NULL)
+		rte_openlog_stream(log_stream);
+}
diff --git a/lib/log/meson.build b/lib/log/meson.build
index 04235f6ee5..37507299e7 100644
--- a/lib/log/meson.build
+++ b/lib/log/meson.build
@@ -7,4 +7,10 @@ sources = files(
         'log_timestamp.c',
 )
 
+if is_windows
+	sources += files('log_stubs.c')
+else
+	sources += files('log_syslog.c')
+endif
+
 headers = files('rte_log.h')
-- 
2.43.0


  parent reply	other threads:[~2024-03-30  3:06 UTC|newest]

Thread overview: 364+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-08-14 17:34 [dpdk-dev] [PATCH] eal: add option to put timestamp on console output Stephen Hemminger
2020-08-14 18:39 ` Dmitry Kozlyuk
2020-08-14 18:45   ` Stephen Hemminger
2020-08-14 19:09     ` Dmitry Kozlyuk
2020-08-14 19:20       ` Stephen Hemminger
2020-08-17 10:37         ` Bruce Richardson
2020-08-17 15:11           ` Stephen Hemminger
2020-10-19 14:11             ` Thomas Monjalon
2020-10-19 15:25               ` Stephen Hemminger
2024-03-21 17:22                 ` Thomas Monjalon
2023-03-06 18:18 ` [PATCH v2 0/2] Add option to timestamp console log Stephen Hemminger
2023-03-06 18:18   ` [PATCH v2 1/2] eal: unify logging code for FreeBsd and Linux Stephen Hemminger
2023-03-06 18:18   ` [PATCH v2 2/2] eal: add option to put timestamp on console output Stephen Hemminger
2023-03-07  9:09   ` [PATCH v2 0/2] Add option to timestamp console log Bruce Richardson
2023-03-06 19:28 ` [PATCH v3 " Stephen Hemminger
2023-03-06 19:28   ` [PATCH v3 1/2] eal: unify logging code for FreeBsd and Linux Stephen Hemminger
2023-03-06 19:28   ` [PATCH v3 2/2] eal: add option to put timestamp on console output Stephen Hemminger
2023-03-07  9:35     ` fengchengwen
2023-03-07 16:05       ` Stephen Hemminger
2023-03-07 16:06       ` Stephen Hemminger
2023-03-08  0:36         ` fengchengwen
2023-03-08  2:03           ` Stephen Hemminger
2023-03-09  0:55             ` fengchengwen
2023-03-08  2:51           ` Stephen Hemminger
2023-03-07  7:33   ` [PATCH v3 0/2] Add option to timestamp console log Morten Brørup
2023-03-07  9:12     ` Bruce Richardson
2023-03-07 16:04     ` Stephen Hemminger
2023-06-26 18:42 ` [PATCH v4 0/5] Logging related patchs Stephen Hemminger
2023-06-26 18:42   ` [PATCH v4 1/5] eal: unify logging code for FreeBsd and Linux Stephen Hemminger
2023-06-26 18:42   ` [PATCH v4 2/5] eal: turn off getopt_long error message during eal_log_level Stephen Hemminger
2023-06-26 18:42   ` [PATCH v4 3/5] eal: skip stdio on console logging Stephen Hemminger
2023-06-26 18:42   ` [PATCH v4 4/5] eal: move logging initialization earlier Stephen Hemminger
2023-06-26 18:42   ` [PATCH v4 5/5] eal: add option to put timestamp on console output Stephen Hemminger
2023-06-27  7:40   ` [PATCH v4 0/5] Logging related patchs Morten Brørup
2023-06-27 14:49     ` Stephen Hemminger
2023-06-27 15:04       ` Morten Brørup
2023-06-27 15:02     ` Bruce Richardson
2023-06-28 17:58 ` [PATCH v5 0/6] Logging related patches Stephen Hemminger
2023-06-28 17:58   ` [PATCH v5 1/6] eal: unify logging code for FreeBsd and Linux Stephen Hemminger
2023-06-28 17:58   ` [PATCH v5 2/6] eal: turn off getopt_long error message during eal_log_level Stephen Hemminger
2023-06-28 17:58   ` [PATCH v5 3/6] eal: fix handling of syslog facility Stephen Hemminger
2023-06-28 17:58   ` [PATCH v5 4/6] eal: skip stdio on console logging Stephen Hemminger
2023-06-28 17:58   ` [PATCH v5 5/6] eal: allow user to set default log stream before init Stephen Hemminger
2023-06-28 17:58   ` [PATCH v5 6/6] eal: add option to put timestamp on console output Stephen Hemminger
2023-06-29 15:58 ` [PATCH v6 0/6] Logging related patches Stephen Hemminger
2023-06-29 15:58   ` [PATCH v6 1/6] eal: unify logging code Stephen Hemminger
2023-06-29 15:58   ` [PATCH v6 2/6] eal: turn off getopt_long error message during eal_log_level Stephen Hemminger
2023-06-29 15:58   ` [PATCH v6 3/6] eal: fix help message for syslog option Stephen Hemminger
2023-06-29 15:58   ` [PATCH v6 4/6] eal: skip stdio on console logging Stephen Hemminger
2023-06-29 15:58   ` [PATCH v6 5/6] eal: allow user to set default log stream before init Stephen Hemminger
2023-06-29 15:58   ` [PATCH v6 6/6] eal: add option to put timestamp on console output Stephen Hemminger
2023-07-05 22:48 ` [PATCH v7 0/5] Logging timetamp and related patches Stephen Hemminger
2023-07-05 22:48   ` [PATCH v7 1/5] windows: make getopt functions have const properties Stephen Hemminger
2023-07-10 21:10     ` Tyler Retzlaff
2023-07-05 22:48   ` [PATCH v7 2/5] eal: fix help message for syslog option Stephen Hemminger
2023-07-05 22:48   ` [PATCH v7 3/5] eal: unify logging code Stephen Hemminger
2023-07-05 22:48   ` [PATCH v7 4/5] eal: allow user to set default log stream before init Stephen Hemminger
2023-07-05 22:48   ` [PATCH v7 5/5] eal: add option to put timestamp on console output Stephen Hemminger
2024-03-18 18:30 ` [PATCH v8 0/5] Logging timestamp and related patches Stephen Hemminger
2024-03-18 18:30   ` [PATCH v8 1/5] log: unify logging code Stephen Hemminger
2024-03-18 18:30   ` [PATCH v8 2/5] eal: make eal_log_level_parse common Stephen Hemminger
2024-03-18 18:30   ` [PATCH v8 3/5] eal: allow user to set default log stream before init Stephen Hemminger
2024-03-18 18:30   ` [PATCH v8 4/5] eal: add option to put timestamp on console output Stephen Hemminger
2024-03-18 18:30   ` [PATCH v8 5/5] eal: initialize logging before plugins Stephen Hemminger
2024-03-18 22:02 ` [PATCH v9 0/5] Logging unification and timestamp Stephen Hemminger
2024-03-18 22:02   ` [PATCH v9 1/5] log: unify logging code Stephen Hemminger
2024-03-18 22:02   ` [PATCH v9 2/5] eal: make eal_log_level_parse common Stephen Hemminger
2024-03-18 22:02   ` [PATCH v9 3/5] eal: initialize logging before plugins Stephen Hemminger
2024-03-18 22:03   ` [PATCH v9 4/5] eal: allow user to set default log stream before init Stephen Hemminger
2024-03-18 22:03   ` [PATCH v9 5/5] eal: add option to put timestamp on console output Stephen Hemminger
2024-03-19  7:37     ` Morten Brørup
2024-03-19 15:51       ` Stephen Hemminger
2024-03-19 16:13         ` Morten Brørup
2024-03-20  3:33           ` Stephen Hemminger
2024-03-20  8:34             ` Morten Brørup
2024-03-20 14:38               ` Stephen Hemminger
2024-03-20 17:38                 ` Morten Brørup
2024-03-21 16:00 ` [PATCH v10 00/10] Logging enhancements Stephen Hemminger
2024-03-21 16:00   ` [PATCH v10 01/10] windows: make getopt functions have const properties Stephen Hemminger
2024-03-21 16:00   ` [PATCH v10 02/10] log: unify logging code Stephen Hemminger
2024-03-21 16:00   ` [PATCH v10 03/10] eal: make eal_log_level_parse common Stephen Hemminger
2024-03-21 17:00     ` Tyler Retzlaff
2024-03-21 16:00   ` [PATCH v10 04/10] eal: initialize log earlier in startup Stephen Hemminger
2024-03-21 16:00   ` [PATCH v10 05/10] eal: do not duplicate rte_init_alert() messages Stephen Hemminger
2024-03-21 16:00   ` [PATCH v10 06/10] eal: change rte_exit() output to match rte_log() Stephen Hemminger
2024-03-21 17:04     ` Tyler Retzlaff
2024-03-21 16:00   ` [PATCH v10 07/10] eal: allow user to set default log stream before init Stephen Hemminger
2024-03-21 17:07     ` Tyler Retzlaff
2024-03-21 16:00   ` [PATCH v10 08/10] eal: add option to put timestamp on console output Stephen Hemminger
2024-03-21 17:11     ` Tyler Retzlaff
2024-03-21 17:16       ` Stephen Hemminger
2024-03-21 17:49         ` Tyler Retzlaff
2024-03-22  0:30           ` Stephen Hemminger
2024-03-21 16:00   ` [PATCH v10 09/10] log: colorize log output Stephen Hemminger
2024-03-21 16:00   ` [PATCH v10 10/10] doc: add documentation of logging options Stephen Hemminger
2024-03-24  2:33 ` [PATCH v11 0/9] Logging unification and enhancements Stephen Hemminger
2024-03-24  2:33   ` [PATCH v11 1/9] windows: make getopt functions have const properties Stephen Hemminger
2024-03-24  2:33   ` [PATCH v11 2/9] eal: make eal_log_level_parse common Stephen Hemminger
2024-03-24  2:33   ` [PATCH v11 3/9] eal: do not duplicate rte_init_alert() messages Stephen Hemminger
2024-03-24  2:33   ` [PATCH v11 4/9] eal: change rte_exit() output to match rte_log() Stephen Hemminger
2024-03-24  2:33   ` [PATCH v11 5/9] log: drop syslog support, and make code common Stephen Hemminger
2024-03-24  2:33   ` [PATCH v11 6/9] log: add hook for printing log messages Stephen Hemminger
2024-03-24  2:33   ` [PATCH v11 7/9] log: add timestamp option Stephen Hemminger
2024-03-24  2:33   ` [PATCH v11 8/9] log: add support for systemd journal Stephen Hemminger
2024-03-24  2:33   ` [PATCH v11 9/9] log: colorize log output Stephen Hemminger
2024-03-24 11:18   ` [PATCH v11 0/9] Logging unification and enhancements Mattias Rönnblom
2024-03-25 20:46 ` [PATCH v12 00/14] " Stephen Hemminger
2024-03-25 20:46   ` [PATCH v12 01/14] windows: make getopt functions have const properties Stephen Hemminger
2024-03-25 20:46   ` [PATCH v12 02/14] windows: add os shim for localtime_r Stephen Hemminger
2024-03-25 20:47   ` [PATCH v12 03/14] eal: make eal_log_level_parse common Stephen Hemminger
2024-03-25 20:47   ` [PATCH v12 04/14] eal: do not duplicate rte_init_alert() messages Stephen Hemminger
2024-03-25 20:47   ` [PATCH v12 05/14] eal: change rte_exit() output to match rte_log() Stephen Hemminger
2024-03-27  7:17     ` Tyler Retzlaff
2024-03-25 20:47   ` [PATCH v12 06/14] log: move handling of syslog facility out of eal Stephen Hemminger
2024-03-25 20:47   ` [PATCH v12 07/14] eal: initialize log before everything else Stephen Hemminger
2024-03-25 20:47   ` [PATCH v12 08/14] log: drop syslog support, and make code common Stephen Hemminger
2024-03-25 20:47   ` [PATCH v12 09/14] log: add hook for printing log messages Stephen Hemminger
2024-03-25 20:47   ` [PATCH v12 10/14] log: add timestamp option Stephen Hemminger
2024-03-25 20:47   ` [PATCH v12 11/14] log: add optional support of syslog Stephen Hemminger
2024-03-25 20:47   ` [PATCH v12 12/14] log: add support for systemd journal Stephen Hemminger
2024-03-25 20:47   ` [PATCH v12 13/14] log: colorize log output Stephen Hemminger
2024-03-25 20:47   ` [PATCH v12 14/14] maintainers: add for log library Stephen Hemminger
2024-03-26  1:56 ` [PATCH v13 00/11] Logging unification and improvements Stephen Hemminger
2024-03-26  1:56   ` [PATCH v13 01/11] windows: make getopt functions have const properties Stephen Hemminger
2024-03-26  9:35     ` Morten Brørup
2024-03-26  1:56   ` [PATCH v13 02/11] windows: add os shim for localtime_r Stephen Hemminger
2024-03-26  1:56   ` [PATCH v13 03/11] eal: make eal_log_level_parse common Stephen Hemminger
2024-03-26  1:56   ` [PATCH v13 04/11] eal: do not duplicate rte_init_alert() messages Stephen Hemminger
2024-03-26  1:57   ` [PATCH v13 05/11] eal: change rte_exit() output to match rte_log() Stephen Hemminger
2024-03-26  1:57   ` [PATCH v13 06/11] log: move handling of syslog facility out of eal Stephen Hemminger
2024-03-26  1:57   ` [PATCH v13 07/11] eal: initialize log before everything else Stephen Hemminger
2024-03-26  1:57   ` [PATCH v13 08/11] log: drop syslog support, and make code common Stephen Hemminger
2024-03-26  1:57   ` [PATCH v13 09/11] log: add hook for printing log messages Stephen Hemminger
2024-03-26  1:57   ` [PATCH v13 10/11] log: add timestamp option Stephen Hemminger
2024-03-26  1:57   ` [PATCH v13 11/11] log: add optional support of syslog Stephen Hemminger
2024-03-26 17:34 ` [PATCH v14 00/15] Logging unification and improvments Stephen Hemminger
2024-03-26 17:34   ` [PATCH v14 01/15] maintainers: add for log library Stephen Hemminger
2024-03-26 17:34   ` [PATCH v14 02/15] windows: make getopt functions have const properties Stephen Hemminger
2024-03-26 17:34   ` [PATCH v14 03/15] windows: add os shim for localtime_r Stephen Hemminger
2024-03-26 17:34   ` [PATCH v14 04/15] windows: common wrapper for vasprintf and asprintf Stephen Hemminger
2024-03-26 17:34   ` [PATCH v14 05/15] eal: make eal_log_level_parse common Stephen Hemminger
2024-03-26 17:34   ` [PATCH v14 06/15] eal: do not duplicate rte_init_alert() messages Stephen Hemminger
2024-03-26 17:34   ` [PATCH v14 07/15] eal: change rte_exit() output to match rte_log() Stephen Hemminger
2024-03-26 17:34   ` [PATCH v14 08/15] log: move handling of syslog facility out of eal Stephen Hemminger
2024-03-26 17:34   ` [PATCH v14 09/15] eal: initialize log before everything else Stephen Hemminger
2024-03-26 17:34   ` [PATCH v14 10/15] log: drop syslog support, and make code common Stephen Hemminger
2024-03-26 17:34   ` [PATCH v14 11/15] log: add hook for printing log messages Stephen Hemminger
2024-03-26 17:34   ` [PATCH v14 12/15] log: add timestamp option Stephen Hemminger
2024-03-26 17:34   ` [PATCH v14 13/15] log: add optional support of syslog Stephen Hemminger
2024-03-26 17:34   ` [PATCH v14 14/15] log: add support for systemd journal Stephen Hemminger
2024-03-26 17:34   ` [PATCH v14 15/15] log: colorize log output Stephen Hemminger
2024-03-27  0:26 ` [PATCH v15 00/15] Logging unification and improvements Stephen Hemminger
2024-03-27  0:27   ` [PATCH v15 01/15] maintainers: add for log library Stephen Hemminger
2024-03-27  0:27   ` [PATCH v15 02/15] windows: make getopt functions have const properties Stephen Hemminger
2024-03-27  0:27   ` [PATCH v15 03/15] windows: add os shim for localtime_r Stephen Hemminger
2024-03-27  0:27   ` [PATCH v15 04/15] windows: common wrapper for vasprintf and asprintf Stephen Hemminger
2024-03-27  0:27   ` [PATCH v15 05/15] eal: make eal_log_level_parse common Stephen Hemminger
2024-03-27  0:27   ` [PATCH v15 06/15] eal: do not duplicate rte_init_alert() messages Stephen Hemminger
2024-03-27  0:27   ` [PATCH v15 07/15] eal: change rte_exit() output to match rte_log() Stephen Hemminger
2024-03-27  0:27   ` [PATCH v15 08/15] log: move handling of syslog facility out of eal Stephen Hemminger
2024-03-27  0:27   ` [PATCH v15 09/15] eal: initialize log before everything else Stephen Hemminger
2024-03-27  0:27   ` [PATCH v15 10/15] log: drop syslog support, and make code common Stephen Hemminger
2024-03-27  0:27   ` [PATCH v15 11/15] log: add hook for printing log messages Stephen Hemminger
2024-03-27  0:27   ` [PATCH v15 12/15] log: add timestamp option Stephen Hemminger
2024-03-27  0:27   ` [PATCH v15 13/15] log: add optional support of syslog Stephen Hemminger
2024-03-27  0:27   ` [PATCH v15 14/15] log: add support for systemd journal Stephen Hemminger
2024-03-27  0:27   ` [PATCH v15 15/15] log: colorize log output Stephen Hemminger
2024-03-27 16:45 ` [PATCH v16 00/15] Logging unification and improvements Stephen Hemminger
2024-03-27 16:45   ` [PATCH v16 01/15] maintainers: add for log library Stephen Hemminger
2024-03-27 16:52     ` Tyler Retzlaff
2024-03-27 16:45   ` [PATCH v16 02/15] windows: make getopt functions have const properties Stephen Hemminger
2024-03-27 16:45   ` [PATCH v16 03/15] windows: add os shim for localtime_r Stephen Hemminger
2024-03-27 16:56     ` Tyler Retzlaff
2024-03-27 17:30       ` Stephen Hemminger
2024-03-27 16:45   ` [PATCH v16 04/15] windows: common wrapper for vasprintf and asprintf Stephen Hemminger
2024-03-27 17:08     ` Tyler Retzlaff
2024-03-27 16:45   ` [PATCH v16 05/15] eal: make eal_log_level_parse common Stephen Hemminger
2024-03-27 17:11     ` Tyler Retzlaff
2024-03-27 16:45   ` [PATCH v16 06/15] eal: do not duplicate rte_init_alert() messages Stephen Hemminger
2024-03-27 17:11     ` Tyler Retzlaff
2024-03-27 16:45   ` [PATCH v16 07/15] eal: change rte_exit() output to match rte_log() Stephen Hemminger
2024-03-27 17:12     ` Tyler Retzlaff
2024-03-27 16:45   ` [PATCH v16 08/15] log: move handling of syslog facility out of eal Stephen Hemminger
2024-03-27 16:45   ` [PATCH v16 09/15] eal: initialize log before everything else Stephen Hemminger
2024-03-27 17:14     ` Tyler Retzlaff
2024-03-27 16:45   ` [PATCH v16 10/15] log: drop syslog support, and make code common Stephen Hemminger
2024-03-27 16:45   ` [PATCH v16 11/15] log: add hook for printing log messages Stephen Hemminger
2024-03-27 16:45   ` [PATCH v16 12/15] log: add timestamp option Stephen Hemminger
2024-03-27 16:45   ` [PATCH v16 13/15] log: add optional support of syslog Stephen Hemminger
2024-03-27 16:45   ` [PATCH v16 14/15] log: add support for systemd journal Stephen Hemminger
2024-03-27 16:45   ` [PATCH v16 15/15] log: colorize log output Stephen Hemminger
2024-03-27 23:28 ` [PATCH v17 00/15] Logging unification and improvements Stephen Hemminger
2024-03-27 23:28   ` [PATCH v17 01/15] maintainers: add for log library Stephen Hemminger
2024-03-27 23:28   ` [PATCH v17 02/15] windows: make getopt functions have const properties Stephen Hemminger
2024-03-27 23:28   ` [PATCH v17 03/15] windows: add os shim for localtime_r Stephen Hemminger
2024-03-27 23:28   ` [PATCH v17 04/15] windows: common wrapper for vasprintf and asprintf Stephen Hemminger
2024-03-27 23:28   ` [PATCH v17 05/15] eal: make eal_log_level_parse common Stephen Hemminger
2024-03-27 23:28   ` [PATCH v17 06/15] eal: do not duplicate rte_init_alert() messages Stephen Hemminger
2024-03-27 23:28   ` [PATCH v17 07/15] eal: change rte_exit() output to match rte_log() Stephen Hemminger
2024-03-27 23:28   ` [PATCH v17 08/15] log: move handling of syslog facility out of eal Stephen Hemminger
2024-03-27 23:28   ` [PATCH v17 09/15] eal: initialize log before everything else Stephen Hemminger
2024-03-27 23:28   ` [PATCH v17 10/15] log: drop syslog support, and make code common Stephen Hemminger
2024-03-27 23:28   ` [PATCH v17 11/15] log: add hook for printing log messages Stephen Hemminger
2024-03-27 23:28   ` [PATCH v17 12/15] log: add timestamp option Stephen Hemminger
2024-03-27 23:28   ` [PATCH v17 13/15] log: add optional support of syslog Stephen Hemminger
2024-03-27 23:28   ` [PATCH v17 14/15] log: add support for systemd journal Stephen Hemminger
2024-03-27 23:28   ` [PATCH v17 15/15] log: colorize log output Stephen Hemminger
2024-03-28 23:49 ` [PATCH v18 00/15] Logging unification and improvements Stephen Hemminger
2024-03-28 23:49   ` [PATCH v18 01/15] maintainers: add for log library Stephen Hemminger
2024-03-28 23:49   ` [PATCH v18 02/15] windows: make getopt functions have const properties Stephen Hemminger
2024-03-28 23:49   ` [PATCH v18 03/15] windows: add os shim for localtime_r Stephen Hemminger
2024-03-28 23:49   ` [PATCH v18 04/15] windows: common wrapper for vasprintf and asprintf Stephen Hemminger
2024-03-28 23:49   ` [PATCH v18 05/15] eal: make eal_log_level_parse common Stephen Hemminger
2024-03-28 23:49   ` [PATCH v18 06/15] eal: do not duplicate rte_init_alert() messages Stephen Hemminger
2024-03-28 23:49   ` [PATCH v18 07/15] eal: change rte_exit() output to match rte_log() Stephen Hemminger
2024-03-28 23:49   ` [PATCH v18 08/15] log: move handling of syslog facility out of eal Stephen Hemminger
2024-03-28 23:49   ` [PATCH v18 09/15] eal: initialize log before everything else Stephen Hemminger
2024-03-28 23:49   ` [PATCH v18 10/15] log: drop syslog support, and make code common Stephen Hemminger
2024-03-28 23:49   ` [PATCH v18 11/15] log: add hook for printing log messages Stephen Hemminger
2024-03-28 23:49   ` [PATCH v18 12/15] log: add timestamp option Stephen Hemminger
2024-03-28 23:49   ` [PATCH v18 13/15] log: add optional support of syslog Stephen Hemminger
2024-03-28 23:49   ` [PATCH v18 14/15] log: add support for systemd journal Stephen Hemminger
2024-03-28 23:49   ` [PATCH v18 15/15] log: colorize log output Stephen Hemminger
2024-03-30  3:00 ` [PATCH v19 00/15] Logging unification and improvements Stephen Hemminger
2024-03-30  3:00   ` [PATCH v19 01/15] maintainers: add for log library Stephen Hemminger
2024-03-30  3:00   ` [PATCH v19 02/15] windows: make getopt functions have const properties Stephen Hemminger
2024-03-30  3:00   ` [PATCH v19 03/15] windows: add os shim for localtime_r Stephen Hemminger
2024-03-30  3:00   ` [PATCH v19 04/15] windows: common wrapper for vasprintf and asprintf Stephen Hemminger
2024-03-30  3:00   ` [PATCH v19 05/15] eal: make eal_log_level_parse common Stephen Hemminger
2024-03-30  3:00   ` [PATCH v19 06/15] eal: do not duplicate rte_init_alert() messages Stephen Hemminger
2024-03-30  3:00   ` [PATCH v19 07/15] eal: change rte_exit() output to match rte_log() Stephen Hemminger
2024-03-30  3:00   ` [PATCH v19 08/15] log: move handling of syslog facility out of eal Stephen Hemminger
2024-03-30  3:00   ` [PATCH v19 09/15] eal: initialize log before everything else Stephen Hemminger
2024-03-30  3:00   ` [PATCH v19 10/15] log: drop syslog support, and make code common Stephen Hemminger
2024-03-30  3:00   ` [PATCH v19 11/15] log: add hook for printing log messages Stephen Hemminger
2024-03-30  3:00   ` [PATCH v19 12/15] log: add timestamp option Stephen Hemminger
2024-03-30  3:00   ` Stephen Hemminger [this message]
2024-03-30  3:00   ` [PATCH v19 14/15] log: add support for systemd journal Stephen Hemminger
2024-03-30  3:00   ` [PATCH v19 15/15] log: colorize log output Stephen Hemminger
2024-03-30 16:42 ` [PATCH v20 00/14] Logging unification and improvements Stephen Hemminger
2024-03-30 16:42   ` [PATCH v20 01/14] maintainers: add for log library Stephen Hemminger
2024-03-30 16:42   ` [PATCH v20 02/14] windows: make getopt functions have const properties Stephen Hemminger
2024-03-30 16:42   ` [PATCH v20 03/14] windows: add os shim for localtime_r Stephen Hemminger
2024-03-30 16:42   ` [PATCH v20 04/14] eal: make eal_log_level_parse common Stephen Hemminger
2024-03-30 16:42   ` [PATCH v20 05/14] eal: do not duplicate rte_init_alert() messages Stephen Hemminger
2024-03-30 16:42   ` [PATCH v20 06/14] eal: change rte_exit() output to match rte_log() Stephen Hemminger
2024-03-30 16:42   ` [PATCH v20 07/14] log: move handling of syslog facility out of eal Stephen Hemminger
2024-03-30 16:42   ` [PATCH v20 08/14] eal: initialize log before everything else Stephen Hemminger
2024-03-30 16:42   ` [PATCH v20 09/14] log: drop syslog support, and make code common Stephen Hemminger
2024-03-30 16:42   ` [PATCH v20 10/14] log: add hook for printing log messages Stephen Hemminger
2024-03-30 16:42   ` [PATCH v20 11/14] log: add timestamp option Stephen Hemminger
2024-03-30 16:42   ` [PATCH v20 12/14] log: add optional support of syslog Stephen Hemminger
2024-03-30 16:42   ` [PATCH v20 13/14] log: add support for systemd journal Stephen Hemminger
2024-04-01 11:18     ` Luca Boccassi
2024-03-30 16:42   ` [PATCH v20 14/14] log: colorize log output Stephen Hemminger
2024-06-04  0:44 ` [PATCH v21 00/14] Log library unification ane enhancements Stephen Hemminger
2024-06-04  0:44   ` [PATCH v21 01/14] maintainers: add for log library Stephen Hemminger
2024-06-06  5:35     ` Morten Brørup
2024-06-04  0:44   ` [PATCH v21 02/14] windows: make getopt functions have const properties Stephen Hemminger
2024-06-04  2:31     ` Stephen Hemminger
2024-06-04  0:44   ` [PATCH v21 03/14] windows: add os shim for localtime_r Stephen Hemminger
2024-06-04  0:44   ` [PATCH v21 04/14] eal: make eal_log_level_parse common Stephen Hemminger
2024-06-04  0:44   ` [PATCH v21 05/14] eal: do not duplicate rte_init_alert() messages Stephen Hemminger
2024-06-04  0:44   ` [PATCH v21 06/14] eal: change rte_exit() output to match rte_log() Stephen Hemminger
2024-06-04  0:44   ` [PATCH v21 07/14] log: move handling of syslog facility out of eal Stephen Hemminger
2024-06-04  0:44   ` [PATCH v21 08/14] eal: initialize log before everything else Stephen Hemminger
2024-06-04  0:44   ` [PATCH v21 09/14] log: drop syslog support, and make code common Stephen Hemminger
2024-06-04  2:30     ` Stephen Hemminger
2024-06-04  0:44   ` [PATCH v21 10/14] log: add hook for printing log messages Stephen Hemminger
2024-06-04  0:44   ` [PATCH v21 11/14] log: add timestamp option Stephen Hemminger
2024-06-04  2:33     ` Stephen Hemminger
2024-06-04  0:45   ` [PATCH v21 12/14] log: add optional support of syslog Stephen Hemminger
2024-06-04  2:34     ` Stephen Hemminger
2024-06-04  0:45   ` [PATCH v21 13/14] log: add support for systemd journal Stephen Hemminger
2024-06-04  2:35     ` Stephen Hemminger
2024-06-04  0:45   ` [PATCH v21 14/14] log: colorize log output Stephen Hemminger
2024-06-04  2:37     ` Stephen Hemminger
2024-09-17 20:35 ` [PATCH v22 00/15] Logging improvements Stephen Hemminger
2024-09-17 20:35   ` [PATCH v22 01/15] maintainers: add for log library Stephen Hemminger
2024-09-17 20:35   ` [PATCH v22 02/15] windows: make getopt functions have const properties Stephen Hemminger
2024-09-17 20:35   ` [PATCH v22 03/15] windows: add os shim for localtime_r Stephen Hemminger
2024-09-17 20:35   ` [PATCH v22 04/15] eal: make eal_log_level_parse common Stephen Hemminger
2024-09-17 20:35   ` [PATCH v22 05/15] eal: do not duplicate rte_init_alert() messages Stephen Hemminger
2024-09-17 20:35   ` [PATCH v22 06/15] eal: change rte_exit() output to match rte_log() Stephen Hemminger
2024-09-17 20:35   ` [PATCH v22 07/15] log: move handling of syslog facility out of eal Stephen Hemminger
2024-09-17 20:35   ` [PATCH v22 08/15] eal: initialize log before everything else Stephen Hemminger
2024-09-17 20:35   ` [PATCH v22 09/15] log: drop syslog support, and make code common Stephen Hemminger
2024-09-17 20:35   ` [PATCH v22 10/15] log: add hook for printing log messages Stephen Hemminger
2024-09-17 20:35   ` [PATCH v22 11/15] log: add timestamp option Stephen Hemminger
2024-09-17 20:35   ` [PATCH v22 12/15] log: add optional support of syslog Stephen Hemminger
2024-09-17 20:35   ` [PATCH v22 13/15] log: add support for systemd journal Stephen Hemminger
2024-09-17 20:35   ` [PATCH v22 14/15] log: colorize log output Stephen Hemminger
2024-09-17 20:35   ` [PATCH v22 15/15] doc: add release note about log library Stephen Hemminger
2024-09-18  4:38     ` Morten Brørup
2024-09-18  4:56 ` [PATCH v23 00/15] Logging improvements Stephen Hemminger
2024-09-18  4:56   ` [PATCH v23 01/15] maintainers: add for log library Stephen Hemminger
2024-09-18  7:01     ` fengchengwen
2024-09-18  4:56   ` [PATCH v23 02/15] windows: make getopt functions have const properties Stephen Hemminger
2024-09-18  7:04     ` fengchengwen
2024-09-18  4:56   ` [PATCH v23 03/15] windows: add os shim for localtime_r Stephen Hemminger
2024-09-18  7:09     ` fengchengwen
2024-09-18 15:25       ` Stephen Hemminger
2024-09-18  4:56   ` [PATCH v23 04/15] eal: make eal_log_level_parse common Stephen Hemminger
2024-09-18  7:18     ` fengchengwen
2024-09-18 15:24       ` Stephen Hemminger
2024-09-18  4:56   ` [PATCH v23 05/15] eal: do not duplicate rte_init_alert() messages Stephen Hemminger
2024-09-18  7:18     ` fengchengwen
2024-09-18  4:56   ` [PATCH v23 06/15] eal: change rte_exit() output to match rte_log() Stephen Hemminger
2024-09-18  7:23     ` fengchengwen
2024-09-18  4:56   ` [PATCH v23 07/15] log: move handling of syslog facility out of eal Stephen Hemminger
2024-09-18  7:25     ` fengchengwen
2024-09-18  4:56   ` [PATCH v23 08/15] eal: initialize log before everything else Stephen Hemminger
2024-09-18  7:30     ` fengchengwen
2024-09-18  4:56   ` [PATCH v23 09/15] log: drop syslog support, and make code common Stephen Hemminger
2024-09-18  4:56   ` [PATCH v23 10/15] log: add hook for printing log messages Stephen Hemminger
2024-09-18  7:32     ` fengchengwen
2024-09-18  4:56   ` [PATCH v23 11/15] log: add timestamp option Stephen Hemminger
2024-09-18  7:37     ` fengchengwen
2024-09-18 15:05       ` Stephen Hemminger
2024-09-19  1:20         ` fengchengwen
2024-09-18  4:56   ` [PATCH v23 12/15] log: add optional support of syslog Stephen Hemminger
2024-09-18  7:41     ` fengchengwen
2024-09-18  4:56   ` [PATCH v23 13/15] log: add support for systemd journal Stephen Hemminger
2024-09-18  4:56   ` [PATCH v23 14/15] log: colorize log output Stephen Hemminger
2024-09-18  7:43     ` fengchengwen
2024-09-18  4:56   ` [PATCH v23 15/15] doc: add release note about log library Stephen Hemminger
2024-09-18  7:44     ` fengchengwen
2024-09-18  8:27   ` [PATCH v23 00/15] Logging improvements Bruce Richardson
2024-09-18 20:51 ` [PATCH v24 00/15] Logging enhancements for 24.11 Stephen Hemminger
2024-09-18 20:52   ` [PATCH v24 01/15] maintainers: add for log library Stephen Hemminger
2024-09-18 20:52   ` [PATCH v24 02/15] windows: make getopt functions have const properties Stephen Hemminger
2024-09-18 20:52   ` [PATCH v24 03/15] windows: add os shim for localtime_r Stephen Hemminger
2024-09-19  1:07     ` fengchengwen
2024-09-18 20:52   ` [PATCH v24 04/15] eal: make eal_log_level_parse common Stephen Hemminger
2024-09-18 20:52   ` [PATCH v24 05/15] eal: do not duplicate rte_init_alert() messages Stephen Hemminger
2024-09-18 20:52   ` [PATCH v24 06/15] eal: change rte_exit() output to match rte_log() Stephen Hemminger
2024-09-19  1:09     ` fengchengwen
2024-09-18 20:52   ` [PATCH v24 07/15] log: move handling of syslog facility out of eal Stephen Hemminger
2024-09-18 20:52   ` [PATCH v24 08/15] eal: initialize log before everything else Stephen Hemminger
2024-09-18 20:52   ` [PATCH v24 09/15] log: drop syslog support, and make code common Stephen Hemminger
2024-09-18 20:52   ` [PATCH v24 10/15] log: add hook for printing log messages Stephen Hemminger
2024-09-18 20:52   ` [PATCH v24 11/15] log: add timestamp option Stephen Hemminger
2024-09-18 20:52   ` [PATCH v24 12/15] log: add optional support of syslog Stephen Hemminger
2024-09-18 20:52   ` [PATCH v24 13/15] log: add support for systemd journal Stephen Hemminger
2024-09-18 20:52   ` [PATCH v24 14/15] log: colorize log output Stephen Hemminger
2024-09-18 20:52   ` [PATCH v24 15/15] doc: add release note about log library Stephen Hemminger
2024-09-19 15:04 ` [PATCH v25 00/15] Logging enhancements for 24.11 Stephen Hemminger
2024-09-19 15:04   ` [PATCH v25 01/15] maintainers: add for log library Stephen Hemminger
2024-09-19 15:04   ` [PATCH v25 02/15] windows: make getopt functions have const properties Stephen Hemminger
2024-09-19 15:04   ` [PATCH v25 03/15] windows: add os shim for localtime_r Stephen Hemminger
2024-09-19 15:04   ` [PATCH v25 04/15] eal: make eal_log_level_parse common Stephen Hemminger
2024-09-19 15:04   ` [PATCH v25 05/15] eal: do not duplicate rte_init_alert() messages Stephen Hemminger
2024-09-19 15:04   ` [PATCH v25 06/15] eal: change rte_exit() output to match rte_log() Stephen Hemminger
2024-09-19 15:04   ` [PATCH v25 07/15] log: move handling of syslog facility out of eal Stephen Hemminger
2024-09-19 15:04   ` [PATCH v25 08/15] eal: initialize log before everything else Stephen Hemminger
2024-09-19 15:04   ` [PATCH v25 09/15] log: drop syslog support, and make code common Stephen Hemminger
2024-09-19 15:04   ` [PATCH v25 10/15] log: add hook for printing log messages Stephen Hemminger
2024-09-19 15:04   ` [PATCH v25 11/15] log: add timestamp option Stephen Hemminger
2024-09-19 15:04   ` [PATCH v25 12/15] log: add optional support of syslog Stephen Hemminger
2024-09-19 15:04   ` [PATCH v25 13/15] log: add support for systemd journal Stephen Hemminger
2024-09-19 15:04   ` [PATCH v25 14/15] log: colorize log output Stephen Hemminger
2024-09-19 15:04   ` [PATCH v25 15/15] doc: add release note about log library Stephen Hemminger
2024-09-30 20:34     ` Tyler Retzlaff
2024-09-20 14:47   ` [PATCH v25 00/15] Logging enhancements for 24.11 Patrick Robb

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20240330030429.4630-14-stephen@networkplumber.org \
    --to=stephen@networkplumber.org \
    --cc=dev@dpdk.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).