79c4324644
Change-Id: I2d302dda68298877c65c99147f5bf22186a59aac
59 lines
2.0 KiB
Diff
59 lines
2.0 KiB
Diff
From aaff56af24b3931e08b28a994a4953c1a0d1851b Mon Sep 17 00:00:00 2001
|
|
From: wangmeiyang <wangmeiyang_yewu@cmss.chinamobile.com>
|
|
Date: Wed, 23 Nov 2022 17:16:24 +0800
|
|
Subject: [PATCH 05/23] util: fix syslog facility value
|
|
MIME-Version: 1.0
|
|
Content-Type: text/plain; charset=UTF-8
|
|
Content-Transfer-Encoding: 8bit
|
|
|
|
We set SYSLOG_PRIORITY when sending to journald to avoid our
|
|
messages getting tagged with the default facility which is
|
|
used for the kernel.
|
|
|
|
Unfortunately:
|
|
|
|
commit fd00f0e6c75b00c3d97be8670afcd9094b823855
|
|
Author: Guido Günther <agx@sigxcpu.org>
|
|
Date: Mon Sep 21 20:06:55 2015 +0200
|
|
|
|
Use daemon log facility for journald
|
|
|
|
used the LOG_nnn constants from the syslog header without realizing
|
|
that these values have a bit-shift applied. While Linux defines a
|
|
LOG_FAC() macros to undo the bit-shift this doesn't appear to be
|
|
standardized. So the safe thing is to just use the raw value since
|
|
these values are fixed by RFC 5424.
|
|
|
|
cherry-pick from 017fa1e097769455c0cd8929760cf9ff52a556ec
|
|
|
|
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
|
|
Signed-off-by: Meiyang Wang <wangmeiyang@cmss.chinamobile.com>
|
|
Reviewed-by: Ján Tomko <jtomko@redhat.com>
|
|
---
|
|
src/util/virlog.c | 9 ++++++++-
|
|
1 file changed, 8 insertions(+), 1 deletion(-)
|
|
|
|
diff --git a/src/util/virlog.c b/src/util/virlog.c
|
|
index e4944d1258..07d4eb4123 100644
|
|
--- a/src/util/virlog.c
|
|
+++ b/src/util/virlog.c
|
|
@@ -932,7 +932,14 @@ virLogOutputToJournald(virLogSourcePtr source,
|
|
journalAddString(&state, "MESSAGE", rawstr);
|
|
journalAddInt(&state, "PRIORITY",
|
|
virLogPrioritySyslog(priority));
|
|
- journalAddInt(&state, "SYSLOG_FACILITY", LOG_DAEMON);
|
|
+ /* See RFC 5424 section 6.2.1
|
|
+ *
|
|
+ * Don't use LOG_nnn constants as those have a bit-shift
|
|
+ * applied for use with syslog() API, while journald
|
|
+ * needs the raw value
|
|
+ */
|
|
+ journalAddInt(&state, "SYSLOG_FACILITY", 3);
|
|
+
|
|
journalAddString(&state, "LIBVIRT_SOURCE", source->name);
|
|
if (filename)
|
|
journalAddString(&state, "CODE_FILE", filename);
|
|
--
|
|
2.27.0
|
|
|