]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
tree-wide: check more log message format in log_struct() and friends
authorYu Watanabe <watanabe.yu+github@gmail.com>
Tue, 18 Mar 2025 06:50:43 +0000 (15:50 +0900)
committerYu Watanabe <watanabe.yu+github@gmail.com>
Tue, 18 Mar 2025 16:56:48 +0000 (01:56 +0900)
This introduce LOG_ITEM() macro that checks arbitrary formats in
log_struct().
Then, drop _printf_ attribute from log_struct_internal(), as it does not
help so much, and compiler checked only the first format string.

Hopefully, this silences false-positive warnings by Coverity.

53 files changed:
src/basic/log.c
src/basic/log.h
src/basic/process-util.c
src/basic/user-util.c
src/battery-check/battery-check.c
src/core/cgroup.c
src/core/clock-warp.c
src/core/crash-handler.c
src/core/device.c
src/core/exec-invoke.c
src/core/execute.c
src/core/execute.h
src/core/executor.c
src/core/job.c
src/core/load-fragment.c
src/core/main.c
src/core/manager.c
src/core/manager.h
src/core/mount.c
src/core/selinux-setup.c
src/core/service.c
src/core/smack-setup.c
src/core/transaction.c
src/core/unit.c
src/core/unit.h
src/coredump/coredump.c
src/cryptsetup/cryptsetup.c
src/libsystemd/sd-event/sd-event.c
src/libsystemd/sd-json/sd-json.c
src/login/logind-action.c
src/login/logind-button.c
src/login/logind-dbus.c
src/login/logind-session.c
src/login/logind-wall.c
src/machine/machine.c
src/network/networkd-dhcp4.c
src/network/networkd-sysctl.c
src/pcrextend/pcrextend.c
src/portable/portable.c
src/resolve/resolved-dns-server.c
src/resolve/resolved-dns-transaction.c
src/resolve/resolved-dns-trust-anchor.c
src/shutdown/shutdown.c
src/sleep/sleep.c
src/sysv-generator/sysv-generator.c
src/test/test-log.c
src/test/test-macro.c
src/timedate/timedated.c
src/timesync/timesyncd-manager.c
src/timesync/timesyncd.c
src/tpm2-setup/tpm2-clear.c
src/tpm2-setup/tpm2-setup.c
src/udev/udevadm-settle.c

index c1198d0f61d1c1eee13fb4ac7932a9522018b2ed..f734a7811ad9d4c3a13cfe5aa34cf648dca6e3df 100644 (file)
@@ -1108,7 +1108,9 @@ int log_struct_internal(
                         iovec[n++] = IOVEC_MAKE_STRING(header);
 
                         va_start(ap, format);
+                        DISABLE_WARNING_FORMAT_NONLITERAL;
                         r = log_format_iovec(iovec, iovec_len, &n, true, error, format, ap);
+                        REENABLE_WARNING;
                         m = n;
                         if (r < 0)
                                 fallback = true;
@@ -1145,7 +1147,9 @@ int log_struct_internal(
                 errno = ERRNO_VALUE(error);
 
                 va_copy(aq, ap);
+                DISABLE_WARNING_FORMAT_NONLITERAL;
                 (void) vsnprintf(buf, sizeof buf, format, aq);
+                REENABLE_WARNING;
                 va_end(aq);
 
                 if (startswith(buf, "MESSAGE=")) {
@@ -1649,9 +1653,9 @@ int log_syntax_internal(
                                         level,
                                         error,
                                         file, line, func,
-                                        "MESSAGE_ID=" SD_MESSAGE_INVALID_CONFIGURATION_STR,
-                                        "CONFIG_FILE=%s", config_file,
-                                        "CONFIG_LINE=%u", config_line,
+                                        LOG_MESSAGE_ID(SD_MESSAGE_INVALID_CONFIGURATION_STR),
+                                        LOG_ITEM("CONFIG_FILE=%s", config_file),
+                                        LOG_ITEM("CONFIG_LINE=%u", config_line),
                                         LOG_MESSAGE("%s:%u: %s", config_file, config_line, buffer),
                                         unit_fmt, unit,
                                         NULL);
@@ -1660,8 +1664,8 @@ int log_syntax_internal(
                                         level,
                                         error,
                                         file, line, func,
-                                        "MESSAGE_ID=" SD_MESSAGE_INVALID_CONFIGURATION_STR,
-                                        "CONFIG_FILE=%s", config_file,
+                                        LOG_MESSAGE_ID(SD_MESSAGE_INVALID_CONFIGURATION_STR),
+                                        LOG_ITEM("CONFIG_FILE=%s", config_file),
                                         LOG_MESSAGE("%s: %s", config_file, buffer),
                                         unit_fmt, unit,
                                         NULL);
@@ -1670,7 +1674,7 @@ int log_syntax_internal(
                                 level,
                                 error,
                                 file, line, func,
-                                "MESSAGE_ID=" SD_MESSAGE_INVALID_CONFIGURATION_STR,
+                                LOG_MESSAGE_ID(SD_MESSAGE_INVALID_CONFIGURATION_STR),
                                 LOG_MESSAGE("%s: %s", unit, buffer),
                                 unit_fmt, unit,
                                 NULL);
@@ -1679,7 +1683,7 @@ int log_syntax_internal(
                                 level,
                                 error,
                                 file, line, func,
-                                "MESSAGE_ID=" SD_MESSAGE_INVALID_CONFIGURATION_STR,
+                                LOG_MESSAGE_ID(SD_MESSAGE_INVALID_CONFIGURATION_STR),
                                 LOG_MESSAGE("%s", buffer),
                                 NULL);
 }
index 02f3f509d18b59acf9576257fe582ca132f98dfe..def54c81b130ce9cefd6671d39480714671487aa 100644 (file)
@@ -153,7 +153,7 @@ int log_struct_internal(
                 const char *file,
                 int line,
                 const char *func,
-                const char *format, ...) _printf_(6,0) _sentinel_;
+                const char *format, ...) _sentinel_;
 
 int log_oom_internal(
                 int level,
@@ -314,11 +314,15 @@ bool log_on_console(void) _pure_;
 /* Do a fake formatting of the message string to let the scanner verify the arguments against the format
  * message. The variable will never be set to true, but we don't tell the compiler that :) */
 extern bool _log_message_dummy;
-#  define LOG_MESSAGE(fmt, ...) "MESSAGE=%.0d" fmt, (_log_message_dummy && printf(fmt, ##__VA_ARGS__)), ##__VA_ARGS__
+#  define LOG_ITEM(fmt, ...) "%.0d" fmt, (_log_message_dummy && printf(fmt, ##__VA_ARGS__)), ##__VA_ARGS__
+#  define LOG_MESSAGE(fmt, ...) LOG_ITEM("MESSAGE=" fmt, ##__VA_ARGS__)
 #else
+#  define LOG_ITEM(fmt, ...) fmt, ##__VA_ARGS__
 #  define LOG_MESSAGE(fmt, ...) "MESSAGE=" fmt, ##__VA_ARGS__
 #endif
 
+#define LOG_MESSAGE_ID(id) LOG_ITEM("MESSAGE_ID=" id)
+
 void log_received_signal(int level, const struct signalfd_siginfo *si);
 
 /* If turned on, any requests for a log target involving "syslog" will be implicitly upgraded to the equivalent journal target */
index c19890b7c3652e117b6a55a7356a68b05fcc9eed..ee15f72df4c76a6b54ea37dfadda7858adb6c8f2 100644 (file)
@@ -1381,8 +1381,8 @@ void valgrind_summary_hack(void) {
                 if (pid < 0)
                         log_struct_errno(
                                 LOG_EMERG, errno,
-                                "MESSAGE_ID=" SD_MESSAGE_VALGRIND_HELPER_FORK_STR,
-                                LOG_MESSAGE( "Failed to fork off valgrind helper: %m"));
+                                LOG_MESSAGE_ID(SD_MESSAGE_VALGRIND_HELPER_FORK_STR),
+                                LOG_MESSAGE("Failed to fork off valgrind helper: %m"));
                 else if (pid == 0)
                         exit(EXIT_SUCCESS);
                 else {
index e050bd4e7b2b7ca980ab604c9006cf91a0bda476..3249fe73e287ce704226e448bb2ad5e56edbf58f 100644 (file)
@@ -763,8 +763,8 @@ bool valid_user_group_name(const char *u, ValidUserFlags flags) {
                 if (FLAGS_SET(flags, VALID_USER_WARN) && !valid_user_group_name(u, 0))
                         log_struct(LOG_NOTICE,
                                    LOG_MESSAGE("Accepting user/group name '%s', which does not match strict user/group name rules.", u),
-                                   "USER_GROUP_NAME=%s", u,
-                                   "MESSAGE_ID=" SD_MESSAGE_UNSAFE_USER_NAME_STR);
+                                   LOG_ITEM("USER_GROUP_NAME=%s", u),
+                                   LOG_MESSAGE_ID(SD_MESSAGE_UNSAFE_USER_NAME_STR));
 
                 /* Note that we make no restrictions on the length in relaxed mode! */
         } else {
index a7749b7b9c79a9fe96caecd9364bb644d3657c65..9e55edaf9728e272929a55fa15ad36c22e6174a5 100644 (file)
@@ -145,7 +145,7 @@ static int run(int argc, char *argv[]) {
                 return 0;
         log_struct(LOG_EMERG,
                    LOG_MESSAGE("%s " BATTERY_LOW_MESSAGE, glyph(GLYPH_LOW_BATTERY)),
-                   "MESSAGE_ID=" SD_MESSAGE_BATTERY_LOW_WARNING_STR);
+                   LOG_MESSAGE_ID(SD_MESSAGE_BATTERY_LOW_WARNING_STR));
 
         fd = open_terminal("/dev/console", O_WRONLY|O_NOCTTY|O_CLOEXEC);
         if (fd < 0)
@@ -168,7 +168,7 @@ static int run(int argc, char *argv[]) {
         if (r > 0) {
                 log_struct(LOG_EMERG,
                            LOG_MESSAGE("Battery level critically low, powering off."),
-                           "MESSAGE_ID=" SD_MESSAGE_BATTERY_LOW_POWEROFF_STR);
+                           LOG_MESSAGE_ID(SD_MESSAGE_BATTERY_LOW_POWEROFF_STR));
                 return r;
         }
 
index 2c1bafa29afec30a8634d09d9db73dd8b7b26f67..19d9cdecab4f02e23dd531fef227e8b0e81266ca 100644 (file)
@@ -3995,13 +3995,13 @@ int unit_check_oomd_kill(Unit *u) {
 
         if (n > 0)
                 log_unit_struct(u, LOG_NOTICE,
-                                "MESSAGE_ID=" SD_MESSAGE_UNIT_OOMD_KILL_STR,
+                                LOG_MESSAGE_ID(SD_MESSAGE_UNIT_OOMD_KILL_STR),
                                 LOG_UNIT_INVOCATION_ID(u),
                                 LOG_UNIT_MESSAGE(u, "systemd-oomd killed %"PRIu64" process(es) in this unit.", n),
-                                "N_PROCESSES=%" PRIu64, n);
+                                LOG_ITEM("N_PROCESSES=%" PRIu64, n));
         else
                 log_unit_struct(u, LOG_NOTICE,
-                                "MESSAGE_ID=" SD_MESSAGE_UNIT_OOMD_KILL_STR,
+                                LOG_MESSAGE_ID(SD_MESSAGE_UNIT_OOMD_KILL_STR),
                                 LOG_UNIT_INVOCATION_ID(u),
                                 LOG_UNIT_MESSAGE(u, "systemd-oomd killed some process(es) in this unit."));
 
@@ -4043,7 +4043,7 @@ int unit_check_oom(Unit *u) {
                 return 0;
 
         log_unit_struct(u, LOG_NOTICE,
-                        "MESSAGE_ID=" SD_MESSAGE_UNIT_OUT_OF_MEMORY_STR,
+                        LOG_MESSAGE_ID(SD_MESSAGE_UNIT_OUT_OF_MEMORY_STR),
                         LOG_UNIT_INVOCATION_ID(u),
                         LOG_UNIT_MESSAGE(u, "A process of this unit has been killed by the OOM killer."));
 
index ceaf4b392671749bb0ab9ea0ec879f59d1cdaf7f..3620c6942eff464f1271febcb6251e39b2b18ea8 100644 (file)
@@ -71,17 +71,17 @@ void clock_apply_epoch(bool allow_backwards) {
                 "timestamp on "EPOCH_CLOCK_FILE;
         if (advance)
                 log_struct(LOG_INFO,
-                           "MESSAGE_ID=" SD_MESSAGE_TIME_BUMP_STR,
-                           "REALTIME_USEC=" USEC_FMT, epoch_usec,
-                           "DIRECTION=forwards",
+                           LOG_MESSAGE_ID(SD_MESSAGE_TIME_BUMP_STR),
+                           LOG_ITEM("REALTIME_USEC=" USEC_FMT, epoch_usec),
+                           LOG_ITEM("DIRECTION=forwards"),
                            LOG_MESSAGE("System time advanced to %s: %s",
                                        from,
                                        FORMAT_TIMESTAMP(epoch_usec)));
         else
                 log_struct(LOG_INFO,
-                           "MESSAGE_ID=" SD_MESSAGE_TIME_BUMP_STR,
-                           "REALTIME_USEC=" USEC_FMT, epoch_usec,
-                           "DIRECTION=backwards",
+                           LOG_MESSAGE_ID(SD_MESSAGE_TIME_BUMP_STR),
+                           LOG_ITEM("REALTIME_USEC=" USEC_FMT, epoch_usec),
+                           LOG_ITEM("DIRECTION=backwards"),
                            LOG_MESSAGE("System time was further ahead than %s after %s, clock reset to %s",
                                        FORMAT_TIMESPAN(CLOCK_VALID_RANGE_USEC_MAX, USEC_PER_DAY),
                                        from,
index 5afd090e741cfc75c8b4432838fd754d5f880b6c..385a6cf641fcc429491d6ab94c720559ba3a1c8d 100644 (file)
@@ -24,7 +24,7 @@ _noreturn_ void freeze_or_exit_or_reboot(void) {
         if (detect_container() > 0) {
                 log_struct(LOG_EMERG,
                            LOG_MESSAGE("Exiting PID 1..."),
-                           "MESSAGE_ID=" SD_MESSAGE_CRASH_EXIT_STR);
+                           LOG_MESSAGE_ID(SD_MESSAGE_CRASH_EXIT_STR));
                 _exit(EXIT_EXCEPTION);
         }
 
@@ -33,7 +33,7 @@ _noreturn_ void freeze_or_exit_or_reboot(void) {
                 (void) reboot(RB_POWER_OFF);
                 log_struct_errno(LOG_EMERG, errno,
                                  LOG_MESSAGE("Failed to power off: %m"),
-                                 "MESSAGE_ID=" SD_MESSAGE_CRASH_FAILED_STR);
+                                 LOG_MESSAGE_ID(SD_MESSAGE_CRASH_FAILED_STR));
         } else if (arg_crash_action == CRASH_REBOOT) {
                 log_notice("Rebooting in 10s...");
                 (void) sleep(10);
@@ -42,12 +42,12 @@ _noreturn_ void freeze_or_exit_or_reboot(void) {
                 (void) reboot(RB_AUTOBOOT);
                 log_struct_errno(LOG_EMERG, errno,
                                  LOG_MESSAGE("Failed to reboot: %m"),
-                                 "MESSAGE_ID=" SD_MESSAGE_CRASH_FAILED_STR);
+                                 LOG_MESSAGE_ID(SD_MESSAGE_CRASH_FAILED_STR));
         }
 
         log_struct(LOG_EMERG,
                    LOG_MESSAGE("Freezing execution."),
-                   "MESSAGE_ID=" SD_MESSAGE_CRASH_FREEZE_STR);
+                   LOG_MESSAGE_ID(SD_MESSAGE_CRASH_FREEZE_STR));
         sync();
         freeze();
 }
@@ -73,7 +73,7 @@ _noreturn_ static void crash(int sig, siginfo_t *siginfo, void *context) {
         else if (!arg_dump_core)
                 log_struct(LOG_EMERG,
                            LOG_MESSAGE("Caught <%s>, not dumping core.", signal_to_string(sig)),
-                           "MESSAGE_ID=" SD_MESSAGE_CRASH_NO_COREDUMP_STR);
+                           LOG_MESSAGE_ID(SD_MESSAGE_CRASH_NO_COREDUMP_STR));
         else {
                 /* We want to wait for the core process, hence let's enable SIGCHLD */
                 (void) sigaction(SIGCHLD, &sigaction_nop_nocldstop, NULL);
@@ -82,7 +82,7 @@ _noreturn_ static void crash(int sig, siginfo_t *siginfo, void *context) {
                 if (pid < 0)
                         log_struct_errno(LOG_EMERG, errno,
                                          LOG_MESSAGE("Caught <%s>, cannot fork for core dump: %m", signal_to_string(sig)),
-                                         "MESSAGE_ID=" SD_MESSAGE_CRASH_NO_FORK_STR);
+                                         LOG_MESSAGE_ID(SD_MESSAGE_CRASH_NO_FORK_STR));
                 else if (pid == 0) {
                         /* Enable default signal handler for core dump */
 
@@ -105,15 +105,15 @@ _noreturn_ static void crash(int sig, siginfo_t *siginfo, void *context) {
                                 if (siginfo->si_pid == 0)
                                         log_struct(LOG_EMERG,
                                                    LOG_MESSAGE("Caught <%s>, from unknown sender process.", signal_to_string(sig)),
-                                                   "MESSAGE_ID=" SD_MESSAGE_CRASH_UNKNOWN_SIGNAL_STR);
+                                                   LOG_MESSAGE_ID(SD_MESSAGE_CRASH_UNKNOWN_SIGNAL_STR));
                                 else if (siginfo->si_pid == 1)
                                         log_struct(LOG_EMERG,
                                                    LOG_MESSAGE("Caught <%s>, from our own process.", signal_to_string(sig)),
-                                                   "MESSAGE_ID=" SD_MESSAGE_CRASH_SYSTEMD_SIGNAL_STR);
+                                                   LOG_MESSAGE_ID(SD_MESSAGE_CRASH_SYSTEMD_SIGNAL_STR));
                                 else
                                         log_struct(LOG_EMERG,
                                                    LOG_MESSAGE("Caught <%s> from PID "PID_FMT".", signal_to_string(sig), siginfo->si_pid),
-                                                   "MESSAGE_ID=" SD_MESSAGE_CRASH_PROCESS_SIGNAL_STR);
+                                                   LOG_MESSAGE_ID(SD_MESSAGE_CRASH_PROCESS_SIGNAL_STR));
                         }
 
                         /* Order things nicely. */
@@ -121,7 +121,7 @@ _noreturn_ static void crash(int sig, siginfo_t *siginfo, void *context) {
                         if (r < 0)
                                 log_struct_errno(LOG_EMERG, r,
                                                  LOG_MESSAGE("Caught <%s>, waitpid() failed: %m", signal_to_string(sig)),
-                                                 "MESSAGE_ID=" SD_MESSAGE_CRASH_WAITPID_FAILED_STR);
+                                                 LOG_MESSAGE_ID(SD_MESSAGE_CRASH_WAITPID_FAILED_STR));
                         else if (status.si_code != CLD_DUMPED) {
                                 const char *s = status.si_code == CLD_EXITED ?
                                         exit_status_to_string(status.si_status, EXIT_STATUS_LIBC) :
@@ -134,12 +134,12 @@ _noreturn_ static void crash(int sig, siginfo_t *siginfo, void *context) {
                                                        sigchld_code_to_string(status.si_code),
                                                        status.si_status,
                                                        strna(s)),
-                                           "MESSAGE_ID=" SD_MESSAGE_CRASH_COREDUMP_FAILED_STR);
+                                           LOG_MESSAGE_ID(SD_MESSAGE_CRASH_COREDUMP_FAILED_STR));
                         } else
                                 log_struct(LOG_EMERG,
                                            LOG_MESSAGE("Caught <%s>, dumped core as pid "PID_FMT".",
                                                        signal_to_string(sig), pid),
-                                           "MESSAGE_ID=" SD_MESSAGE_CRASH_COREDUMP_PID_STR);
+                                           LOG_MESSAGE_ID(SD_MESSAGE_CRASH_COREDUMP_PID_STR));
                 }
         }
 
