summaryrefslogtreecommitdiff
path: root/src/journal/journald.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/journal/journald.c')
-rw-r--r--src/journal/journald.c23
1 files changed, 18 insertions, 5 deletions
diff --git a/src/journal/journald.c b/src/journal/journald.c
index 2429dd3e27..5dc5c95cfa 100644
--- a/src/journal/journald.c
+++ b/src/journal/journald.c
@@ -2940,6 +2940,22 @@ static int server_init(Server *s) {
return 0;
}
+static void maybe_append_tags(Server *s) {
+#ifdef HAVE_GCRYPT
+ JournalFile *f;
+ Iterator i;
+ usec_t n;
+
+ n = now(CLOCK_REALTIME);
+
+ if (s->system_journal)
+ journal_file_maybe_append_tag(s->system_journal, n);
+
+ HASHMAP_FOREACH(f, s->user_journals, i)
+ journal_file_maybe_append_tag(f, n);
+#endif
+}
+
static void server_done(Server *s) {
JournalFile *f;
assert(s);
@@ -3040,7 +3056,7 @@ int main(int argc, char *argv[]) {
journal_file_next_evolve_usec(server.system_journal, &u)) {
usec_t n;
- n = now(CLOCK_MONOTONIC);
+ n = now(CLOCK_REALTIME);
if (n >= u)
t = 0;
@@ -3069,10 +3085,7 @@ int main(int argc, char *argv[]) {
break;
}
-#ifdef HAVE_GCRYPT
- if (server.system_journal)
- journal_file_maybe_append_tag(server.system_journal, 0);
-#endif
+ maybe_append_tags(&server);
}
log_debug("systemd-journald stopped as pid %lu", (unsigned long) getpid());