chiark / gitweb /
man: mention that units are 1024-based
[elogind.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                                 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>
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>RuntimeMaxUse=</varname></term>
205                                 <term><varname>RuntimeKeepFree=</varname></term>
206                                 <term><varname>RuntimeMaxFileSize=</varname></term>
207
208                                 <listitem><para>Enforce size limits on
209                                 the journal files stored. The options
210                                 prefixed with
211                                 <literal>System</literal> apply to the
212                                 journal files when stored on a
213                                 persistent file system, more
214                                 specifically
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
220                                 specifically
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
233                                 fully booted
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>
241                                 and
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
246                                 configured in
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>
252                                 and
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>
273                         </varlistentry>
274
275                         <varlistentry>
276                                 <term><varname>MaxFileSec=</varname></term>
277
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
296                                 default time unit of
297                                 seconds.</para></listitem>
298                         </varlistentry>
299
300                         <varlistentry>
301                                 <term><varname>MaxRetentionSec=</varname></term>
302
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
311                                 options such as
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>
324                         </varlistentry>
325
326
327                         <varlistentry>
328                                 <term><varname>SyncIntervalSec=</varname></term>
329
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.
333                                 </para></listitem>
334                         </varlistentry>
335
336                         <varlistentry>
337                                 <term><varname>ForwardToSyslog=</varname></term>
338                                 <term><varname>ForwardToKMsg=</varname></term>
339                                 <term><varname>ForwardToConsole=</varname></term>
340
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>
356                                 and
357                                 <literal>systemd.journald.forward_to_console=</literal>.
358                                 </para></listitem>
359                         </varlistentry>
360
361                         <varlistentry>
362                                 <term><varname>MaxLevelStore=</varname></term>
363                                 <term><varname>MaxLevelSyslog=</varname></term>
364                                 <term><varname>MaxLevelKMsg=</varname></term>
365                                 <term><varname>MaxLevelConsole=</varname></term>
366
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
384                                 dropped. Defaults to
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
390                                 syslog. Defaults to
391                                 <literal>notice</literal> for
392                                 <varname>MaxLevelKMsg=</varname> and
393                                 <literal>info</literal> for
394                                 <varname>MaxLevelConsole=</varname>.</para></listitem>
395                         </varlistentry>
396
397                         <varlistentry>
398                                 <term><varname>TTYPath=</varname></term>
399
400                                 <listitem><para>Change the console TTY
401                                 to use if
402                                 <varname>ForwardToConsole=yes</varname>
403                                 is used. Defaults to
404                                 <filename>/dev/console</filename>.</para></listitem>
405                         </varlistentry>
406
407                 </variablelist>
408
409         </refsect1>
410
411         <refsect1>
412                   <title>See Also</title>
413                   <para>
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>
419                   </para>
420         </refsect1>
421
422 </refentry>