]> git.ipfire.org Git - thirdparty/systemd.git/blob - man/journald.conf.xml
journald: make splitting up of journal files per-user configurable
[thirdparty/systemd.git] / man / journald.conf.xml
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">
5
6 <!--
7 This file is part of systemd.
8
9 Copyright 2010 Lennart Poettering
10
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.
15
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.
20
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/>.
23 -->
24
25 <refentry id="journald.conf">
26 <refentryinfo>
27 <title>journald.conf</title>
28 <productname>systemd</productname>
29
30 <authorgroup>
31 <author>
32 <contrib>Developer</contrib>
33 <firstname>Lennart</firstname>
34 <surname>Poettering</surname>
35 <email>lennart@poettering.net</email>
36 </author>
37 </authorgroup>
38 </refentryinfo>
39
40 <refmeta>
41 <refentrytitle>journald.conf</refentrytitle>
42 <manvolnum>5</manvolnum>
43 </refmeta>
44
45 <refnamediv>
46 <refname>journald.conf</refname>
47 <refpurpose>Journal service configuration file</refpurpose>
48 </refnamediv>
49
50 <refsynopsisdiv>
51 <para><filename>/etc/systemd/journald.conf</filename></para>
52 </refsynopsisdiv>
53
54 <refsect1>
55 <title>Description</title>
56
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>
60
61 </refsect1>
62
63 <refsect1>
64 <title>Options</title>
65
66 <para>All options are configured in the
67 <literal>[Journal]</literal> section:</para>
68
69 <variablelist>
70
71 <varlistentry>
72 <term><varname>Storage=</varname></term>
73
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
85 needed). If
86 <literal>persistent</literal> data will
87 be stored preferably on disk,
88 i.e. below the
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
96 similar to
97 <literal>persistent</literal> but the
98 directory
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>
109 </varlistentry>
110
111 <varlistentry>
112 <term><varname>Compress=</varname></term>
113
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
120 written to the file
121 system.</para></listitem>
122 </varlistentry>
123
124 <varlistentry>
125 <term><varname>Seal=</varname></term>
126
127 <listitem><para>Takes a boolean
128 value. If enabled (the default) and a
129 sealing key is available (as created
130 by
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>
136 </varlistentry>
137
138 <varlistentry>
139 <term><varname>SplitMode=</varname></term>
140
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
154 logged in user. If
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
164 is kept. Defaults to
165 <literal>login</literal>.</para></listitem>
166 </varlistentry>
167
168 <varlistentry>
169 <term><varname>RateLimitInterval=</varname></term>
170 <term><varname>RateLimitBurst=</varname></term>
171
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 limit. Defaults to 100 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>
198 </varlistentry>
199
200 <varlistentry>
201 <term><varname>SystemMaxUse=</varname></term>
202 <term><varname>SystemKeepFree=</varname></term>
203 <term><varname>SystemMaxFileSize=</varname></term>
204 <term><varname>SystemMinFileSize=</varname></term>
205 <term><varname>RuntimeMaxUse=</varname></term>
206 <term><varname>RuntimeKeepFree=</varname></term>
207 <term><varname>RuntimeMaxFileSize=</varname></term>
208 <term><varname>RuntimeMinFileSize=</varname></term>
209
210 <listitem><para>Enforce size limits on
211 the journal files stored. The options
212 prefixed with
213 <literal>System</literal> apply to the
214 journal files when stored on a
215 persistent file system, more
216 specifically
217 <filename>/var/log/journal</filename>. The
218 options prefixed with
219 <literal>Runtime</literal> apply to
220 the journal files when stored on a
221 volatile in-memory file system, more
222 specifically
223 <filename>/run/log/journal</filename>. The
224 former is used only when
225 <filename>/var</filename> is mounted,
226 writable and the directory
227 <filename>/var/log/journal</filename>
228 exists. Otherwise only the latter
229 applies. Note that this means that
230 during early boot and if the
231 administrator disabled persistent
232 logging only the latter options apply,
233 while the former apply if persistent
234 logging is enabled and the system is
235 fully booted
236 up. <varname>SystemMaxUse=</varname>
237 and <varname>RuntimeMaxUse=</varname>
238 control how much disk space the
239 journal may use up at
240 maximum. Defaults to 10% of the size
241 of the respective file
242 system. <varname>SystemKeepFree=</varname>
243 and
244 <varname>RuntimeKeepFree=</varname>
245 control how much disk space the
246 journal shall always leave free for
247 other uses if less than the disk space
248 configured in
249 <varname>SystemMaxUse=</varname> and
250 <varname>RuntimeMaxUse=</varname> is
251 available. Defaults to 5% of the size
252 of the respective file
253 system. <varname>SystemMaxFileSize=</varname>
254 and
255 <varname>RuntimeMaxFileSize=</varname>
256 control how large individual journal
257 files may grow at maximum. This
258 influences the granularity in which
259 disk space is made available through
260 rotation, i.e. deletion of historic
261 data. Defaults to one eighth of the
262 values configured with
263 <varname>SystemMaxUse=</varname> and
264 <varname>RuntimeMaxUse=</varname>, so
265 that usually seven rotated journal
266 files are kept as
267 history. <varname>SystemMinFileSize=</varname>
268 and
269 <varname>RuntimeMinFileSize=</varname>
270 control how large individual journal
271 files grow at minimum. Defaults to
272 64K. Specify values in bytes or use
273 K, M, G, T, P, E as units for the
274 specified sizes. Note that size limits
275 are enforced synchronously to journal
276 files as they are extended, and need
277 no explicit rotation step triggered by
278 time.</para></listitem>
279 </varlistentry>
280
281 <varlistentry>
282 <term><varname>ForwardToSyslog=</varname></term>
283 <term><varname>ForwardToKMsg=</varname></term>
284 <term><varname>ForwardToConsole=</varname></term>
285
286 <listitem><para>Control whether log
287 messages received by the journal
288 daemon shall be forwarded to a
289 traditional syslog daemon, to the
290 kernel log buffer (kmsg), or to the
291 system console. These options take
292 boolean arguments. If forwarding to
293 syslog is enabled but no syslog daemon
294 is running the respective option has
295 no effect. By default only forwarding
296 to syslog is enabled. These settings
297 may be overridden at boot time with
298 the kernel command line options
299 <literal>systemd.journald.forward_to_syslog=</literal>,
300 <literal>systemd.journald.forward_to_kmsg=</literal>
301 and
302 <literal>systemd.journald.forward_to_console=</literal>.
303 </para></listitem>
304 </varlistentry>
305
306 <varlistentry>
307 <term><varname>MaxLevelStore=</varname></term>
308 <term><varname>MaxLevelSyslog=</varname></term>
309 <term><varname>MaxLevelKMsg=</varname></term>
310 <term><varname>MaxLevelConsole=</varname></term>
311
312 <listitem><para>Controls the maximum
313 log level of messages that are stored
314 on disk, forwarded to syslog, kmsg or
315 the console (if that is enabled, see
316 above). As argument, takes one of
317 <literal>emerg</literal>,
318 <literal>alert</literal>,
319 <literal>crit</literal>,
320 <literal>err</literal>,
321 <literal>warning</literal>,
322 <literal>notice</literal>,
323 <literal>info</literal>,
324 <literal>debug</literal> or integer
325 values in the range of 0..7 (corresponding
326 to the same levels). Messages equal or below
327 the log level specified are
328 stored/forwarded, messages above are
329 dropped. Defaults to
330 <literal>debug</literal> for
331 <varname>MaxLevelStore=</varname> and
332 <varname>MaxLevelSyslog=</varname>, to
333 ensure that the all messages are
334 written to disk and forwarded to
335 syslog. Defaults to
336 <literal>notice</literal> for
337 <varname>MaxLevelKMsg=</varname> and
338 <literal>info</literal> for
339 <varname>MaxLevelConsole=</varname>.</para></listitem>
340 </varlistentry>
341
342 <varlistentry>
343 <term><varname>TTYPath=</varname></term>
344
345 <listitem><para>Change the console TTY
346 to use if
347 <varname>ForwardToConsole=yes</varname>
348 is used. Defaults to
349 <filename>/dev/console</filename>.</para></listitem>
350 </varlistentry>
351
352 </variablelist>
353
354 </refsect1>
355
356 <refsect1>
357 <title>See Also</title>
358 <para>
359 <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
360 <citerefentry><refentrytitle>systemd-journald.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
361 <citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
362 <citerefentry><refentrytitle>systemd.journal-fields</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
363 <citerefentry><refentrytitle>systemd.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>
364 </para>
365 </refsect1>
366
367 </refentry>