@@ -156,7 +156,7 @@ _noreturn_ static void crash(int sig, siginfo_t *siginfo, void *context) {
                 if (pid < 0)
                         log_struct_errno(LOG_EMERG, errno,
                                          LOG_MESSAGE("Failed to fork off crash shell: %m"),
-                                         "MESSAGE_ID=" SD_MESSAGE_CRASH_SHELL_FORK_FAILED_STR);
+                                         LOG_MESSAGE_ID(SD_MESSAGE_CRASH_SHELL_FORK_FAILED_STR));
                 else if (pid == 0) {
                         (void) setsid();
                         (void) terminal_vhangup("/dev/console");
@@ -166,7 +166,7 @@ _noreturn_ static void crash(int sig, siginfo_t *siginfo, void *context) {
 
                         log_struct_errno(LOG_EMERG, errno,
                                          LOG_MESSAGE("execle() failed: %m"),
-                                         "MESSAGE_ID=" SD_MESSAGE_CRASH_EXECLE_FAILED_STR);
+                                         LOG_MESSAGE_ID(SD_MESSAGE_CRASH_EXECLE_FAILED_STR));
                         _exit(EXIT_EXCEPTION);
                 } else {
                         log_info("Spawned crash shell as PID "PID_FMT".", pid);
index 15746094a45183db769f5c03bf42b72e5723bb30..b6cdee73d4473c795d54af98086790f207c4c8c8 100644 (file)
@@ -681,8 +681,8 @@ static int device_setup_unit(Manager *m, sd_device *dev, const char *path, bool
         if (r < 0)
                 return log_struct_errno(
                                 LOG_WARNING, r,
-                                "MESSAGE_ID=" SD_MESSAGE_DEVICE_PATH_NOT_SUITABLE_STR,
-                                "DEVICE=%s", path,
+                                LOG_MESSAGE_ID(SD_MESSAGE_DEVICE_PATH_NOT_SUITABLE_STR),
+                                LOG_ITEM("DEVICE=%s", path),
                                 LOG_MESSAGE("Failed to generate valid unit name from device path '%s', ignoring device: %m",
                                             path));
 
index 6bb4584a8eeac970637ab88b6ecf410001b6cd41..4e3dba4aedc72183a5cd54e24c667fa4a91f26e7 100644 (file)
@@ -4200,7 +4200,7 @@ static void log_command_line(
         _cleanup_free_ char *cmdline = quote_command_line(argv, SHELL_ESCAPE_EMPTY);
 
         log_exec_struct(context, params, LOG_DEBUG,
-                        "EXECUTABLE=%s", executable,
+                        LOG_ITEM("EXECUTABLE=%s", executable),
                         LOG_EXEC_MESSAGE(params, "%s: %s", msg, strnull(cmdline)),
                         LOG_EXEC_INVOCATION_ID(params));
 }
@@ -5482,11 +5482,11 @@ int exec_invoke(
         if (r < 0) {
                 *exit_status = EXIT_EXEC;
                 log_exec_struct_errno(context, params, LOG_NOTICE, r,
-                                      "MESSAGE_ID=" SD_MESSAGE_SPAWN_FAILED_STR,
+                                      LOG_MESSAGE_ID(SD_MESSAGE_SPAWN_FAILED_STR),
                                       LOG_EXEC_MESSAGE(params,
                                                        "Unable to locate executable '%s': %m",
                                                        command->path),
-                                      "EXECUTABLE=%s", command->path);
+                                      LOG_ITEM("EXECUTABLE=%s", command->path));
                 /* If the error will be ignored by manager, tune down the log level here. Missing executable
                  * is very much expected in this case. */
                 return r != -ENOMEM && FLAGS_SET(command->flags, EXEC_COMMAND_IGNORE_FAILURE) ? 1 : r;
index 1b6fe5b31af8a4dbac2cae4ff251c37cdec840ac..e6a45e3c13e76f1cac1c39737fba6484fd52f51c 100644 (file)
@@ -463,7 +463,7 @@ static void log_command_line(Unit *unit, const char *msg, const char *executable
         _cleanup_free_ char *cmdline = quote_command_line(argv, SHELL_ESCAPE_EMPTY);
 
         log_unit_struct(unit, LOG_DEBUG,
-                        "EXECUTABLE=%s", executable,
+                        LOG_ITEM("EXECUTABLE=%s", executable),
                         LOG_UNIT_MESSAGE(unit, "%s: %s", msg, strnull(cmdline)),
                         LOG_UNIT_INVOCATION_ID(unit));
 }
index 65a9b0dea13851a48f80d506fe532b65f6251ac0..af2d972406f4efe2e11559df11803d4508f14c8f 100644 (file)
@@ -643,12 +643,8 @@ const char* exec_get_private_notify_socket_path(const ExecContext *context, cons
 
 #define LOG_EXEC_ID_FIELD(ep) \
         ((ep)->runtime_scope == RUNTIME_SCOPE_USER ? "USER_UNIT=" : "UNIT=")
-#define LOG_EXEC_ID_FIELD_FORMAT(ep) \
-        ((ep)->runtime_scope == RUNTIME_SCOPE_USER ? "USER_UNIT=%s" : "UNIT=%s")
 #define LOG_EXEC_INVOCATION_ID_FIELD(ep) \
         ((ep)->runtime_scope == RUNTIME_SCOPE_USER ? "USER_INVOCATION_ID=" : "INVOCATION_ID=")
-#define LOG_EXEC_INVOCATION_ID_FIELD_FORMAT(ep) \
-        ((ep)->runtime_scope == RUNTIME_SCOPE_USER ? "USER_INVOCATION_ID=%s" : "INVOCATION_ID=%s")
 
 #define log_exec_full_errno_zerook(ec, ep, level, error, ...)                     \
         ({                                                                        \
@@ -693,8 +689,8 @@ const char* exec_get_private_notify_socket_path(const ExecContext *context, cons
 
 /* Like LOG_MESSAGE(), but with the unit name prefixed. */
 #define LOG_EXEC_MESSAGE(ep, fmt, ...) LOG_MESSAGE("%s: " fmt, (ep)->unit_id, ##__VA_ARGS__)
-#define LOG_EXEC_ID(ep) LOG_EXEC_ID_FIELD_FORMAT(ep), (ep)->unit_id
-#define LOG_EXEC_INVOCATION_ID(ep) LOG_EXEC_INVOCATION_ID_FIELD_FORMAT(ep), (ep)->invocation_id_string
+#define LOG_EXEC_ID(ep) LOG_ITEM("%s%s", LOG_EXEC_ID_FIELD(ep), (ep)->unit_id)
+#define LOG_EXEC_INVOCATION_ID(ep) LOG_ITEM("%s%s", LOG_EXEC_INVOCATION_ID_FIELD(ep), (ep)->invocation_id_string)
 
 #define log_exec_struct_errno(ec, ep, level, error, ...)                          \
         ({                                                                        \
index 23dcf6b57f73b465c203b557b2ca14be1cd2104f..bc3566a9fc45f1184fda0e84d32aab46efffe43f 100644 (file)
@@ -252,10 +252,10 @@ static int run(int argc, char *argv[]) {
                                 exit_status_to_string(exit_status, EXIT_STATUS_LIBC | EXIT_STATUS_SYSTEMD));
 
                 log_exec_struct_errno(&context, &params, LOG_ERR, r,
-                                      "MESSAGE_ID=" SD_MESSAGE_SPAWN_FAILED_STR,
+                                      LOG_MESSAGE_ID(SD_MESSAGE_SPAWN_FAILED_STR),
                                       LOG_EXEC_MESSAGE(&params, "Failed at step %s spawning %s: %m",
                                                        status, command.path),
-                                      "EXECUTABLE=%s", command.path);
+                                      LOG_ITEM("EXECUTABLE=%s", command.path));
         } else
                 /* r == 0: 'skip' is chosen in the confirm spawn prompt
                  * r > 0:  expected/ignored failure, do not log at error level */
index 200bebcf8a57ed1355aab7ed1126036233ba82c2..d623f836beab4d87b330d4891b774b474f3e12b9 100644 (file)
@@ -626,8 +626,8 @@ static void job_emit_start_message(Unit *u, uint32_t job_id, JobType t) {
                 DISABLE_WARNING_FORMAT_NONLITERAL;
                 log_unit_struct(u, LOG_INFO,
                                 msg_fmt, ident,
-                                "JOB_ID=%" PRIu32, job_id,
-                                "JOB_TYPE=%s", job_type_to_string(t),
+                                LOG_ITEM("JOB_ID=%" PRIu32, job_id),
+                                LOG_ITEM("JOB_TYPE=%s", job_type_to_string(t)),
                                 LOG_UNIT_INVOCATION_ID(u),
                                 mid);
                 REENABLE_WARNING;
@@ -792,9 +792,9 @@ static void job_emit_done_message(Unit *u, uint32_t job_id, JobType t, JobResult
                                         job_done_messages[result].log_level,
                                         LOG_MESSAGE("%s was skipped because no trigger condition checks were met.",
                                                     ident),
-                                        "JOB_ID=%" PRIu32, job_id,
-                                        "JOB_TYPE=%s", job_type_to_string(t),
-                                        "JOB_RESULT=%s", job_result_to_string(result),
+                                        LOG_ITEM("JOB_ID=%" PRIu32, job_id),
+                                        LOG_ITEM("JOB_TYPE=%s", job_type_to_string(t)),
+                                        LOG_ITEM("JOB_RESULT=%s", job_result_to_string(result)),
                                         LOG_UNIT_INVOCATION_ID(u),
                                         mid);
                         else
@@ -806,9 +806,9 @@ static void job_emit_done_message(Unit *u, uint32_t job_id, JobType t, JobResult
                                                     condition_type_to_string(c->type),
                                                     c->negate ? "!" : "",
                                                     c->parameter),
-                                        "JOB_ID=%" PRIu32, job_id,
-                                        "JOB_TYPE=%s", job_type_to_string(t),
-                                        "JOB_RESULT=%s", job_result_to_string(result),
+                                        LOG_ITEM("JOB_ID=%" PRIu32, job_id),
+                                        LOG_ITEM("JOB_TYPE=%s", job_type_to_string(t)),
+                                        LOG_ITEM("JOB_RESULT=%s", job_result_to_string(result)),
                                         LOG_UNIT_INVOCATION_ID(u),
                                         mid);
                 } else {
@@ -817,9 +817,9 @@ static void job_emit_done_message(Unit *u, uint32_t job_id, JobType t, JobResult
                         DISABLE_WARNING_FORMAT_NONLITERAL;
                         log_unit_struct(u, job_done_messages[result].log_level,
                                         msg_fmt, ident,
-                                        "JOB_ID=%" PRIu32, job_id,
-                                        "JOB_TYPE=%s", job_type_to_string(t),
-                                        "JOB_RESULT=%s", job_result_to_string(result),
+                                        LOG_ITEM("JOB_ID=%" PRIu32, job_id),
+                                        LOG_ITEM("JOB_TYPE=%s", job_type_to_string(t)),
+                                        LOG_ITEM("JOB_RESULT=%s", job_result_to_string(result)),
                                         LOG_UNIT_INVOCATION_ID(u),
                                         mid);
                         REENABLE_WARNING;
@@ -1076,8 +1076,8 @@ int job_finish_and_invalidate(Job *j, JobResult result, bool recursive, bool alr
          * And JOB_FAILURE is already handled by the unit itself (unit_notify). */
         if (IN_SET(result, JOB_TIMEOUT, JOB_DEPENDENCY)) {
                 log_unit_struct(u, LOG_NOTICE,
-                                "JOB_TYPE=%s", job_type_to_string(t),
-                                "JOB_RESULT=%s", job_result_to_string(result),
+                                LOG_ITEM("JOB_TYPE=%s", job_type_to_string(t)),
+                                LOG_ITEM("JOB_RESULT=%s", job_result_to_string(result)),
                                 LOG_UNIT_MESSAGE(u, "Job %s/%s failed with result '%s'.",
                                                  u->id,
                                                  job_type_to_string(t),
index 60e7c2f50db2dbe4a2b502dcac8e2ccc7f9158cc..9600cb46aff057f0efbb603bc65686ad9ddd2721 100644 (file)
@@ -2535,12 +2535,12 @@ int config_parse_user_group_compat(
 
         if (strstr(lvalue, "User") && streq(k, NOBODY_USER_NAME))
                 log_struct(LOG_NOTICE,
-                           "MESSAGE=%s:%u: Special user %s configured, this is not safe!", filename, line, k,
-                           "UNIT=%s", unit,
-                           "MESSAGE_ID=" SD_MESSAGE_NOBODY_USER_UNSUITABLE_STR,
-                           "OFFENDING_USER=%s", k,
-                           "CONFIG_FILE=%s", filename,
-                           "CONFIG_LINE=%u", line);
+                           LOG_MESSAGE("%s:%u: Special user %s configured, this is not safe!", filename, line, k),
+                           LOG_MESSAGE_ID(SD_MESSAGE_NOBODY_USER_UNSUITABLE_STR),
+                           LOG_ITEM("UNIT=%s", unit),
+                           LOG_ITEM("OFFENDING_USER=%s", k),
+                           LOG_ITEM("CONFIG_FILE=%s", filename),
+                           LOG_ITEM("CONFIG_LINE=%u", line));
 
         return free_and_replace(*user, k);
 }
index bca6c96b4e1157725b16a95f42c55bf062b3ad52..6a3984de800b99e2991b24920643a4ff1b2f3565 100644 (file)
@@ -2178,7 +2178,7 @@ static int invoke_main_loop(
                         *ret_error_message = "Failed to run main loop";
                         return log_struct_errno(LOG_EMERG, objective,
                                                 LOG_MESSAGE("Failed to run main loop: %m"),
-                                                "MESSAGE_ID=" SD_MESSAGE_CORE_MAINLOOP_FAILED_STR);
+                                                LOG_MESSAGE_ID(SD_MESSAGE_CORE_MAINLOOP_FAILED_STR));
                 }
 
                 /* Ensure shutdown timestamp is taken even when bypassing the job engine */
@@ -2492,7 +2492,7 @@ static int initialize_runtime(
                                 *ret_error_message = "Failed to drop capability bounding set of usermode helpers";
                                 return log_struct_errno(LOG_EMERG, r,
                                                         LOG_MESSAGE("Failed to drop capability bounding set of usermode helpers: %m"),
-                                                        "MESSAGE_ID=" SD_MESSAGE_CORE_CAPABILITY_BOUNDING_USER_STR);
+                                                        LOG_MESSAGE_ID(SD_MESSAGE_CORE_CAPABILITY_BOUNDING_USER_STR));
                         }
 
                         r = capability_bounding_set_drop(arg_capability_bounding_set, true);
@@ -2500,7 +2500,7 @@ static int initialize_runtime(
                                 *ret_error_message = "Failed to drop capability bounding set";
                                 return log_struct_errno(LOG_EMERG, r,
                                                         LOG_MESSAGE("Failed to drop capability bounding set: %m"),
-                                                        "MESSAGE_ID=" SD_MESSAGE_CORE_CAPABILITY_BOUNDING_STR);
+                                                        LOG_MESSAGE_ID(SD_MESSAGE_CORE_CAPABILITY_BOUNDING_STR));
                         }
                 }
 
@@ -2509,7 +2509,7 @@ static int initialize_runtime(
                                 *ret_error_message = "Failed to disable new privileges";
                                 return log_struct_errno(LOG_EMERG, errno,
                                                         LOG_MESSAGE("Failed to disable new privileges: %m"),
-                                                        "MESSAGE_ID=" SD_MESSAGE_CORE_DISABLE_PRIVILEGES_STR);
+                                                        LOG_MESSAGE_ID(SD_MESSAGE_CORE_DISABLE_PRIVILEGES_STR));
                         }
                 }
 
@@ -2526,7 +2526,7 @@ static int initialize_runtime(
                         *ret_error_message = "$XDG_RUNTIME_DIR is not set";
                         return log_struct_errno(LOG_EMERG, r,
                                                 LOG_MESSAGE("Failed to determine $XDG_RUNTIME_DIR path: %m"),
-                                                "MESSAGE_ID=" SD_MESSAGE_CORE_NO_XDGDIR_PATH_STR);
+                                                LOG_MESSAGE_ID(SD_MESSAGE_CORE_NO_XDGDIR_PATH_STR));
                 }
 
                 if (!skip_setup) {
@@ -2635,14 +2635,14 @@ static int do_queue_default_job(
                         *ret_error_message = "Failed to start default target";
                         return log_struct_errno(LOG_EMERG, r,
                                                 LOG_MESSAGE("Failed to start default target: %s", bus_error_message(&error, r)),
-                                                "MESSAGE_ID=" SD_MESSAGE_CORE_START_TARGET_FAILED_STR);
+                                                LOG_MESSAGE_ID(SD_MESSAGE_CORE_START_TARGET_FAILED_STR));
                 }
 
         } else if (r < 0) {
                 *ret_error_message = "Failed to isolate default target";
                 return log_struct_errno(LOG_EMERG, r,
                                         LOG_MESSAGE("Failed to isolate default target: %s", bus_error_message(&error, r)),
-                                        "MESSAGE_ID=" SD_MESSAGE_CORE_ISOLATE_TARGET_FAILED_STR);
+                                        LOG_MESSAGE_ID(SD_MESSAGE_CORE_ISOLATE_TARGET_FAILED_STR));
         } else
                 log_info("Queued %s job for default target %s.",
                          job_type_to_string(job->type),
@@ -2992,7 +2992,7 @@ static int collect_fds(FDSet **ret_fds, const char **ret_error_message) {
                 *ret_error_message = "Failed to allocate fd set";
                 return log_struct_errno(LOG_EMERG, r,
                                         LOG_MESSAGE("Failed to allocate fd set: %m"),
-                                        "MESSAGE_ID=" SD_MESSAGE_CORE_FD_SET_FAILED_STR);
+                                        LOG_MESSAGE_ID(SD_MESSAGE_CORE_FD_SET_FAILED_STR));
         }
 
         /* The serialization fd should have O_CLOEXEC turned on already, let's verify that we didn't pick it up here */
@@ -3185,7 +3185,7 @@ int main(int argc, char *argv[]) {
                 if (r < 0) {
                         log_struct_errno(LOG_EMERG, r,
                                          LOG_MESSAGE("Failed to fix up PID 1 environment: %m"),
-                                         "MESSAGE_ID=" SD_MESSAGE_CORE_PID1_ENVIRONMENT_STR);
+                                         LOG_MESSAGE_ID(SD_MESSAGE_CORE_PID1_ENVIRONMENT_STR));
                         error_message = "Failed to fix up PID1 environment";
                         goto finish;
                 }
@@ -3342,7 +3342,7 @@ int main(int argc, char *argv[]) {
         if (r < 0) {
                 log_struct_errno(LOG_EMERG, r,
                                  LOG_MESSAGE("Failed to allocate manager object: %m"),
-                                 "MESSAGE_ID=" SD_MESSAGE_CORE_MANAGER_ALLOCATE_STR);
+                                 LOG_MESSAGE_ID(SD_MESSAGE_CORE_MANAGER_ALLOCATE_STR));
                 error_message = "Failed to allocate manager object";
                 goto finish;
         }
index c6c9779976375af7918cf400d9f1d0e139b504d9..f87d439a7b0716a0a8afea0137bccdb8c8e53113 100644 (file)
@@ -947,16 +947,10 @@ int manager_new(RuntimeScope runtime_scope, ManagerTestRunFlags test_run_flags,
         /* Prepare log fields we can use for structured logging */
         if (MANAGER_IS_SYSTEM(m)) {
                 m->unit_log_field = "UNIT=";
-                m->unit_log_format_string = "UNIT=%s";
-
                 m->invocation_log_field = "INVOCATION_ID=";
-                m->invocation_log_format_string = "INVOCATION_ID=%s";
         } else {
                 m->unit_log_field = "USER_UNIT=";
-                m->unit_log_format_string = "USER_UNIT=%s";
-
                 m->invocation_log_field = "USER_INVOCATION_ID=";
-                m->invocation_log_format_string = "USER_INVOCATION_ID=%s";
         }
 
         /* Reboot immediately if the user hits C-A-D more often than 7x per 2s */
@@ -3259,7 +3253,7 @@ static int manager_dispatch_time_change_fd(sd_event_source *source, int fd, uint
         Unit *u;
 
         log_struct(LOG_DEBUG,
-                   "MESSAGE_ID=" SD_MESSAGE_TIME_CHANGE_STR,
+                   LOG_MESSAGE_ID(SD_MESSAGE_TIME_CHANGE_STR),
                    LOG_MESSAGE("Time has been changed"));
 
         /* Restart the watch */
@@ -3788,8 +3782,8 @@ static void log_taint_string(Manager *m) {
 
         log_struct(LOG_NOTICE,
                    LOG_MESSAGE("System is tainted: %s", taint),
-                   "TAINT=%s", taint,
-                   "MESSAGE_ID=" SD_MESSAGE_TAINTED_STR);
+                   LOG_ITEM("TAINT=%s", taint),
+                   LOG_MESSAGE_ID(SD_MESSAGE_TAINTED_STR));
 }
 
 static void manager_notify_finished(Manager *m) {
@@ -3805,8 +3799,8 @@ static void manager_notify_finished(Manager *m) {
                                                                 m->timestamps[MANAGER_TIMESTAMP_SHUTDOWN_START].monotonic);
 
                 log_struct(LOG_INFO,
-                           "MESSAGE_ID=" SD_MESSAGE_STARTUP_FINISHED_STR,
-                           "USERSPACE_USEC="USEC_FMT, userspace_usec,
+                           LOG_MESSAGE_ID(SD_MESSAGE_STARTUP_FINISHED_STR),
+                           LOG_ITEM("USERSPACE_USEC="USEC_FMT, userspace_usec),
                            LOG_MESSAGE("Soft-reboot finished in %s, counter is now at %u.",
                                        FORMAT_TIMESPAN(total_usec, USEC_PER_MSEC),
                                        m->soft_reboots_count));
@@ -3837,10 +3831,10 @@ static void manager_notify_finished(Manager *m) {
                         initrd_usec = m->timestamps[MANAGER_TIMESTAMP_USERSPACE].monotonic - m->timestamps[MANAGER_TIMESTAMP_INITRD].monotonic;
 
                         log_struct(LOG_INFO,
-                                   "MESSAGE_ID=" SD_MESSAGE_STARTUP_FINISHED_STR,
-                                   "KERNEL_USEC="USEC_FMT, kernel_usec,
-                                   "INITRD_USEC="USEC_FMT, initrd_usec,
-                                   "USERSPACE_USEC="USEC_FMT, userspace_usec,
+                                   LOG_MESSAGE_ID(SD_MESSAGE_STARTUP_FINISHED_STR),
+                                   LOG_ITEM("KERNEL_USEC="USEC_FMT, kernel_usec),
+                                   LOG_ITEM("INITRD_USEC="USEC_FMT, initrd_usec),
+                                   LOG_ITEM("USERSPACE_USEC="USEC_FMT, userspace_usec),
                                    LOG_MESSAGE("Startup finished in %s%s (kernel) + %s (initrd) + %s (userspace) = %s.",
                                                buf,
                                                FORMAT_TIMESPAN(kernel_usec, USEC_PER_MSEC),
@@ -3854,9 +3848,9 @@ static void manager_notify_finished(Manager *m) {
                         initrd_usec = 0;
 
                         log_struct(LOG_INFO,
-                                   "MESSAGE_ID=" SD_MESSAGE_STARTUP_FINISHED_STR,
-                                   "KERNEL_USEC="USEC_FMT, kernel_usec,
-                                   "USERSPACE_USEC="USEC_FMT, userspace_usec,
+                                   LOG_MESSAGE_ID(SD_MESSAGE_STARTUP_FINISHED_STR),
+                                   LOG_ITEM("KERNEL_USEC="USEC_FMT, kernel_usec),
+                                   LOG_ITEM("USERSPACE_USEC="USEC_FMT, userspace_usec),
                                    LOG_MESSAGE("Startup finished in %s%s (kernel) + %s (userspace) = %s.",
                                                buf,
                                                FORMAT_TIMESPAN(kernel_usec, USEC_PER_MSEC),
@@ -3869,8 +3863,8 @@ static void manager_notify_finished(Manager *m) {
                 total_usec = userspace_usec = m->timestamps[MANAGER_TIMESTAMP_FINISH].monotonic - m->timestamps[MANAGER_TIMESTAMP_USERSPACE].monotonic;
 
                 log_struct(LOG_INFO,
-                           "MESSAGE_ID=" SD_MESSAGE_USER_STARTUP_FINISHED_STR,
-                           "USERSPACE_USEC="USEC_FMT, userspace_usec,
+                           LOG_MESSAGE_ID(SD_MESSAGE_USER_STARTUP_FINISHED_STR),
+                           LOG_ITEM("USERSPACE_USEC="USEC_FMT, userspace_usec),
                            LOG_MESSAGE("Startup finished in %s.",
                                        FORMAT_TIMESPAN(total_usec, USEC_PER_MSEC)));
         }
index c5bd242968a40d3aa9acc27d57e1a69ddf6f2336..66ad04baf5421a96d6c6477d0de3eef5ea5c0bd1 100644 (file)
@@ -474,10 +474,7 @@ struct Manager {
         EmergencyAction cad_burst_action;
 
         const char *unit_log_field;
-        const char *unit_log_format_string;
-
         const char *invocation_log_field;
-        const char *invocation_log_format_string;
 
         int first_boot; /* tri-state */
 
index dbd8ea55dae0a228c908353d46113ea8fc8f1b94..2a881f2c95c0568f990e8f71343901fba4f5897f 100644 (file)
@@ -1911,8 +1911,8 @@ static int mount_setup_unit(
         if (r < 0)
                 return log_struct_errno(
                                 LOG_WARNING, r,
-                                "MESSAGE_ID=" SD_MESSAGE_MOUNT_POINT_PATH_NOT_SUITABLE_STR,
-                                "MOUNT_POINT=%s", where,
+                                LOG_MESSAGE_ID(SD_MESSAGE_MOUNT_POINT_PATH_NOT_SUITABLE_STR),
+                                LOG_ITEM("MOUNT_POINT=%s", where),
                                 LOG_MESSAGE("Failed to generate valid unit name from mount point path '%s', ignoring mount point: %m",
                                             where));
 
index 89f736b47bb116cf7eb2fffbd65f638cc8556f4d..39f5edc045e89d5cf7a934321e611e2f19185a7e 100644 (file)
@@ -94,7 +94,7 @@ int mac_selinux_setup(bool *loaded_policy) {
                         if (!initialized)
                                 return log_struct_errno(LOG_EMERG, SYNTHETIC_ERRNO(EIO),
                                                         LOG_MESSAGE("Failed to load SELinux policy :%m"),
-                                                        "MESSAGE_ID=" SD_MESSAGE_SELINUX_FAILED_STR);
+                                                        LOG_MESSAGE_ID(SD_MESSAGE_SELINUX_FAILED_STR));
 
                         log_warning("Failed to load new SELinux policy. Continuing with old policy.");
                 } else
index 8f4ed6040b7a274e707218b09d98ecf4260fb178..ede78d611e49058ef79f7ccb1f332bf7d9bd7992 100644 (file)
@@ -2673,12 +2673,12 @@ static void service_enter_restart(Service *s, bool shortcut) {
         s->n_restarts++;
 
         log_unit_struct(UNIT(s), LOG_INFO,
-                        "MESSAGE_ID=" SD_MESSAGE_UNIT_RESTART_SCHEDULED_STR,
+                        LOG_MESSAGE_ID(SD_MESSAGE_UNIT_RESTART_SCHEDULED_STR),
                         LOG_UNIT_INVOCATION_ID(UNIT(s)),
                         LOG_UNIT_MESSAGE(UNIT(s),
                                          "Scheduled restart job%s, restart counter is at %u.",
                                          shortcut ? " immediately on client request" : "", s->n_restarts),
-                        "N_RESTARTS=%u", s->n_restarts);
+                        LOG_ITEM("N_RESTARTS=%u", s->n_restarts));
 
         service_set_state(s, SERVICE_AUTO_RESTART_QUEUED);
 
@@ -4865,7 +4865,7 @@ static void service_notify_message(
         if (strv_contains(tags, "RESTART_RESET=1") && IN_SET(s->state, SERVICE_RUNNING, SERVICE_STOP)) {
                 log_unit_struct(u, LOG_NOTICE,
                                 LOG_UNIT_MESSAGE(u, "Got RESTART_RESET=1, resetting restart counter from %u.", s->n_restarts),
-                                "N_RESTARTS=0",
+                                LOG_ITEM("N_RESTARTS=0"),
                                 LOG_UNIT_INVOCATION_ID(u));
 
                 s->n_restarts = 0;
index 150867b95803a9335253708e1d1293f24ecec921..6d8acc0984fc3e7de77d80318cae021f1c281763 100644 (file)
@@ -380,7 +380,7 @@ int mac_smack_setup(bool *loaded_policy) {
         default:
                 return log_struct_errno(LOG_EMERG, r,
                                         LOG_MESSAGE("Failed to write Smack onlycap list: %m"),
-                                        "MESSAGE_ID=" SD_MESSAGE_SMACK_FAILED_WRITE_STR);
+                                        LOG_MESSAGE_ID(SD_MESSAGE_SMACK_FAILED_WRITE_STR));
         }
 
         *loaded_policy = true;
index 377ea05983f229267ca38e8d003d41a5ab18cac4..7fc0459cd452671f5490b89ab0909b75bd6e878d 100644 (file)
@@ -401,7 +401,7 @@ static int transaction_verify_order_one(Transaction *tr, Job *j, Job *from, unsi
                                                     "Found %s on %s/%s",
                                                     unit_id == array ? "ordering cycle" : "dependency",
                                                     *unit_id, *job_type),
-                                   "%s", strna(unit_ids));
+                                   LOG_ITEM("%s", strna(unit_ids)));
 
                 if (delete) {
                         const char *status;
@@ -411,7 +411,7 @@ static int transaction_verify_order_one(Transaction *tr, Job *j, Job *from, unsi
                                                     "Job %s/%s deleted to break ordering cycle starting with %s/%s",
                                                     delete->unit->id, job_type_to_string(delete->type),
                                                     j->unit->id, job_type_to_string(j->type)),
-                                   "%s", strna(unit_ids));
+                                   LOG_ITEM("%s", strna(unit_ids)));
 
                         if (log_get_show_color())
                                 status = ANSI_HIGHLIGHT_RED " SKIP " ANSI_NORMAL;
@@ -430,7 +430,7 @@ static int transaction_verify_order_one(Transaction *tr, Job *j, Job *from, unsi
                 log_struct(LOG_ERR,
                            LOG_UNIT_MESSAGE(j->unit, "Unable to break cycle starting with %s/%s",
                                             j->unit->id, job_type_to_string(j->type)),
-                           "%s", strna(unit_ids));
+                           LOG_ITEM("%s", strna(unit_ids)));
 
                 return sd_bus_error_setf(e, BUS_ERROR_TRANSACTION_ORDER_IS_CYCLIC,
                                          "Transaction order is cyclic. See system logs for details.");
index ee45faebb61363a1ba91c02f2db89ea61c60956e..c1a3b373a16d81ded88e990ad2858e8d77b971fe 100644 (file)
@@ -5124,10 +5124,10 @@ void unit_warn_if_dir_nonempty(Unit *u, const char* where) {
         }
 
         log_unit_struct(u, LOG_NOTICE,
-                        "MESSAGE_ID=" SD_MESSAGE_OVERMOUNTING_STR,
+                        LOG_MESSAGE_ID(SD_MESSAGE_OVERMOUNTING_STR),
                         LOG_UNIT_INVOCATION_ID(u),
                         LOG_UNIT_MESSAGE(u, "Directory %s to mount over is not empty, mounting anyway.", where),
-                        "WHERE=%s", where);
+                        LOG_ITEM("WHERE=%s", where));
 }
 
 int unit_log_noncanonical_mount_path(Unit *u, const char *where) {
@@ -5136,10 +5136,10 @@ int unit_log_noncanonical_mount_path(Unit *u, const char *where) {
 
         /* No need to mention "." or "..", they would already have been rejected by unit_name_from_path() */
         log_unit_struct(u, LOG_ERR,
-                        "MESSAGE_ID=" SD_MESSAGE_NON_CANONICAL_MOUNT_STR,
+                        LOG_MESSAGE_ID(SD_MESSAGE_NON_CANONICAL_MOUNT_STR),
                         LOG_UNIT_INVOCATION_ID(u),
                         LOG_UNIT_MESSAGE(u, "Mount path %s is not canonical (contains a symlink).", where),
-                        "WHERE=%s", where);
+                        LOG_ITEM("WHERE=%s", where));
 
         return -ELOOP;
 }
@@ -6064,7 +6064,7 @@ void unit_log_success(Unit *u) {
          * a lot of devices. */
         log_unit_struct(u,
                         MANAGER_IS_USER(u->manager) ? LOG_DEBUG : LOG_INFO,
-                        "MESSAGE_ID=" SD_MESSAGE_UNIT_SUCCESS_STR,
+                        LOG_MESSAGE_ID(SD_MESSAGE_UNIT_SUCCESS_STR),
                         LOG_UNIT_INVOCATION_ID(u),
                         LOG_UNIT_MESSAGE(u, "Deactivated successfully."));
 }
@@ -6074,10 +6074,10 @@ void unit_log_failure(Unit *u, const char *result) {
         assert(result);
 
         log_unit_struct(u, LOG_WARNING,
-                        "MESSAGE_ID=" SD_MESSAGE_UNIT_FAILURE_RESULT_STR,
+                        LOG_MESSAGE_ID(SD_MESSAGE_UNIT_FAILURE_RESULT_STR),
                         LOG_UNIT_INVOCATION_ID(u),
                         LOG_UNIT_MESSAGE(u, "Failed with result '%s'.", result),
-                        "UNIT_RESULT=%s", result);
+                        LOG_ITEM("UNIT_RESULT=%s", result));
 }
 
 void unit_log_skip(Unit *u, const char *result) {
@@ -6085,10 +6085,10 @@ void unit_log_skip(Unit *u, const char *result) {
         assert(result);
 
         log_unit_struct(u, LOG_INFO,
-                        "MESSAGE_ID=" SD_MESSAGE_UNIT_SKIPPED_STR,
+                        LOG_MESSAGE_ID(SD_MESSAGE_UNIT_SKIPPED_STR),
                         LOG_UNIT_INVOCATION_ID(u),
                         LOG_UNIT_MESSAGE(u, "Skipped due to '%s'.", result),
-                        "UNIT_RESULT=%s", result);
+                        LOG_ITEM("UNIT_RESULT=%s", result));
 }
 
 void unit_log_process_exit(
@@ -6116,7 +6116,7 @@ void unit_log_process_exit(
                 level = LOG_WARNING;
 
         log_unit_struct(u, level,
-                        "MESSAGE_ID=" SD_MESSAGE_UNIT_PROCESS_EXIT_STR,
+                        LOG_MESSAGE_ID(SD_MESSAGE_UNIT_PROCESS_EXIT_STR),
                         LOG_UNIT_MESSAGE(u, "%s exited, code=%s, status=%i/%s%s",
                                          kind,
                                          sigchld_code_to_string(code), status,
@@ -6124,9 +6124,9 @@ void unit_log_process_exit(
                                                ? exit_status_to_string(status, EXIT_STATUS_FULL)
                                                : signal_to_string(status)),
                                          success ? " (success)" : ""),
-                        "EXIT_CODE=%s", sigchld_code_to_string(code),
-                        "EXIT_STATUS=%i", status,
-                        "COMMAND=%s", strna(command),
+                        LOG_ITEM("EXIT_CODE=%s", sigchld_code_to_string(code)),
+                        LOG_ITEM("EXIT_STATUS=%i", status),
+                        LOG_ITEM("COMMAND=%s", strna(command)),
                         LOG_UNIT_INVOCATION_ID(u));
 }
 
index 4b19d8f0f751744bdbf15fff95edd7e38aae333a..dbaeebda8e6db5da9b0f8055e16121d405233922 100644 (file)
@@ -1146,8 +1146,8 @@ UnitDependency unit_mount_dependency_type_to_dependency_type(UnitMountDependency
 
 /* Like LOG_MESSAGE(), but with the unit name prefixed. */
 #define LOG_UNIT_MESSAGE(unit, fmt, ...) LOG_MESSAGE("%s: " fmt, (unit)->id, ##__VA_ARGS__)
-#define LOG_UNIT_ID(unit) (unit)->manager->unit_log_format_string, (unit)->id
-#define LOG_UNIT_INVOCATION_ID(unit) (unit)->manager->invocation_log_format_string, (unit)->invocation_id_string
+#define LOG_UNIT_ID(unit) LOG_ITEM("%s%s", (unit)->manager->unit_log_field, (unit)->id)
+#define LOG_UNIT_INVOCATION_ID(unit) LOG_ITEM("%s%s", (unit)->manager->invocation_log_field, (unit)->invocation_id_string)
 
 const char* collect_mode_to_string(CollectMode m) _const_;
 CollectMode collect_mode_from_string(const char *s) _pure_;
index 03690a0837bf89521932afbbd65a557cf1a23e83..0c81922e077e5f6330ffc31016bb2732338001a6 100644 (file)
@@ -619,8 +619,8 @@ static int save_external_coredump(
         if (truncated)
                 log_struct(LOG_INFO,
                            LOG_MESSAGE("Core file was truncated to %"PRIu64" bytes.", max_size),
-                           "SIZE_LIMIT=%"PRIu64, max_size,
-                           "MESSAGE_ID=" SD_MESSAGE_TRUNCATED_CORE_STR);
+                           LOG_ITEM("SIZE_LIMIT=%"PRIu64, max_size),
+                           LOG_MESSAGE_ID(SD_MESSAGE_TRUNCATED_CORE_STR));
 
         r = fix_permissions(fd, tmp, fn, context, allow_user);
         if (r < 0)
index d109d0914ffd27d25867ac855b06180ca2402270..e1eadde498786c76ec02c1dfff4775e8e12b8076 100644 (file)
@@ -1038,11 +1038,11 @@ static int measure_volume_key(
                 return log_error_errno(r, "Could not extend PCR: %m");
 
         log_struct(LOG_INFO,
-                   "MESSAGE_ID=" SD_MESSAGE_TPM_PCR_EXTEND_STR,
+                   LOG_MESSAGE_ID(SD_MESSAGE_TPM_PCR_EXTEND_STR),
                    LOG_MESSAGE("Successfully extended PCR index %u with '%s' and volume key (banks %s).", arg_tpm2_measure_pcr, s, joined),
-                   "MEASURING=%s", s,
-                   "PCR=%u", arg_tpm2_measure_pcr,
-                   "BANKS=%s", joined);
+                   LOG_ITEM("MEASURING=%s", s),
+                   LOG_ITEM("PCR=%u", arg_tpm2_measure_pcr),
+                   LOG_ITEM("BANKS=%s", joined));
 
         return 0;
 #else
index 64d01c5457239d923878179afd102bba9e34625b..599a81d64a2db8e6023865476a563b08874a1594 100644 (file)
@@ -1891,15 +1891,15 @@ _public_ int sd_event_trim_memory(void) {
                    LOG_MESSAGE("Memory trimming took %s, returned %s to OS.",
                                FORMAT_TIMESPAN(period, 0),
                                FORMAT_BYTES(l)),
-                   "MESSAGE_ID=" SD_MESSAGE_MEMORY_TRIM_STR,
-                   "TRIMMED_BYTES=%zu", l,
-                   "TRIMMED_USEC=" USEC_FMT, period);
+                   LOG_MESSAGE_ID(SD_MESSAGE_MEMORY_TRIM_STR),
+                   LOG_ITEM("TRIMMED_BYTES=%zu", l),
+                   LOG_ITEM("TRIMMED_USEC=" USEC_FMT, period));
 #else
         log_struct(LOG_DEBUG,
                    LOG_MESSAGE("Memory trimming took %s.",
                                FORMAT_TIMESPAN(period, 0)),
-                   "MESSAGE_ID=" SD_MESSAGE_MEMORY_TRIM_STR,
-                   "TRIMMED_USEC=" USEC_FMT, period);
+                   LOG_MESSAGE_ID(SD_MESSAGE_MEMORY_TRIM_STR),
+                   LOG_ITEM("TRIMMED_USEC=" USEC_FMT, period));
 #endif
 
         return 0;
index 4f641fbd71bbc09f941a81a59b03cd77c9b31b5c..618ce93978cc097bb58d99cc99112ef6cacae63a 100644 (file)
@@ -5040,10 +5040,10 @@ int json_log_internal(
                                 level,
                                 error,
                                 file, line, func,
-                                "MESSAGE_ID=" SD_MESSAGE_INVALID_CONFIGURATION_STR,
-                                "CONFIG_FILE=%s", source,
-                                "CONFIG_LINE=%u", source_line,
-                                "CONFIG_COLUMN=%u", source_column,
+                                LOG_MESSAGE_ID(SD_MESSAGE_INVALID_CONFIGURATION_STR),
+                                LOG_ITEM("CONFIG_FILE=%s", source),
+                                LOG_ITEM("CONFIG_LINE=%u", source_line),
+                                LOG_ITEM("CONFIG_COLUMN=%u", source_column),
                                 LOG_MESSAGE("%s:%u:%u: %s", source, source_line, source_column, buffer),
                                 NULL);
         else if (source_line > 0 && source_column > 0)
@@ -5051,9 +5051,9 @@ int json_log_internal(
                                 level,
                                 error,
                                 file, line, func,
-                                "MESSAGE_ID=" SD_MESSAGE_INVALID_CONFIGURATION_STR,
-                                "CONFIG_LINE=%u", source_line,
-                                "CONFIG_COLUMN=%u", source_column,
+                                LOG_MESSAGE_ID(SD_MESSAGE_INVALID_CONFIGURATION_STR),
+                                LOG_ITEM("CONFIG_LINE=%u", source_line),
+                                LOG_ITEM("CONFIG_COLUMN=%u", source_column),
                                 LOG_MESSAGE("(string):%u:%u: %s", source_line, source_column, buffer),
                                 NULL);
         else
@@ -5061,7 +5061,7 @@ int json_log_internal(
                                 level,
                                 error,
                                 file, line, func,
-                                "MESSAGE_ID=" SD_MESSAGE_INVALID_CONFIGURATION_STR,
+                                LOG_MESSAGE_ID(SD_MESSAGE_INVALID_CONFIGURATION_STR),
                                 LOG_MESSAGE("%s", buffer),
                                 NULL);
 }
index 2ce8f628a381cb608da61ec48b2b971097977dfb..f86f8f4536e56e7212a2bce95ab611d7eb1a58be 100644 (file)
@@ -328,8 +328,8 @@ static int manager_handle_action_secure_attention_key(
 
         log_struct(LOG_INFO,
                    LOG_MESSAGE("Secure Attention Key sequence pressed on seat %s", seat),
-                   "MESSAGE_ID=" SD_MESSAGE_SECURE_ATTENTION_KEY_PRESS_STR,
-                   "SEAT_ID=%s", seat);
+                   LOG_MESSAGE_ID(SD_MESSAGE_SECURE_ATTENTION_KEY_PRESS_STR),
+                   LOG_ITEM("SEAT_ID=%s", seat));
 
         r = sd_bus_emit_signal(
                         m->bus,
index bb290fed71a2336f0d0b6fd9ed43acd368c489c7..2b6b1dc4638d05d33c46067e86273afbfb77c9cb 100644 (file)
@@ -171,7 +171,7 @@ static int long_press_of_power_key_handler(sd_event_source *e, uint64_t usec, vo
 
         log_struct(LOG_INFO,
                    LOG_MESSAGE("Power key pressed long."),
-                   "MESSAGE_ID=" SD_MESSAGE_POWER_KEY_LONG_PRESS_STR);
+                   LOG_MESSAGE_ID(SD_MESSAGE_POWER_KEY_LONG_PRESS_STR));
 
         manager_handle_action(m, INHIBIT_HANDLE_POWER_KEY, m->handle_power_key_long_press, m->power_key_ignore_inhibited, /* is_edge= */ true, b->seat);
         return 0;
@@ -187,7 +187,7 @@ static int long_press_of_reboot_key_handler(sd_event_source *e, uint64_t usec, v
 
         log_struct(LOG_INFO,
                    LOG_MESSAGE("Reboot key pressed long."),
-                   "MESSAGE_ID=" SD_MESSAGE_REBOOT_KEY_LONG_PRESS_STR);
+                   LOG_MESSAGE_ID(SD_MESSAGE_REBOOT_KEY_LONG_PRESS_STR));
 
         manager_handle_action(m, INHIBIT_HANDLE_REBOOT_KEY, m->handle_reboot_key_long_press, m->reboot_key_ignore_inhibited, /* is_edge= */ true, b->seat);
         return 0;
@@ -203,7 +203,7 @@ static int long_press_of_suspend_key_handler(sd_event_source *e, uint64_t usec,
 
         log_struct(LOG_INFO,
                    LOG_MESSAGE("Suspend key pressed long."),
-                   "MESSAGE_ID=" SD_MESSAGE_SUSPEND_KEY_LONG_PRESS_STR);
+                   LOG_MESSAGE_ID(SD_MESSAGE_SUSPEND_KEY_LONG_PRESS_STR));
 
         manager_handle_action(m, INHIBIT_HANDLE_SUSPEND_KEY, m->handle_suspend_key_long_press, m->suspend_key_ignore_inhibited, /* is_edge= */ true, b->seat);
         return 0;
@@ -219,7 +219,7 @@ static int long_press_of_hibernate_key_handler(sd_event_source *e, uint64_t usec
 
         log_struct(LOG_INFO,
                    LOG_MESSAGE("Hibernate key pressed long."),
-                   "MESSAGE_ID=" SD_MESSAGE_HIBERNATE_KEY_LONG_PRESS_STR);
+                   LOG_MESSAGE_ID(SD_MESSAGE_HIBERNATE_KEY_LONG_PRESS_STR));
 
         manager_handle_action(m, INHIBIT_HANDLE_HIBERNATE_KEY, m->handle_hibernate_key_long_press, m->hibernate_key_ignore_inhibited, /* is_edge= */ true, b->seat);
         return 0;
@@ -272,7 +272,7 @@ static int button_dispatch(sd_event_source *s, int fd, uint32_t revents, void *u
                         } else {
                                 log_struct(LOG_INFO,
                                            LOG_MESSAGE("Power key pressed short."),
-                                           "MESSAGE_ID=" SD_MESSAGE_POWER_KEY_STR);
+                                           LOG_MESSAGE_ID(SD_MESSAGE_POWER_KEY_STR));
                                 manager_handle_action(b->manager, INHIBIT_HANDLE_POWER_KEY, b->manager->handle_power_key, b->manager->power_key_ignore_inhibited, /* is_edge= */ true, b->seat);
                         }
                         break;
@@ -289,7 +289,7 @@ static int button_dispatch(sd_event_source *s, int fd, uint32_t revents, void *u
                         } else {
                                 log_struct(LOG_INFO,
                                            LOG_MESSAGE("Reboot key pressed short."),
-                                           "MESSAGE_ID=" SD_MESSAGE_REBOOT_KEY_STR);
+                                           LOG_MESSAGE_ID(SD_MESSAGE_REBOOT_KEY_STR));
                                 manager_handle_action(b->manager, INHIBIT_HANDLE_REBOOT_KEY, b->manager->handle_reboot_key, b->manager->reboot_key_ignore_inhibited, /* is_edge= */ true, b->seat);
                         }
                         break;
@@ -307,7 +307,7 @@ static int button_dispatch(sd_event_source *s, int fd, uint32_t revents, void *u
                         } else {
                                 log_struct(LOG_INFO,
                                            LOG_MESSAGE("Suspend key pressed short."),
-                                           "MESSAGE_ID=" SD_MESSAGE_SUSPEND_KEY_STR);
+                                           LOG_MESSAGE_ID(SD_MESSAGE_SUSPEND_KEY_STR));
                                 manager_handle_action(b->manager, INHIBIT_HANDLE_SUSPEND_KEY, b->manager->handle_suspend_key, b->manager->suspend_key_ignore_inhibited, /* is_edge= */ true, b->seat);
                         }
                         break;
@@ -319,7 +319,7 @@ static int button_dispatch(sd_event_source *s, int fd, uint32_t revents, void *u
                         } else {
                                 log_struct(LOG_INFO,
                                            LOG_MESSAGE("Hibernate key pressed short."),
-                                           "MESSAGE_ID=" SD_MESSAGE_HIBERNATE_KEY_STR);
+                                           LOG_MESSAGE_ID(SD_MESSAGE_HIBERNATE_KEY_STR));
                                 manager_handle_action(b->manager, INHIBIT_HANDLE_HIBERNATE_KEY, b->manager->handle_hibernate_key, b->manager->hibernate_key_ignore_inhibited, /* is_edge= */ true, b->seat);
                         }
                         break;
@@ -353,7 +353,7 @@ static int button_dispatch(sd_event_source *s, int fd, uint32_t revents, void *u
                                 */
                                 log_struct(LOG_INFO,
                                            LOG_MESSAGE("Power key pressed short."),
-                                           "MESSAGE_ID=" SD_MESSAGE_POWER_KEY_STR);
+                                           LOG_MESSAGE_ID(SD_MESSAGE_POWER_KEY_STR));
 
                                 b->manager->power_key_long_press_event_source = sd_event_source_unref(b->manager->power_key_long_press_event_source);
 
@@ -365,7 +365,7 @@ static int button_dispatch(sd_event_source *s, int fd, uint32_t revents, void *u
                         if (b->manager->reboot_key_long_press_event_source) {
                                 log_struct(LOG_INFO,
                                            LOG_MESSAGE("Reboot key pressed short."),
-                                           "MESSAGE_ID=" SD_MESSAGE_REBOOT_KEY_STR);
+                                           LOG_MESSAGE_ID(SD_MESSAGE_REBOOT_KEY_STR));
 
                                 b->manager->reboot_key_long_press_event_source = sd_event_source_unref(b->manager->reboot_key_long_press_event_source);
 
@@ -377,7 +377,7 @@ static int button_dispatch(sd_event_source *s, int fd, uint32_t revents, void *u
                         if (b->manager->suspend_key_long_press_event_source) {
                                 log_struct(LOG_INFO,
                                            LOG_MESSAGE("Suspend key pressed short."),
-                                           "MESSAGE_ID=" SD_MESSAGE_SUSPEND_KEY_STR);
+                                           LOG_MESSAGE_ID(SD_MESSAGE_SUSPEND_KEY_STR));
 
                                 b->manager->suspend_key_long_press_event_source = sd_event_source_unref(b->manager->suspend_key_long_press_event_source);
 
@@ -388,7 +388,7 @@ static int button_dispatch(sd_event_source *s, int fd, uint32_t revents, void *u
                         if (b->manager->hibernate_key_long_press_event_source) {
                                 log_struct(LOG_INFO,
                                            LOG_MESSAGE("Hibernate key pressed short."),
-                                           "MESSAGE_ID=" SD_MESSAGE_HIBERNATE_KEY_STR);
+                                           LOG_MESSAGE_ID(SD_MESSAGE_HIBERNATE_KEY_STR));
 
                                 b->manager->hibernate_key_long_press_event_source = sd_event_source_unref(b->manager->hibernate_key_long_press_event_source);
 
@@ -408,7 +408,7 @@ static int button_dispatch(sd_event_source *s, int fd, uint32_t revents, void *u
                 if (ev.code == SW_LID) {
                         log_struct(LOG_INFO,
                                    LOG_MESSAGE("Lid closed."),
-                                   "MESSAGE_ID=" SD_MESSAGE_LID_CLOSED_STR);
+                                   LOG_MESSAGE_ID(SD_MESSAGE_LID_CLOSED_STR));
 
                         b->lid_closed = true;
                         button_lid_switch_handle_action(b->manager, /* is_edge= */ true, b->seat);
@@ -418,7 +418,7 @@ static int button_dispatch(sd_event_source *s, int fd, uint32_t revents, void *u
                 } else if (ev.code == SW_DOCK) {
                         log_struct(LOG_INFO,
                                    LOG_MESSAGE("System docked."),
-                                   "MESSAGE_ID=" SD_MESSAGE_SYSTEM_DOCKED_STR);
+                                   LOG_MESSAGE_ID(SD_MESSAGE_SYSTEM_DOCKED_STR));
 
                         b->docked = true;
                 }
@@ -428,7 +428,7 @@ static int button_dispatch(sd_event_source *s, int fd, uint32_t revents, void *u
                 if (ev.code == SW_LID) {
                         log_struct(LOG_INFO,
                                    LOG_MESSAGE("Lid opened."),
-                                   "MESSAGE_ID=" SD_MESSAGE_LID_OPENED_STR);
+                                   LOG_MESSAGE_ID(SD_MESSAGE_LID_OPENED_STR));
 
                         b->lid_closed = false;
                         b->check_event_source = sd_event_source_unref(b->check_event_source);
@@ -437,7 +437,7 @@ static int button_dispatch(sd_event_source *s, int fd, uint32_t revents, void *u
                 } else if (ev.code == SW_DOCK) {
                         log_struct(LOG_INFO,
                                    LOG_MESSAGE("System undocked."),
-                                   "MESSAGE_ID=" SD_MESSAGE_SYSTEM_UNDOCKED_STR);
+                                   LOG_MESSAGE_ID(SD_MESSAGE_SYSTEM_UNDOCKED_STR));
 
                         b->docked = false;
                 }
index 984e60b4b4ff5e08ee8ee03a15f51cd7cd83a777..7bec9e644d732b3e6fee2584efe66407cdff2051 100644 (file)
@@ -1875,7 +1875,7 @@ static int bus_manager_log_shutdown(
         const char *log_verb = a->log_verb ? strjoina("SHUTDOWN=", a->log_verb) : NULL;
 
         return log_struct(LOG_NOTICE,
-                          "MESSAGE_ID=%s", a->message_id ?: SD_MESSAGE_SHUTDOWN_STR,
+                          LOG_ITEM("MESSAGE_ID=%s", a->message_id ?: SD_MESSAGE_SHUTDOWN_STR),
                           LOG_MESSAGE("%s%s%s%s.",
                                       message,
                                       m->wall_message ? " (" : "",
@@ -2866,8 +2866,8 @@ static int method_cancel_scheduled_shutdown(sd_bus_message *message, void *userd
 
                 log_struct(LOG_INFO,
                            LOG_MESSAGE("System shutdown has been cancelled"),
-                           "ACTION=%s", handle_action_to_string(a->handle),
-                           "MESSAGE_ID=" SD_MESSAGE_SHUTDOWN_CANCELED_STR,
+                           LOG_ITEM("ACTION=%s", handle_action_to_string(a->handle)),
+                           LOG_MESSAGE_ID(SD_MESSAGE_SHUTDOWN_CANCELED_STR),
                            username ? "OPERATOR=%s" : NULL, username);
 
                 (void) wall("System shutdown has been cancelled",
index 7ad34364cf4d63e0f35c903439217840d0c075a2..8e518db865dda4bf9d5ae62450c4a850d6b7863e 100644 (file)
@@ -860,12 +860,12 @@ int session_start(Session *s, sd_bus_message *properties, sd_bus_error *error) {
                 return r;
 
         log_struct(s->class == SESSION_BACKGROUND ? LOG_DEBUG : LOG_INFO,
-                   "MESSAGE_ID=" SD_MESSAGE_SESSION_START_STR,
-                   "SESSION_ID=%s", s->id,
-                   "USER_ID=%s", s->user->user_record->user_name,
-                   "LEADER="PID_FMT, s->leader.pid,
-                   "CLASS=%s", session_class_to_string(s->class),
-                   "TYPE=%s", session_type_to_string(s->type),
+                   LOG_MESSAGE_ID(SD_MESSAGE_SESSION_START_STR),
+                   LOG_ITEM("SESSION_ID=%s", s->id),
+                   LOG_ITEM("USER_ID=%s", s->user->user_record->user_name),
+                   LOG_ITEM("LEADER="PID_FMT, s->leader.pid),
+                   LOG_ITEM("CLASS=%s", session_class_to_string(s->class)),
+                   LOG_ITEM("TYPE=%s", session_type_to_string(s->type)),
                    LOG_MESSAGE("New session '%s' of user '%s' with class '%s' and type '%s'.",
                                s->id,
                                s->user->user_record->user_name,
@@ -937,9 +937,9 @@ static int session_stop_scope(Session *s, bool force) {
                  * Therefore session stop and session removal may be two distinct events.
                  * Session stop is quite significant on its own, let's log it. */
                 log_struct(s->class == SESSION_BACKGROUND ? LOG_DEBUG : LOG_INFO,
-                           "SESSION_ID=%s", s->id,
-                           "USER_ID=%s", s->user->user_record->user_name,
-                           "LEADER="PID_FMT, s->leader.pid,
+                           LOG_ITEM("SESSION_ID=%s", s->id),
+                           LOG_ITEM("USER_ID=%s", s->user->user_record->user_name),
+                           LOG_ITEM("LEADER="PID_FMT, s->leader.pid),
                            LOG_MESSAGE("Session %s logged out. Waiting for processes to exit.", s->id));
         }
 
@@ -994,10 +994,10 @@ int session_finalize(Session *s) {
 
         if (s->started)
                 log_struct(s->class == SESSION_BACKGROUND ? LOG_DEBUG : LOG_INFO,
-                           "MESSAGE_ID=" SD_MESSAGE_SESSION_STOP_STR,
-                           "SESSION_ID=%s", s->id,
-                           "USER_ID=%s", s->user->user_record->user_name,
-                           "LEADER="PID_FMT, s->leader.pid,
+                           LOG_MESSAGE_ID(SD_MESSAGE_SESSION_STOP_STR),
+                           LOG_ITEM("SESSION_ID=%s", s->id),
+                           LOG_ITEM("USER_ID=%s", s->user->user_record->user_name),
+                           LOG_ITEM("LEADER="PID_FMT, s->leader.pid),
                            LOG_MESSAGE("Removed session %s.", s->id));
 
         s->timer_event_source = sd_event_source_unref(s->timer_event_source);
index ff70a595f1577f472548ba173247e5295fd0fbc4..85d5d7c4a22ebf0518c320e8a1c3ee58ce5cdaa4 100644 (file)
@@ -84,8 +84,8 @@ static int warn_wall(Manager *m, usec_t n) {
 
         log_struct(level,
                    LOG_MESSAGE("%s", l),
-                   "ACTION=%s", handle_action_to_string(m->scheduled_shutdown_action),
-                   "MESSAGE_ID=" SD_MESSAGE_SHUTDOWN_SCHEDULED_STR,
+                   LOG_ITEM("ACTION=%s", handle_action_to_string(m->scheduled_shutdown_action)),
+                   LOG_MESSAGE_ID(SD_MESSAGE_SHUTDOWN_SCHEDULED_STR),
                    username ? "OPERATOR=%s" : NULL, username);
 
         if (m->enable_wall_messages)
index 92d74a5aac6ebd9151eff4df242686a4d8c597b8..0568b22c461fb4c5bdeefb21bec7970ef2223522 100644 (file)
@@ -537,9 +537,9 @@ int machine_start(Machine *m, sd_bus_message *properties, sd_bus_error *error) {
                 return r;
 
         log_struct(LOG_INFO,
-                   "MESSAGE_ID=" SD_MESSAGE_MACHINE_START_STR,
-                   "NAME=%s", m->name,
-                   "LEADER="PID_FMT, m->leader.pid,
+                   LOG_MESSAGE_ID(SD_MESSAGE_MACHINE_START_STR),
+                   LOG_ITEM("NAME=%s", m->name),
+                   LOG_ITEM("LEADER="PID_FMT, m->leader.pid),
                    LOG_MESSAGE("New machine %s.", m->name));
 
         if (!dual_timestamp_is_set(&m->timestamp))
@@ -586,9 +586,9 @@ int machine_finalize(Machine *m) {
 
         if (m->started) {
                 log_struct(LOG_INFO,
-                           "MESSAGE_ID=" SD_MESSAGE_MACHINE_STOP_STR,
-                           "NAME=%s", m->name,
-                           "LEADER="PID_FMT, m->leader.pid,
+                           LOG_MESSAGE_ID(SD_MESSAGE_MACHINE_STOP_STR),
+                           LOG_ITEM("NAME=%s", m->name),
+                           LOG_ITEM("LEADER="PID_FMT, m->leader.pid),
                            LOG_MESSAGE("Machine %s terminated.", m->name));
 
                 m->stopping = true; /* The machine is supposed to be going away. Don't try to kill it. */
index 706eba6d27648f48ea8050f2cb53b84b60ffa9f2..85493334f5e7929b2d2ec84e7687090b384044f9 100644 (file)
@@ -956,9 +956,9 @@ static int dhcp4_request_address(Link *link, bool announce) {
                                                     prefixlen,
                                                     IPV4_ADDRESS_FMT_VAL(router[0]),
                                                     IPV4_ADDRESS_FMT_VAL(server)),
-                                   "ADDRESS="IPV4_ADDRESS_FMT_STR, IPV4_ADDRESS_FMT_VAL(address),
-                                   "PREFIXLEN=%u", prefixlen,
-                                   "GATEWAY="IPV4_ADDRESS_FMT_STR, IPV4_ADDRESS_FMT_VAL(router[0]));
+                                   LOG_ITEM("ADDRESS="IPV4_ADDRESS_FMT_STR, IPV4_ADDRESS_FMT_VAL(address)),
+                                   LOG_ITEM("PREFIXLEN=%u", prefixlen),
+                                   LOG_ITEM("GATEWAY="IPV4_ADDRESS_FMT_STR, IPV4_ADDRESS_FMT_VAL(router[0])));
                 else
                         log_struct(LOG_INFO,
                                    LOG_LINK_INTERFACE(link),
@@ -966,8 +966,8 @@ static int dhcp4_request_address(Link *link, bool announce) {
                                                     IPV4_ADDRESS_FMT_VAL(address),
                                                     prefixlen,
                                                     IPV4_ADDRESS_FMT_VAL(server)),
-                                   "ADDRESS="IPV4_ADDRESS_FMT_STR, IPV4_ADDRESS_FMT_VAL(address),
-                                   "PREFIXLEN=%u", prefixlen);
+                                   LOG_ITEM("ADDRESS="IPV4_ADDRESS_FMT_STR, IPV4_ADDRESS_FMT_VAL(address)),
+                                   LOG_ITEM("PREFIXLEN=%u", prefixlen));
         }
 
         r = address_new(&addr);
index d6d9fe81ebf6a86198472c9fab8675ab85226b97..d9ee26abf83f3e25996c520065b141d11901826a 100644 (file)
@@ -67,13 +67,13 @@ static int sysctl_event_handler(void *ctx, void *data, size_t data_sz) {
 
         if (!strneq(value, we->newvalue, sizeof(we->newvalue)))
                 log_struct(LOG_WARNING,
-                           "MESSAGE_ID=" SD_MESSAGE_SYSCTL_CHANGED_STR,
-                           "OBJECT_PID=" PID_FMT, we->pid,
-                           "OBJECT_COMM=%s", we->comm,
-                           "SYSCTL=%s", path,
-                           "OLDVALUE=%s", we->current,
-                           "NEWVALUE=%s", we->newvalue,
-                           "OURVALUE=%s", value,
+                           LOG_MESSAGE_ID(SD_MESSAGE_SYSCTL_CHANGED_STR),
+                           LOG_ITEM("OBJECT_PID=" PID_FMT, we->pid),
+                           LOG_ITEM("OBJECT_COMM=%s", we->comm),
+                           LOG_ITEM("SYSCTL=%s", path),
+                           LOG_ITEM("OLDVALUE=%s", we->current),
+                           LOG_ITEM("NEWVALUE=%s", we->newvalue),
+                           LOG_ITEM("OURVALUE=%s", value),
                            LOG_MESSAGE("Foreign process '%s[" PID_FMT "]' changed sysctl '%s' from '%s' to '%s', conflicting with our setting to '%s'.",
                                        we->comm, we->pid, path, we->current, we->newvalue, value));
 
index 54c31c3a82e75e51ddc23f6249231fdf49333b3e..f54fb85343d112effd18f6572b5f89d070f0fa48 100644 (file)
@@ -238,11 +238,11 @@ static int extend_now(unsigned pcr, const void *data, size_t size, Tpm2Userspace
                 return log_error_errno(r, "Could not extend PCR: %m");
 
         log_struct(LOG_INFO,
-                   "MESSAGE_ID=" SD_MESSAGE_TPM_PCR_EXTEND_STR,
+                   LOG_MESSAGE_ID(SD_MESSAGE_TPM_PCR_EXTEND_STR),
                    LOG_MESSAGE("Extended PCR index %u with '%s' (banks %s).", pcr, safe, joined_banks),
-                   "MEASURING=%s", safe,
-                   "PCR=%u", pcr,
-                   "BANKS=%s", joined_banks);
+                   LOG_ITEM("MEASURING=%s", safe),
+                   LOG_ITEM("PCR=%u", pcr),
+                   LOG_ITEM("BANKS=%s", joined_banks));
 
         return 0;
 }
index 15e0156f90f196c58ff0ca95b83ca6049daa501b..84fc4fa70648bedfac00dd16c3c6f11916d09a18 100644 (file)
@@ -1602,7 +1602,7 @@ static void log_portable_verb(
                                isempty(profile) ? "" : "' using profile '",
                                strempty(profile)),
                    message_id,
-                   "PORTABLE_ROOT=%s", strna(root_base_name));
+                   LOG_ITEM("PORTABLE_ROOT=%s", strna(root_base_name)));
 }
 
 int portable_attach(
index 54d0d32ec5d962d9c5c61544e34d373ad304af12..fbdd886254a3e77b644569426ae71b6148267a1e 100644 (file)
@@ -734,11 +734,11 @@ void dns_server_warn_downgrade(DnsServer *server) {
                 return;
 
         log_struct(LOG_NOTICE,
-                   "MESSAGE_ID=" SD_MESSAGE_DNSSEC_DOWNGRADE_STR,
+                   LOG_MESSAGE_ID(SD_MESSAGE_DNSSEC_DOWNGRADE_STR),
                    LOG_MESSAGE("Server %s does not support DNSSEC, downgrading to non-DNSSEC mode.",
                                strna(dns_server_string_full(server))),
-                   "DNS_SERVER=%s", strna(dns_server_string_full(server)),
-                   "DNS_SERVER_FEATURE_LEVEL=%s", dns_server_feature_level_to_string(server->possible_feature_level));
+                   LOG_ITEM("DNS_SERVER=%s", strna(dns_server_string_full(server))),
+                   LOG_ITEM("DNS_SERVER_FEATURE_LEVEL=%s", dns_server_feature_level_to_string(server->possible_feature_level)));
 
         server->warned_downgrade = true;
 }
index 3e26f8390efc2884623cd6fb4a909a8bd3f051b5..7b7bd05871ee6f287b1a3dae5a5d0a94b7c2a9c7 100644 (file)
@@ -401,14 +401,14 @@ void dns_transaction_complete(DnsTransaction *t, DnsTransactionState state) {
                 dns_resource_key_to_string(dns_transaction_key(t), key_str, sizeof key_str);
 
                 log_struct(LOG_NOTICE,
-                           "MESSAGE_ID=" SD_MESSAGE_DNSSEC_FAILURE_STR,
+                           LOG_MESSAGE_ID(SD_MESSAGE_DNSSEC_FAILURE_STR),
                            LOG_MESSAGE("DNSSEC validation failed for question %s: %s",
                                        key_str, dnssec_result_to_string(t->answer_dnssec_result)),
-                           "DNS_TRANSACTION=%" PRIu16, t->id,
-                           "DNS_QUESTION=%s", key_str,
-                           "DNSSEC_RESULT=%s", dnssec_result_to_string(t->answer_dnssec_result),
-                           "DNS_SERVER=%s", strna(dns_server_string_full(t->server)),
-                           "DNS_SERVER_FEATURE_LEVEL=%s", dns_server_feature_level_to_string(t->server->possible_feature_level));
+                           LOG_ITEM("DNS_TRANSACTION=%" PRIu16, t->id),
+                           LOG_ITEM("DNS_QUESTION=%s", key_str),
+                           LOG_ITEM("DNSSEC_RESULT=%s", dnssec_result_to_string(t->answer_dnssec_result)),
+                           LOG_ITEM("DNS_SERVER=%s", strna(dns_server_string_full(t->server))),
+                           LOG_ITEM("DNS_SERVER_FEATURE_LEVEL=%s", dns_server_feature_level_to_string(t->server->possible_feature_level)));
         }
 
         /* Note that this call might invalidate the query. Callers
index be9e4874544ea4dde4bce8c0b54720d001d9c5c1..52764601bbe2af127e59c7af6ee47f37b5e1a73e 100644 (file)
@@ -637,11 +637,11 @@ static int dns_trust_anchor_remove_revoked(DnsTrustAnchor *d, DnsResourceRecord
 
         /* We found the key! Warn the user */
         log_struct(LOG_WARNING,
-                   "MESSAGE_ID=" SD_MESSAGE_DNSSEC_TRUST_ANCHOR_REVOKED_STR,
+                   LOG_MESSAGE_ID(SD_MESSAGE_DNSSEC_TRUST_ANCHOR_REVOKED_STR),
                    LOG_MESSAGE("DNSSEC trust anchor %s has been revoked.\n"
                                "Please update the trust anchor, or upgrade your operating system.",
                                strna(dns_resource_record_to_string(rr))),
-                   "TRUST_ANCHOR=%s", dns_resource_record_to_string(rr));
+                   LOG_ITEM("TRUST_ANCHOR=%s", dns_resource_record_to_string(rr)));
 
         if (dns_answer_size(new_answer) <= 0) {
                 assert_se(hashmap_remove(d->positive_by_key, rr->key) == old_answer);
index cb7d4eb4088c1706b837e7d11b29ce288b1ab36d..1859dbfa80a709bd46815e8c04f3a6e77a2bc775 100644 (file)
@@ -679,6 +679,6 @@ int main(int argc, char *argv[]) {
 error:
         log_struct_errno(LOG_EMERG, r,
                          LOG_MESSAGE("Critical error while doing system shutdown: %m"),
-                         "MESSAGE_ID=" SD_MESSAGE_SHUTDOWN_ERROR_STR);
+                         LOG_MESSAGE_ID(SD_MESSAGE_SHUTDOWN_ERROR_STR));
         freeze();
 }
index 181bb4ccefc517526e725467235ef2af1b41c17c..7eb3130c4e89abb7182c79d16b5ff36427d3002e 100644 (file)
@@ -285,21 +285,21 @@ static int execute(
         (void) lock_all_homes();
 
         log_struct(LOG_INFO,
-                   "MESSAGE_ID=" SD_MESSAGE_SLEEP_START_STR,
+                   LOG_MESSAGE_ID(SD_MESSAGE_SLEEP_START_STR),
                    LOG_MESSAGE("Performing sleep operation '%s'...", sleep_operation_to_string(operation)),
-                   "SLEEP=%s", sleep_operation_to_string(arg_operation));
+                   LOG_ITEM("SLEEP=%s", sleep_operation_to_string(arg_operation)));
 
         r = write_state(state_fd, sleep_config->states[operation]);
         if (r < 0)
                 log_struct_errno(LOG_ERR, r,
-                                 "MESSAGE_ID=" SD_MESSAGE_SLEEP_STOP_STR,
+                                 LOG_MESSAGE_ID(SD_MESSAGE_SLEEP_STOP_STR),
                                  LOG_MESSAGE("Failed to put system to sleep. System resumed again: %m"),
-                                 "SLEEP=%s", sleep_operation_to_string(arg_operation));
+                                 LOG_ITEM("SLEEP=%s", sleep_operation_to_string(arg_operation)));
         else
                 log_struct(LOG_INFO,
-                           "MESSAGE_ID=" SD_MESSAGE_SLEEP_STOP_STR,
+                           LOG_MESSAGE_ID(SD_MESSAGE_SLEEP_STOP_STR),
                            LOG_MESSAGE("System returned from sleep operation '%s'.", sleep_operation_to_string(arg_operation)),
-                           "SLEEP=%s", sleep_operation_to_string(arg_operation));
+                           LOG_ITEM("SLEEP=%s", sleep_operation_to_string(arg_operation)));
 
         arguments[1] = "post";
         (void) execute_directories(dirs, DEFAULT_TIMEOUT_USEC, NULL, NULL, (char **) arguments, NULL, EXEC_DIR_PARALLEL | EXEC_DIR_IGNORE_ERRORS);
index 07a3069ca5dd5c1e92e10428de4ad2fd7bc4000e..6520ac91e6e5d8decce908ac622ef7eb07b01a03 100644 (file)
@@ -770,9 +770,9 @@ static int enumerate_sysv(const LookupPaths *lp, Hashmap *all_services) {
                                                fpath,
                                                glyph(GLYPH_WARNING_SIGN),
                                                glyph(GLYPH_WARNING_SIGN)),
-                                   "MESSAGE_ID=" SD_MESSAGE_SYSV_GENERATOR_DEPRECATED_STR,
-                                   "SYSVSCRIPT=%s", fpath,
-                                   "UNIT=%s", name);
+                                   LOG_MESSAGE_ID(SD_MESSAGE_SYSV_GENERATOR_DEPRECATED_STR),
+                                   LOG_ITEM("SYSVSCRIPT=%s", fpath),
+                                   LOG_ITEM("UNIT=%s", name));
 
                         service = new(SysvStub, 1);
                         if (!service)
index 57cab6326903f13a0a73f3c9467585b49eae5d43..b36e0fcd966b4f09e70ec310ffe2504f4cb55b69 100644 (file)
@@ -50,24 +50,24 @@ static void test_log_struct(void) {
                    "MESSAGE=Waldo PID="PID_FMT" (no errno)", getpid_cached(),
                    "SERVICE=piepapo");
 
-        /* The same as above, just using LOG_MESSAGE(), which is generally recommended */
+        /* The same as above, just using LOG_MESSAGE() and LOG_ITEM(), which is generally recommended */
         log_struct(LOG_INFO,
                    LOG_MESSAGE("Waldo PID="PID_FMT" (no errno)", getpid_cached()),
-                   "SERVICE=piepapo");
+                   LOG_ITEM("SERVICE=piepapo"));
 
         log_struct_errno(LOG_INFO, EILSEQ,
                          LOG_MESSAGE("Waldo PID="PID_FMT": %m (normal)", getpid_cached()),
-                         "SERVICE=piepapo");
+                         LOG_ITEM("SERVICE=piepapo"));
 
         log_struct_errno(LOG_INFO, SYNTHETIC_ERRNO(EILSEQ),
                          LOG_MESSAGE("Waldo PID="PID_FMT": %m (synthetic)", getpid_cached()),
-                         "SERVICE=piepapo");
+                         LOG_ITEM("SERVICE=piepapo"));
 
         log_struct(LOG_INFO,
                    LOG_MESSAGE("Foobar PID="PID_FMT, getpid_cached()),
-                   "FORMAT_STR_TEST=1=%i A=%c 2=%hi 3=%li 4=%lli 1=%p foo=%s 2.5=%g 3.5=%g 4.5=%Lg",
-                   (int) 1, 'A', (short) 2, (long int) 3, (long long int) 4, (void*) 1, "foo", (float) 2.5f, (double) 3.5, (long double) 4.5,
-                   "SUFFIX=GOT IT");
+                   LOG_ITEM("FORMAT_STR_TEST=1=%i A=%c 2=%hi 3=%li 4=%lli 1=%p foo=%s 2.5=%g 3.5=%g 4.5=%Lg",
+                            (int) 1, 'A', (short) 2, (long int) 3, (long long int) 4, (void*) 1, "foo", (float) 2.5f, (double) 3.5, (long double) 4.5),
+                   LOG_ITEM("SUFFIX=GOT IT"));
 }
 
 static void test_long_lines(void) {
index 78422de9ee18a2b07c53d493fc4a1c10d23404d0..1c76e098585c7df4acd486382f1cfad849b47b80 100644 (file)
@@ -3,6 +3,8 @@
 #include <stddef.h>
 #include <sys/stat.h>
 
+#include "sd-messages.h"
+
 #include "errno-util.h"
 #include "id128-util.h"
 #include "log.h"
index d14ff5e0e7e220185fa0876e35601741988cb7ec..6c5133e3a19dcebf9a8b8494c8e034e7e1225880 100644 (file)
@@ -729,10 +729,10 @@ static int method_set_timezone(sd_bus_message *m, void *userdata, sd_bus_error *
         }
 
         log_struct(LOG_INFO,
-                   "MESSAGE_ID=" SD_MESSAGE_TIMEZONE_CHANGE_STR,
-                   "TIMEZONE=%s", c->zone,
-                   "TIMEZONE_SHORTNAME=%s", tzname[daylight],
-                   "DAYLIGHT=%i", daylight,
+                   LOG_MESSAGE_ID(SD_MESSAGE_TIMEZONE_CHANGE_STR),
+                   LOG_ITEM("TIMEZONE=%s", c->zone),
+                   LOG_ITEM("TIMEZONE_SHORTNAME=%s", tzname[daylight]),
+                   LOG_ITEM("DAYLIGHT=%i", daylight),
                    LOG_MESSAGE("Changed time zone to '%s' (%s).", c->zone, tzname[daylight]));
 
         (void) sd_bus_emit_properties_changed(sd_bus_message_get_bus(m),
@@ -931,8 +931,8 @@ static int method_set_time(sd_bus_message *m, void *userdata, sd_bus_error *erro
         }
 
         log_struct(LOG_INFO,
-                   "MESSAGE_ID=" SD_MESSAGE_TIME_CHANGE_STR,
-                   "REALTIME="USEC_FMT, timespec_load(&ts),
+                   LOG_MESSAGE_ID(SD_MESSAGE_TIME_CHANGE_STR),
+                   LOG_ITEM("REALTIME="USEC_FMT, timespec_load(&ts)),
                    LOG_MESSAGE("Changed local time to %s", strnull(FORMAT_TIMESTAMP(timespec_load(&ts)))));
 
         return sd_bus_reply_method_return(m, NULL);
index a361d60c63e55431defcca0c19e5611dac7d7922..850c3c580ea641d9f65ac6a24034439f0783350d 100644 (file)
@@ -618,10 +618,10 @@ static int manager_receive_response(sd_event_source *source, int fd, uint32_t re
                 log_struct(LOG_INFO,
                            LOG_MESSAGE("Initial clock synchronization to %s.",
                                        FORMAT_TIMESTAMP_STYLE(dts.realtime, TIMESTAMP_US)),
-                           "MESSAGE_ID=" SD_MESSAGE_TIME_SYNC_STR,
-                           "MONOTONIC_USEC=" USEC_FMT, dts.monotonic,
-                           "REALTIME_USEC=" USEC_FMT, dts.realtime,
-                           "BOOTTIME_USEC=" USEC_FMT, dts.boottime);
+                           LOG_MESSAGE_ID(SD_MESSAGE_TIME_SYNC_STR),
+                           LOG_ITEM("MONOTONIC_USEC=" USEC_FMT, dts.monotonic),
+                           LOG_ITEM("REALTIME_USEC=" USEC_FMT, dts.realtime),
+                           LOG_ITEM("BOOTTIME_USEC=" USEC_FMT, dts.boottime));
         }
 
         r = manager_arm_timer(m, m->poll_interval_usec);
index c9628169dca73763de2ad8f650af8078cffef305..cecd9fd6ea9a5d91e1b0df53b88203a7b13515c4 100644 (file)
@@ -126,9 +126,9 @@ static int load_clock_timestamp(uid_t uid, gid_t gid) {
         }
 
         log_struct(LOG_INFO,
-                   "MESSAGE_ID=" SD_MESSAGE_TIME_BUMP_STR,
-                   "REALTIME_USEC=" USEC_FMT, epoch + 1,
-                   "DIRECTION=forwards",
+                   LOG_MESSAGE_ID(SD_MESSAGE_TIME_BUMP_STR),
+                   LOG_ITEM("REALTIME_USEC=" USEC_FMT, epoch + 1),
+                   LOG_ITEM("DIRECTION=forwards"),
                    LOG_MESSAGE("System clock time advanced to %s: %s",
                                epoch > TIME_EPOCH * USEC_PER_SEC ? "recorded timestamp" : "built-in epoch",
                                FORMAT_TIMESTAMP(epoch + 1)));
index 04b9fe32a3c2a8e3e38b76457e452c3c92421e09..9bc99b1cd191154b26b7e76b185235bc8085ce8a 100644 (file)
@@ -113,7 +113,7 @@ static int request_tpm2_clear(void) {
                 return log_error_errno(r, "Failed to request TPM2 clearing via PPI, unable to write to /sys/class/tpm/tpm0/ppi/request: %m");
 
         log_struct(LOG_NOTICE,
-                   "MESSAGE_ID=" SD_MESSAGE_TPM2_CLEAR_REQUESTED_STR,
+                   LOG_MESSAGE_ID(SD_MESSAGE_TPM2_CLEAR_REQUESTED_STR),
                    LOG_MESSAGE("Requested TPM2 clearing via PPI. Firmware will verify with user and clear TPM on reboot."));
         return 0;
 }
index 622cd887f31de6a870f3188b54c94e4c645a39f9..1906b5b7c8ab032d58fb7cd4dbadd7e70a5ec565 100644 (file)
@@ -296,7 +296,7 @@ static int run(int argc, char *argv[]) {
         if (r == -EDEADLK) {
                 log_struct_errno(LOG_INFO, r,
                                  LOG_MESSAGE("Insufficient permissions to access TPM, not generating SRK."),
-                                 "MESSAGE_ID=" SD_MESSAGE_SRK_ENROLLMENT_NEEDS_AUTHORIZATION_STR);
+                                 LOG_MESSAGE_ID(SD_MESSAGE_SRK_ENROLLMENT_NEEDS_AUTHORIZATION_STR));
                 return 76; /* Special return value which means "Insufficient permissions to access TPM,
                             * cannot generate SRK". This isn't really an error when called at boot. */;
         }
@@ -307,7 +307,7 @@ static int run(int argc, char *argv[]) {
 
         if (runtime_key.pkey) {
                 if (memcmp_nn(tpm2_key.fingerprint, tpm2_key.fingerprint_size,
-                             runtime_key.fingerprint, runtime_key.fingerprint_size) != 0)
+                              runtime_key.fingerprint, runtime_key.fingerprint_size) != 0)
                         return log_error_errno(SYNTHETIC_ERRNO(ENOTRECOVERABLE),
                                                "Saved runtime SRK differs from TPM SRK, refusing.");
 
index 72e09e0fc567d2e989084483e5028b0f1b789624..8a4f96eec28139b98e70757f9785bcfd22d4c5fc 100644 (file)
@@ -147,8 +147,8 @@ static int emit_deprecation_warning(void) {
 
                 log_struct(LOG_NOTICE,
                            LOG_MESSAGE("systemd-udev-settle.service is deprecated. Please fix %s not to pull it in.", t),
-                           "OFFENDING_UNITS=%s", t,
-                           "MESSAGE_ID=" SD_MESSAGE_SYSTEMD_UDEV_SETTLE_DEPRECATED_STR);
+                           LOG_ITEM("OFFENDING_UNITS=%s", t),
+                           LOG_MESSAGE_ID(SD_MESSAGE_SYSTEMD_UDEV_SETTLE_DEPRECATED_STR));
         }
 
         return 0;