journald: Limit system journal size from 10M to 4M
authorINSUN PYO <insun.pyo@samsung.com>
Wed, 31 Jan 2018 01:02:17 +0000 (10:02 +0900)
committerŁukasz Stelmach <l.stelmach@samsung.com>
Mon, 12 Feb 2024 15:37:43 +0000 (16:37 +0100)
A journald always loads two journal files (one is current and the other is just before) in memory using mmap.
So it always consumes as much memory as file size.

A journald rotates the log in 8 files.
Each log file has a SystemMaxUse/8 size.
(But the minimum value is 512k.)

So SystemMaxUse is 4M to minimize memory usage. (512k * 8 = 4M)

sh-3.2# memps `pidof systemd-journald`
S(CODE)  S(DATA)  P(CODE)  P(DATA)  ADDR(start-end)  OBJECT NAME
-------- -------- -------- -------- -----------------------------------------------
4        0      508        0 f6d80000-f6ec0000 /opt/var/log/journal/999fcdd05c714da0859337c08df2230e/system@800f735a88e44c35bc7cca47\
9a6984b1-00000000000015ad-000561d5c48aab1f.journal
0        4      302        0 f6c40000-f6d80000 /opt/var/log/journal/999fcdd05c714da0859337c08df2230e/system.journal

Signed-off-by: INSUN PYO <insun.pyo@samsung.com>
Change-Id: I9aa53189eae878464acba58b5fdd490f6b3ba7f8

src/journal/journald.conf

index ab48dcb..789b6c2 100644 (file)
@@ -19,7 +19,7 @@ SplitMode=none
 #SyncIntervalSec=5m
 #RateLimitIntervalSec=30s
 #RateLimitBurst=1000
-SystemMaxUse=10M
+SystemMaxUse=4M
 #SystemKeepFree=
 #SystemMaxFileSize=
 #SystemMaxFiles=100