summaryrefslogtreecommitdiff
path: root/man/journald.conf.xml
blob: 36227092bbe1c87d68257c405d40ca08e23668a4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
<?xml version='1.0'?> <!--*-nxml-*-->
<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl/current/xhtml/docbook.xsl"?>
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
        "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">

<!--
  This file is part of systemd.

  Copyright 2010 Lennart Poettering

  systemd is free software; you can redistribute it and/or modify it
  under the terms of the GNU Lesser General Public License as published by
  the Free Software Foundation; either version 2.1 of the License, or
  (at your option) any later version.

  systemd is distributed in the hope that it will be useful, but
  WITHOUT ANY WARRANTY; without even the implied warranty of
  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  Lesser General Public License for more details.

  You should have received a copy of the GNU Lesser General Public License
  along with systemd; If not, see <http://www.gnu.org/licenses/>.
-->

<refentry id="journald.conf">
        <refentryinfo>
                <title>journald.conf</title>
                <productname>systemd</productname>

                <authorgroup>
                        <author>
                                <contrib>Developer</contrib>
                                <firstname>Lennart</firstname>
                                <surname>Poettering</surname>
                                <email>lennart@poettering.net</email>
                        </author>
                </authorgroup>
        </refentryinfo>

        <refmeta>
                <refentrytitle>journald.conf</refentrytitle>
                <manvolnum>5</manvolnum>
        </refmeta>

        <refnamediv>
                <refname>journald.conf</refname>
                <refpurpose>Journal service configuration file</refpurpose>
        </refnamediv>

        <refsynopsisdiv>
                <para><filename>/etc/systemd/journald.conf</filename></para>
        </refsynopsisdiv>

        <refsect1>
                <title>Description</title>

                <para>This files configures various parameters of the
                systemd journal service
                <citerefentry><refentrytitle>systemd-journald.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>

        </refsect1>

        <refsect1>
                <title>Options</title>

                <para>All options are configured in the
                <literal>[Journal]</literal> section:</para>

                <variablelist>

                        <varlistentry>
                                <term><varname>Compress=</varname></term>

                                <listitem><para>Takes a boolean
                                value. If enabled (the default) data
                                objects that shall be stored in the
                                journal and are larger than a certain
                                threshold are compressed with the XZ
                                compression algorithm before they are
                                written to the file
                                system.</para></listitem>
                        </varlistentry>

                        <varlistentry>
                                <term><varname>RateLimitInterval=</varname></term>
                                <term><varname>RateLimitBurst=</varname></term>

                                <listitem><para>Configures the rate
                                limiting that is applied to all
                                messages generated on the system. If
                                in the time interval defined by
                                <varname>RateLimitInterval=</varname>
                                more messages than specified in
                                <varname>RateLimitBurst=</varname> are
                                logged by a service all further
                                messages within the interval are
                                dropped, until the interval is over. A
                                message about the number of dropped
                                messages is generated. This rate
                                limiting is applied per-service, so
                                that two services which log do not
                                interfere with each other's
                                limit. Defaults to 100 messages in
                                10s. The time specification for
                                <varname>RateLimitInterval=</varname>
                                may be specified in the following
                                units: <literal>s</literal>,
                                <literal>min</literal>,
                                <literal>h</literal>,
                                <literal>ms</literal>,
                                <literal>us</literal>. To turn off any
                                kind of rate limiting, set either
                                value to 0.</para></listitem>
                        </varlistentry>

                        <varlistentry>
                                <term><varname>SystemMaxUse=</varname></term>
                                <term><varname>SystemKeepFree=</varname></term>
                                <term><varname>SystemMaxFileSize=</varname></term>
                                <term><varname>SystemMinFileSize=</varname></term>
                                <term><varname>RuntimeMaxUse=</varname></term>
                                <term><varname>RuntimeKeepFree=</varname></term>
                                <term><varname>RuntimeMaxFileSize=</varname></term>
                                <term><varname>RuntimeMinFileSize=</varname></term>

                                <listitem><para>Enforce size limits on
                                the journal files stored. The options
                                prefixed with
                                <literal>System</literal> apply to the
                                journal files when stored on a
                                persistent file system, more
                                specifically
                                <filename>/var/log/journal</filename>. The
                                options prefixed with
                                <literal>Runtime</literal> apply to
                                the journal files when stored on a
                                volatile in-memory file system, more
                                specifically
                                <filename>/run/log/journal</filename>. The
                                former is used only when
                                <filename>/var</filename> is mounted,
                                writable and the directory
                                <filename>/var/log/journal</filename>
                                exists. Otherwise only the latter
                                applies. Note that this means that
                                during early boot and if the
                                administrator disabled persistent
                                logging only the latter options apply,
                                while the former apply if persistent
                                logging is enabled and the system is
                                fully booted
                                up. <varname>SystemMaxUse=</varname>
                                and <varname>RuntimeMaxUse=</varname>
                                control how much disk space the
                                journal may use up at
                                maximum. Defaults to 10% of the size
                                of the respective file
                                system. <varname>SystemKeepFree=</varname>
                                and
                                <varname>RuntimeKeepFree=</varname>
                                control how much disk space the
                                journal shall always leave free for
                                other uses if less than the disk space
                                configured in
                                <varname>SystemMaxUse=</varname> and
                                <varname>RuntimeMaxUse=</varname> is
                                available. Defaults to 5% of the size
                                of the respective file
                                system. <varname>SystemMaxFileSize=</varname>
                                and
                                <varname>RuntimeMaxFileSize=</varname>
                                control how large individual journal
                                files may grow at maximum. This
                                influences the granularity in which
                                disk space is made available through
                                rotation, i.e. deletion of historic
                                data. Defaults to one eigth of the
                                values configured with
                                <varname>SystemMaxUse=</varname> and
                                <varname>RuntimeMaxUse=</varname>, so
                                that usually seven rotated journal
                                files are kept as
                                history. <varname>SystemMinFileSize=</varname>
                                and
                                <varname>RuntimeMinFileSize=</varname>
                                control how large individual journal
                                files grow at minimum. Defaults to
                                64K. Specify values in bytes or use
                                K, M, G, T, P, E as units for the
                                specified sizes. Note that size limits
                                are enforced synchronously to journal
                                files as they are extended, and need
                                no explicit rotation step triggered by
                                time.</para></listitem>
                        </varlistentry>

                        <varlistentry>
                                <term><varname>ForwardToSyslog=</varname></term>
                                <term><varname>ForwardToKMsg=</varname></term>
                                <term><varname>ForwardToConsole=</varname></term>

                                <listitem><para>Control whether log
                                messages received by the journal
                                daemon shall be forwarded to a
                                traditional syslog daemon, to the
                                kernel log buffer (kmsg), or to the
                                system console. These options take
                                boolean arguments. If forwarding to
                                syslog is enabled but no syslog daemon
                                is running the respective option has
                                no effect. By default only forwarding
                                to syslog is enabled. These settings
                                may be overridden at boot time with the
                                kernel command line options
                                <literal>systemd.journald.forward_to_syslog=</literal>,
                                <literal>systemd.journald.forward_to_kmsg=</literal>
                                and
                                <literal>systemd.journald.forward_to_console=</literal>. If
                                forwarding to the kernel log buffer and
                                <varname>ImportKernel=</varname> is
                                enabled at the same time care is taken
                                to avoid logging loops. It is safe to
                                use these options in combination.
                                </para></listitem>
                        </varlistentry>

                        <varlistentry>
                                <term><varname>MaxLevelStore=</varname></term>
                                <term><varname>MaxLevelSyslog=</varname></term>
                                <term><varname>MaxLevelKMsg=</varname></term>
                                <term><varname>MaxLevelConsole=</varname></term>

                                <listitem><para>Controls the maximum
                                log level of messages that are stored
                                on disk, forwarded to syslog, kmsg or
                                the console (if that is enabled, see
                                above). As argument, takes one of
                                <literal>emerg</literal>,
                                <literal>alert</literal>,
                                <literal>crit</literal>,
                                <literal>err</literal>,
                                <literal>warning</literal>,
                                <literal>notice</literal>,
                                <literal>info</literal>,
                                <literal>debug</literal> or integer
                                values in the range of 0..7 (corresponding
                                to the same levels). Messages equal or below
                                the log level specified are
                                stored/forwarded, messages above are
                                dropped. Defaults to
                                <literal>debug</literal> for
                                <varname>MaxLevelStore=</varname> and
                                <varname>MaxLevelSyslog=</varname>, to
                                ensure that the all messages are
                                written to disk and forwarded to
                                syslog. Defaults to
                                <literal>notice</literal> for
                                <varname>MaxLevelKMsg=</varname> and
                                <literal>info</literal> for
                                <varname>MaxLevelConsole=</varname>.</para></listitem>
                        </varlistentry>

                        <varlistentry>
                                <term><varname>TTYPath=</varname></term>

                                <listitem><para>Change the console TTY
                                to use if
                                <varname>ForwardToConsole=yes</varname>
                                is used. Defaults to
                                <filename>/dev/console</filename>.</para></listitem>
                        </varlistentry>

                        <varlistentry>
                                <term><varname>ImportKernel=</varname></term>

                                <listitem><para>Controls whether
                                kernel log messages shall be stored in
                                the journal. Takes a boolean argument
                                and defaults to disabled. Note that
                                currently only one userspace service
                                can read kernel messages at a time,
                                which means that kernel log message
                                reading might get corrupted if it
                                is enabled in more than one service,
                                for example in both the journal and a
                                traditional syslog service.
                                </para></listitem>
                        </varlistentry>

                        <varlistentry>
                                <term><varname>Storage=</varname></term>

                                <listitem><para>Controls where to
                                store journal data. One of
                                <literal>volatile</literal>,
                                <literal>persistent</literal>,
                                <literal>auto</literal> and
                                <literal>none</literal>. If
                                <literal>volatile</literal> journal
                                log data will be stored only in
                                memory, i.e. below the
                                <filename>/run/log/journal</filename>
                                hierarchy (which is created if
                                needed). If
                                <literal>persistent</literal> data will
                                be stored preferably on disk,
                                i.e. below the
                                <filename>/var/log/journal</filename>
                                hierarchy (which is created if
                                needed), with a fallback to
                                <filename>/run/log/journal</filename>
                                (which is created if needed), during
                                early boot and if the disk is not
                                writable. <literal>auto</literal> is
                                similar to
                                <literal>persistent</literal> but the
                                directory
                                <filename>/var/log/journal</filename>
                                is not created if needed, so that its
                                existance controls where log data
                                goes. <literal>none</literal> turns
                                off all storage, all log data received
                                will be dropped. Forwarding to other
                                targets, such as the console, the
                                kernel log buffer or a syslog daemon
                                will still work however.  Defaults to
                                <literal>auto</literal>.</para></listitem>
                        </varlistentry>
                </variablelist>

        </refsect1>

        <refsect1>
                  <title>See Also</title>
                  <para>
                          <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
                          <citerefentry><refentrytitle>systemd-journald.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
                          <citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
                          <citerefentry><refentrytitle>systemd.journal-fields</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
                          <citerefentry><refentrytitle>systemd.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>
                  </para>
        </refsect1>

</refentry>