1 <?xml version='1.0'?> <!--*-nxml-*-->
2 <?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl/current/xhtml/docbook.xsl"?>
3 <!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
4 "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
7 This file is part of systemd.
9 Copyright 2010 Lennart Poettering
11 systemd is free software; you can redistribute it and/or modify it
12 under the terms of the GNU Lesser General Public License as published by
13 the Free Software Foundation; either version 2.1 of the License, or
14 (at your option) any later version.
16 systemd is distributed in the hope that it will be useful, but
17 WITHOUT ANY WARRANTY; without even the implied warranty of
18 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
19 Lesser General Public License for more details.
21 You should have received a copy of the GNU Lesser General Public License
22 along with systemd; If not, see <http://www.gnu.org/licenses/>.
25 <refentry id="journald.conf">
27 <title>journald.conf</title>
28 <productname>systemd</productname>
32 <contrib>Developer</contrib>
33 <firstname>Lennart</firstname>
34 <surname>Poettering</surname>
35 <email>lennart@poettering.net</email>
41 <refentrytitle>journald.conf</refentrytitle>
42 <manvolnum>5</manvolnum>
46 <refname>journald.conf</refname>
47 <refpurpose>Journal service configuration file</refpurpose>
51 <para><filename>/etc/systemd/journald.conf</filename></para>
55 <title>Description</title>
57 <para>This files configures various parameters of the
58 systemd journal service
59 <citerefentry><refentrytitle>systemd-journald.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
64 <title>Options</title>
66 <para>All options are configured in the
67 <literal>[Journal]</literal> section:</para>
72 <term><varname>Storage=</varname></term>
74 <listitem><para>Controls where to
75 store journal data. One of
76 <literal>volatile</literal>,
77 <literal>persistent</literal>,
78 <literal>auto</literal> and
79 <literal>none</literal>. If
80 <literal>volatile</literal> journal
81 log data will be stored only in
82 memory, i.e. below the
83 <filename>/run/log/journal</filename>
84 hierarchy (which is created if
86 <literal>persistent</literal> data will
87 be stored preferably on disk,
89 <filename>/var/log/journal</filename>
90 hierarchy (which is created if
91 needed), with a fallback to
92 <filename>/run/log/journal</filename>
93 (which is created if needed), during
94 early boot and if the disk is not
95 writable. <literal>auto</literal> is
97 <literal>persistent</literal> but the
99 <filename>/var/log/journal</filename>
100 is not created if needed, so that its
101 existence controls where log data
102 goes. <literal>none</literal> turns
103 off all storage, all log data received
104 will be dropped. Forwarding to other
105 targets, such as the console, the
106 kernel log buffer or a syslog daemon
107 will still work however. Defaults to
108 <literal>auto</literal>.</para></listitem>
112 <term><varname>Compress=</varname></term>
114 <listitem><para>Takes a boolean
115 value. If enabled (the default) data
116 objects that shall be stored in the
117 journal and are larger than a certain
118 threshold are compressed with the XZ
119 compression algorithm before they are
121 system.</para></listitem>
125 <term><varname>Seal=</varname></term>
127 <listitem><para>Takes a boolean
128 value. If enabled (the default) and a
129 sealing key is available (as created
131 <citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>'s
132 <option>--setup-keys</option>
133 command), forward secure sealing (FSS) for
134 all persistent journal files is
135 enabled.</para></listitem>
139 <term><varname>SplitMode=</varname></term>
141 <listitem><para>Controls whether to
142 split up journal files per user. One
143 of <literal>login</literal>,
144 <literal>uid</literal> and
145 <literal>none</literal>. If
146 <literal>login</literal> each logged
147 in user will get his own journal
148 files, but systemd user IDs will log
149 into the system journal. If
150 <literal>uid</literal> any user ID
151 will get his own journal files
152 regardless whether it belongs to a
153 system service or refers to a real
155 <literal>none</literal> journal files
156 are not split up per-user and all
157 messages are stored in the single
158 system journal. Note that splitting
159 up journal files per-user is only
160 available of journals are stored
161 persistently. If journals are stored
162 on volatile storage (see above) only a
163 single journal file for all user IDs
165 <literal>login</literal>.</para></listitem>
169 <term><varname>RateLimitInterval=</varname></term>
170 <term><varname>RateLimitBurst=</varname></term>
172 <listitem><para>Configures the rate
173 limiting that is applied to all
174 messages generated on the system. If
175 in the time interval defined by
176 <varname>RateLimitInterval=</varname>
177 more messages than specified in
178 <varname>RateLimitBurst=</varname> are
179 logged by a service all further
180 messages within the interval are
181 dropped, until the interval is over. A
182 message about the number of dropped
183 messages is generated. This rate
184 limiting is applied per-service, so
185 that two services which log do not
186 interfere with each other's
187 limits. Defaults to 200 messages in
188 10s. The time specification for
189 <varname>RateLimitInterval=</varname>
190 may be specified in the following
191 units: <literal>s</literal>,
192 <literal>min</literal>,
193 <literal>h</literal>,
194 <literal>ms</literal>,
195 <literal>us</literal>. To turn off any
196 kind of rate limiting, set either
197 value to 0.</para></listitem>
201 <term><varname>SystemMaxUse=</varname></term>
202 <term><varname>SystemKeepFree=</varname></term>
203 <term><varname>SystemMaxFileSize=</varname></term>
204 <term><varname>RuntimeMaxUse=</varname></term>
205 <term><varname>RuntimeKeepFree=</varname></term>
206 <term><varname>RuntimeMaxFileSize=</varname></term>
208 <listitem><para>Enforce size limits on
209 the journal files stored. The options
211 <literal>System</literal> apply to the
212 journal files when stored on a
213 persistent file system, more
215 <filename>/var/log/journal</filename>. The
216 options prefixed with
217 <literal>Runtime</literal> apply to
218 the journal files when stored on a
219 volatile in-memory file system, more
221 <filename>/run/log/journal</filename>. The
222 former is used only when
223 <filename>/var</filename> is mounted,
224 writable and the directory
225 <filename>/var/log/journal</filename>
226 exists. Otherwise only the latter
227 applies. Note that this means that
228 during early boot and if the
229 administrator disabled persistent
230 logging only the latter options apply,
231 while the former apply if persistent
232 logging is enabled and the system is
234 up. <varname>SystemMaxUse=</varname>
235 and <varname>RuntimeMaxUse=</varname>
236 control how much disk space the
237 journal may use up at
238 maximum. Defaults to 10% of the size
239 of the respective file
240 system. <varname>SystemKeepFree=</varname>
242 <varname>RuntimeKeepFree=</varname>
243 control how much disk space the
244 journal shall always leave free for
245 other uses if less than the disk space
247 <varname>SystemMaxUse=</varname> and
248 <varname>RuntimeMaxUse=</varname> is
249 available. Defaults to 15% of the size
250 of the respective file
251 system. <varname>SystemMaxFileSize=</varname>
253 <varname>RuntimeMaxFileSize=</varname>
254 control how large individual journal
255 files may grow at maximum. This
256 influences the granularity in which
257 disk space is made available through
258 rotation, i.e. deletion of historic
259 data. Defaults to one eighth of the
260 values configured with
261 <varname>SystemMaxUse=</varname> and
262 <varname>RuntimeMaxUse=</varname>, so
263 that usually seven rotated journal
264 files are kept as history. Specify
265 values in bytes or use K, M, G, T, P,
266 E as units for the specified sizes
267 (equal to 1024, 1024²,... bytes).
268 Note that size limits are
269 enforced synchronously to journal
270 files as they are extended, and need
271 no explicit rotation step triggered by
272 time.</para></listitem>
276 <term><varname>MaxFileSec=</varname></term>
278 <listitem><para>The maximum time to
279 store entries in a single journal
280 file, before rotating to the next
281 one. Normally time-based rotation
282 should not be required as size-based
283 rotation with options such as
284 <varname>SystemMaxFileSize=</varname>
285 should be sufficient to ensure that
286 journal files don't grow without
287 bounds. However, to ensure that not
288 too much data is lost at once when old
289 journal files are deleted it might
290 make sense to change this value from
291 the default of one month. Set to 0 to
292 turn off this feature. This setting
293 takes time values which may be
294 suffixed with the units year, month,
295 week, day, h, m to override the
297 seconds.</para></listitem>
301 <term><varname>MaxRetentionSec=</varname></term>
303 <listitem><para>The maximum time to
304 store journal entries. This
305 controls whether journal files
306 containing entries older then the
307 specified time span are
308 deleted. Normally time-based deletion
309 of old journal files should not be
310 required as size-based deletion with
312 <varname>SystemMaxUse=</varname>
313 should be sufficient to ensure that
314 journal files don't grow without
315 bounds. However, to enforce data
316 retention policies it might make sense
317 to change this value from the
318 default of 0 (which turns off this
319 feature). This setting also takes
320 time values which may be suffixed with
321 the units year, month, week, day, h, m
322 to override the default time unit of
323 seconds. </para></listitem>
328 <term><varname>SyncIntervalSec=</varname></term>
330 <listitem><para>The timeout before syncing journal
331 data to disk. After syncing journal files have
332 OFFLINE state. Default timeout is 5 minutes.
337 <term><varname>ForwardToSyslog=</varname></term>
338 <term><varname>ForwardToKMsg=</varname></term>
339 <term><varname>ForwardToConsole=</varname></term>
341 <listitem><para>Control whether log
342 messages received by the journal
343 daemon shall be forwarded to a
344 traditional syslog daemon, to the
345 kernel log buffer (kmsg), or to the
346 system console. These options take
347 boolean arguments. If forwarding to
348 syslog is enabled but no syslog daemon
349 is running the respective option has
350 no effect. By default only forwarding
351 to syslog is enabled. These settings
352 may be overridden at boot time with
353 the kernel command line options
354 <literal>systemd.journald.forward_to_syslog=</literal>,
355 <literal>systemd.journald.forward_to_kmsg=</literal>
357 <literal>systemd.journald.forward_to_console=</literal>.
362 <term><varname>MaxLevelStore=</varname></term>
363 <term><varname>MaxLevelSyslog=</varname></term>
364 <term><varname>MaxLevelKMsg=</varname></term>
365 <term><varname>MaxLevelConsole=</varname></term>
367 <listitem><para>Controls the maximum
368 log level of messages that are stored
369 on disk, forwarded to syslog, kmsg or
370 the console (if that is enabled, see
371 above). As argument, takes one of
372 <literal>emerg</literal>,
373 <literal>alert</literal>,
374 <literal>crit</literal>,
375 <literal>err</literal>,
376 <literal>warning</literal>,
377 <literal>notice</literal>,
378 <literal>info</literal>,
379 <literal>debug</literal> or integer
380 values in the range of 0..7 (corresponding
381 to the same levels). Messages equal or below
382 the log level specified are
383 stored/forwarded, messages above are
385 <literal>debug</literal> for
386 <varname>MaxLevelStore=</varname> and
387 <varname>MaxLevelSyslog=</varname>, to
388 ensure that the all messages are
389 written to disk and forwarded to
391 <literal>notice</literal> for
392 <varname>MaxLevelKMsg=</varname> and
393 <literal>info</literal> for
394 <varname>MaxLevelConsole=</varname>.</para></listitem>
398 <term><varname>TTYPath=</varname></term>
400 <listitem><para>Change the console TTY
402 <varname>ForwardToConsole=yes</varname>
404 <filename>/dev/console</filename>.</para></listitem>
412 <title>See Also</title>
414 <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
415 <citerefentry><refentrytitle>systemd-journald.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
416 <citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
417 <citerefentry><refentrytitle>systemd.journal-fields</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
418 <citerefentry><refentrytitle>systemd-system.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>