mirror of
https://github.com/systemd/systemd
synced 2024-09-06 16:56:43 +00:00
journald: use structured message + catalog entry for disk usage
The format of the journald disk usage log entry was changed back and forth a few times. It is annoying to have a very verbose message, but if it is short it is hard to understand. But we have a tool for this, the catalogue. $ journalctl -x -u systemd-journald Jan 23 18:48:50 rawhide systemd-journald[891]: Runtime journal (/run/log/journal/) is 8.0M, max 196.2M, 188.2M free. -- Subject: Disk space used by the journal -- Defined-By: systemd -- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel -- -- Runtime journal (/run/log/journal/) is currently using 8.0M. -- Maximum allowed usage is set to 196.2M. -- Leaving at least 294.3M free (of currently available 1.9G of disk space). -- Enforced usage limit is thus 196.2M, of which 188.2M are still available. -- -- The limits controlling how much disk space is used by the journal may -- be configured with SystemMaxUse=, SystemKeepFree=, SystemMaxFileSize=, -- RuntimeMaxUse=, RuntimeKeepFree=, RuntimeMaxFileSize= settings in -- /etc/systemd/journald.conf. See journald.conf(5) for details. Jan 23 18:48:50 rawhide systemd-journald[891]: System journal (/var/log/journal/) is 480.1M, max 1.6G, 1.2G free. -- Subject: Disk space used by the journal -- Defined-By: systemd -- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel -- -- System journal (/var/log/journal/) is currently using 480.1M. -- Maximum allowed usage is set to 1.6G. -- Leaving at least 2.5G free (of currently available 5.8G of disk space). -- Enforced usage limit is thus 1.6G, of which 1.2G are still available. -- -- The limits controlling how much disk space is used by the journal may -- be configured with SystemMaxUse=, SystemKeepFree=, SystemMaxFileSize=, -- RuntimeMaxUse=, RuntimeKeepFree=, RuntimeMaxFileSize= settings in -- /etc/systemd/journald.conf. See journald.conf(5) for details.
This commit is contained in:
parent
8a03c9ef74
commit
282c5c4e42
|
@ -38,6 +38,21 @@ Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
|
|||
The system journal process has shut down and closed all currently
|
||||
active journal files.
|
||||
|
||||
-- ec387f577b844b8fa948f33cad9a75e6
|
||||
Subject: Disk space used by the journal
|
||||
Defined-By: systemd
|
||||
Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
|
||||
|
||||
@JOURNAL_NAME@ (@JOURNAL_PATH@) is currently using @CURRENT_USE_PRETTY@.
|
||||
Maximum allowed usage is set to @MAX_USE_PRETTY@.
|
||||
Leaving at least @DISK_KEEP_FREE_PRETTY@ free (of currently available @DISK_AVAILABLE_PRETTY@ of disk space).
|
||||
Enforced usage limit is thus @LIMIT_PRETTY@, of which @AVAILABLE_PRETTY@ are still available.
|
||||
|
||||
The limits controlling how much disk space is used by the journal may
|
||||
be configured with SystemMaxUse=, SystemKeepFree=, SystemMaxFileSize=,
|
||||
RuntimeMaxUse=, RuntimeKeepFree=, RuntimeMaxFileSize= settings in
|
||||
/etc/systemd/journald.conf. See journald.conf(5) for details.
|
||||
|
||||
-- a596d6fe7bfa4994828e72309e95d61e
|
||||
Subject: Messages from a service have been suppressed
|
||||
Defined-By: systemd
|
||||
|
|
|
@ -163,20 +163,30 @@ static int determine_space_for(
|
|||
if (verbose) {
|
||||
char fb1[FORMAT_BYTES_MAX], fb2[FORMAT_BYTES_MAX], fb3[FORMAT_BYTES_MAX],
|
||||
fb4[FORMAT_BYTES_MAX], fb5[FORMAT_BYTES_MAX], fb6[FORMAT_BYTES_MAX];
|
||||
format_bytes(fb1, sizeof(fb1), sum);
|
||||
format_bytes(fb2, sizeof(fb2), metrics->max_use);
|
||||
format_bytes(fb3, sizeof(fb3), metrics->keep_free);
|
||||
format_bytes(fb4, sizeof(fb4), ss_avail);
|
||||
format_bytes(fb5, sizeof(fb5), s->cached_space_limit);
|
||||
format_bytes(fb6, sizeof(fb6), s->cached_space_available);
|
||||
|
||||
server_driver_message(s, SD_MESSAGE_JOURNAL_USAGE,
|
||||
LOG_MESSAGE(
|
||||
"%s (%s) is currently using %s.\n"
|
||||
"Maximum allowed usage is set to %s.\n"
|
||||
"Leaving at least %s free (of currently available %s of space).\n"
|
||||
"Enforced usage limit is thus %s, of which %s are still available.",
|
||||
name, path,
|
||||
format_bytes(fb1, sizeof(fb1), sum),
|
||||
format_bytes(fb2, sizeof(fb2), metrics->max_use),
|
||||
format_bytes(fb3, sizeof(fb3), metrics->keep_free),
|
||||
format_bytes(fb4, sizeof(fb4), ss_avail),
|
||||
format_bytes(fb5, sizeof(fb5), s->cached_space_limit),
|
||||
format_bytes(fb6, sizeof(fb6), s->cached_space_available)),
|
||||
LOG_MESSAGE("%s (%s) is %s, max %s, %s free.",
|
||||
name, path, fb1, fb5, fb6),
|
||||
"JOURNAL_NAME=%s", name,
|
||||
"JOURNAL_PATH=%s", path,
|
||||
"CURRENT_USE=%"PRIu64, sum,
|
||||
"CURRENT_USE_PRETTY=%s", fb1,
|
||||
"MAX_USE=%"PRIu64, metrics->max_use,
|
||||
"MAX_USE_PRETTY=%s", fb2,
|
||||
"DISK_KEEP_FREE=%"PRIu64, metrics->keep_free,
|
||||
"DISK_KEEP_FREE_PRETTY=%s", fb3,
|
||||
"DISK_AVAILABLE=%"PRIu64, ss_avail,
|
||||
"DISK_AVAILABLE_PRETTY=%s", fb4,
|
||||
"LIMIT=%"PRIu64, s->cached_space_limit,
|
||||
"LIMIT_PRETTY=%s", fb5,
|
||||
"AVAILABLE=%"PRIu64, s->cached_space_available,
|
||||
"AVAILABLE_PRETTY=%s", fb6,
|
||||
NULL);
|
||||
}
|
||||
|
||||
|
|
|
@ -157,7 +157,7 @@ struct Server {
|
|||
#define N_IOVEC_KERNEL_FIELDS 64
|
||||
#define N_IOVEC_UDEV_FIELDS 32
|
||||
#define N_IOVEC_OBJECT_FIELDS 12
|
||||
#define N_IOVEC_PAYLOAD_FIELDS 1
|
||||
#define N_IOVEC_PAYLOAD_FIELDS 15
|
||||
|
||||
void server_dispatch_message(Server *s, struct iovec *iovec, unsigned n, unsigned m, const struct ucred *ucred, const struct timeval *tv, const char *label, size_t label_len, const char *unit_id, int priority, pid_t object_pid);
|
||||
void server_driver_message(Server *s, sd_id128_t message_id, const char *format, ...) _printf_(3,0) _sentinel_;
|
||||
|
|
Loading…
Reference in a new issue