From: Stephen Hemminger <stephen@networkplumber.org>
To: dev@dpdk.org
Cc: Stephen Hemminger <stephen@networkplumber.org>
Subject: [PATCH v13 11/11] log: add optional support of syslog
Date: Mon, 25 Mar 2024 18:57:06 -0700 [thread overview]
Message-ID: <20240326015827.825648-12-stephen@networkplumber.org> (raw)
In-Reply-To: <20240326015827.825648-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 | 2 +-
lib/log/log.c | 101 ++++++++++++++++--
5 files changed, 114 insertions(+), 38 deletions(-)
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..16884c5aa3 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 },
diff --git a/lib/log/log.c b/lib/log/log.c
index 2dca91306e..d8974c66db 100644
--- a/lib/log/log.c
+++ b/lib/log/log.c
@@ -13,15 +13,17 @@
#include <sys/queue.h>
#include <unistd.h>
+#ifdef RTE_EXEC_ENV_WINDOWS
+#include <rte_os_shim.h>
+#else
+#include <syslog.h>
+#endif
+
#include <rte_log.h>
#include <rte_per_lcore.h>
#include "log_internal.h"
-#ifdef RTE_EXEC_ENV_WINDOWS
-#include <rte_os_shim.h>
-#endif
-
struct rte_log_dynamic_type {
const char *name;
uint32_t loglevel;
@@ -36,14 +38,25 @@ enum eal_log_time_format {
EAL_LOG_TIMESTAMP_ISO,
};
+enum eal_log_syslog {
+ EAL_LOG_SYSLOG_NONE = 0, /* do not use syslog */
+ EAL_LOG_SYSLOG_AUTO, /* use syslog only if not a terminal */
+ EAL_LOG_SYSLOG_ALWAYS, /* always use syslog */
+ EAL_LOG_SYSLOG_BOTH, /* log to both syslog and stderr */
+};
+
typedef int (*log_print_t)(FILE *f, uint32_t level, const char *fmt, va_list ap);
static int log_print(FILE *f, uint32_t level, const char *format, va_list ap);
+
/** The rte_log structure. */
static struct rte_logs {
uint32_t type; /**< Bitfield with enabled logs. */
uint32_t level; /**< Log level. */
FILE *file; /**< Output file set by rte_openlog_stream, or NULL. */
+#ifndef RTE_EXEC_ENV_WINDOWS
+ enum eal_log_syslog syslog_opt;
+#endif
log_print_t print_func;
enum eal_log_time_format time_format;
@@ -532,9 +545,23 @@ rte_log(uint32_t level, uint32_t logtype, const char *format, ...)
/* Placeholder */
int
-eal_log_syslog(const char *mode __rte_unused)
+eal_log_syslog(const char *str)
{
+#ifdef RTE_EXEC_ENV_WINDOWS
+ RTE_SET_USED(str);
return -1;
+#else
+ if (str == NULL || strcmp(str, "auto") == 0)
+ /* log to syslog only if stderr is not a terminal */
+ rte_logs.syslog_opt = EAL_LOG_SYSLOG_AUTO;
+ else if (strcmp(str, "both") == 0)
+ rte_logs.syslog_opt = EAL_LOG_SYSLOG_BOTH;
+ else if (strcmp(str, "always") == 0)
+ rte_logs.syslog_opt = EAL_LOG_SYSLOG_ALWAYS;
+ else
+ return -1;
+ return 0;
+#endif
}
/* Set the log timestamp format */
@@ -706,17 +733,75 @@ log_print_with_timestamp(FILE *f, uint32_t level,
return log_print(f, level, format, ap);
}
+#ifndef RTE_EXEC_ENV_WINDOWS
/*
- * Called by rte_eal_init
+ * wrapper for log stream to put messages into syslog
+ * useful for cases like:
+ * rte_hex_dump(rte_get_log_stream(), ...)
*/
-void
-eal_log_init(const char *id __rte_unused)
+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,
+};
+#endif
+
+
+/* Choose how log output is directed */
+static void
+log_output_selection(const char *id)
+{
+ RTE_SET_USED(id);
+
+#ifndef RTE_EXEC_ENV_WINDOWS
+ bool is_terminal = isatty(STDERR_FILENO);
+
+ if (!(rte_logs.syslog_opt == EAL_LOG_SYSLOG_NONE ||
+ (rte_logs.syslog_opt == EAL_LOG_SYSLOG_AUTO && is_terminal))) {
+ int flags = LOG_NDELAY | LOG_PID;
+
+#ifdef LOG_PERROR
+ if (rte_logs.syslog_opt == EAL_LOG_SYSLOG_BOTH)
+ flags |= LOG_PERROR;
+#endif
+ 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)
+ default_log_stream = log_stream;
+ return;
+ }
+#endif
if (rte_logs.time_format != EAL_LOG_TIMESTAMP_NONE)
rte_logs.print_func = log_print_with_timestamp;
+}
+/*
+ * Called by rte_eal_init
+ */
+void
+eal_log_init(const char *id)
+{
+ rte_logs.print_func = log_print;
default_log_stream = stderr;
+ log_output_selection(id);
+
#if RTE_LOG_DP_LEVEL >= RTE_LOG_DEBUG
RTE_LOG(NOTICE, EAL,
"Debug dataplane logs available - lower performance\n");
--
2.43.0
next prev parent reply other threads:[~2024-03-26 1:59 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 ` Stephen Hemminger [this message]
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 ` [PATCH v19 13/15] log: add optional support of syslog Stephen Hemminger
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=20240326015827.825648-12-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).