chiark / gitweb /
journalctl: Add support for showing messages from a previous boot
[elogind.git] / man / journalctl.xml
index 66100816ae4070c4ce7bce35dc60da32ad733fb8..0e779b952c0813538ce47af48320eccd5339d858 100644 (file)
                 journal as written by
                 <citerefentry><refentrytitle>systemd-journald.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
 
-                <para>If called without parameter it will show the full
+                <para>If called without parameters, it will show the full
                 contents of the journal, starting with the oldest
                 entry collected.</para>
 
-                <para>If one or more match arguments are passed the
+                <para>If one or more match arguments are passed, the
                 output is filtered accordingly. A match is in the
                 format <literal>FIELD=VALUE</literal>,
                 e.g. <literal>_SYSTEMD_UNIT=httpd.service</literal>,
@@ -76,7 +76,7 @@
                 entry. See
                 <citerefentry><refentrytitle>systemd.journal-fields</refentrytitle><manvolnum>7</manvolnum></citerefentry>
                 for a list of well-known fields. If multiple matches
-                are specified matching different fields the log
+                are specified matching different fields, the log
                 entries are filtered by both, i.e. the resulting output
                 will show only entries matching all the specified
                 matches of this kind. If two matches apply to the same
                 alternatives, i.e. the resulting output will show
                 entries matching any of the specified matches for the
                 same field. Finally, if the character
-                "<literal>+</literal>" appears as separate word on the
-                command line all matches before and after are combined
+                <literal>+</literal> appears as separate word on the
+                command line, all matches before and after are combined
                 in a disjunction (i.e. logical OR).</para>
 
                 <para>As shortcuts for a few types of field/value
-                matches file paths may be specified. If a file path
+                matches, file paths may be specified. If a file path
                 refers to an executable file, this is equivalent to an
                 <literal>_EXE=</literal> match for the canonicalized
-                binary path. Similar, if a path refers to a device
+                binary path. Similarly, if a path refers to a device
                 node, this is equivalent to a
                 <literal>_KERNEL_DEVICE=</literal> match for the
                 device.</para>
 
                 <para>Output is interleaved from all accessible
                 journal files, whether they are rotated or currently
-                being written, and regardless whether they belong to the
+                being written, and regardless of whether they belong to the
                 system itself or are accessible user journals.</para>
 
                 <para>All users are granted access to their private
-                per-user journals. However, by default only root and
+                per-user journals. However, by default, only root and
                 users who are members of the <literal>adm</literal>
                 group get access to the system journal and the
                 journals of other users.</para>
+
+                <para>The output is paged through
+                <command>less</command> by default, and long lines are
+                "truncated" to screen width. The hidden part can be
+                viewed by using the left-arrow and right-arrow
+                keys. Paging can be disabled, see
+                <option>--no-pager</option> and section Environment
+                below.</para>
+
+                <para>When outputing to a tty, lines are colored
+                according to priority: lines of level ERROR and higher
+                are colored red, lines of level NOTICE and higher are
+                highlighted, and other lines are displayed normally.
+                </para>
         </refsect1>
 
         <refsect1>
                         </varlistentry>
 
                         <varlistentry>
+                                <term><option>-l</option></term>
                                 <term><option>--full</option></term>
 
                                 <listitem><para>Show all (printable) fields in
                                 the end of the journal inside the
                                 implied pager tool. This implies
                                 <option>-n1000</option> to guarantee
-                                that the pager won't buffer logs of
+                                that the pager will not buffer logs of
                                 unbounded size. This may be overridden
                                 with an explicit <option>-n</option>
                                 with some other numeric value on the
                                 <literal>cat</literal>. <literal>short</literal>
                                 is the default and generates an output
                                 that is mostly identical to the
-                                formatting of classic syslog log
+                                formatting of classic syslog
                                 files, showing one line per journal
                                 entry. <literal>short-monotonic</literal>
                                 is very similar but shows monotonic
                                 manuals. Note that help texts are not
                                 available for all messages, but only
                                 for selected ones. For more
-                                information on the message catalog
+                                information on the message catalog,
                                 please refer to the <ulink
                                 url="http://www.freedesktop.org/wiki/Software/systemd/catalog">Message
                                 Catalog Developer
                         </varlistentry>
 
                         <varlistentry>
-                                <term><option>-b</option></term>
-                                <term><option>--this-boot</option></term>
-
-                                <listitem><para>Show data only from
-                                current boot. This will add a match
-                                for <literal>_BOOT_ID=</literal> for
-                                the current boot ID of the
-                                kernel.</para></listitem>
+                                <term><option>-b <optional><replaceable>ID</replaceable></optional></option></term>
+                                <term><option>--boot=<optional><replaceable>ID</replaceable></optional></option></term>
+
+                                <listitem><para>Show messages from the specified
+                                boot <replaceable>ID</replaceable> or from
+                                current boot if no <replaceable>ID</replaceable>
+                                is given. This will add a match for
+                                <literal>_BOOT_ID=</literal>.</para>
+
+                                <para>The argument is a 128 bit ID given in
+                                short or UUID form and optionally followed by
+                                <literal>:n</literal> which identifies the nth
+                                boot relative to the boot ID given to the left
+                                of <literal>:</literal>. Supplying a negative
+                                value for n will look for a past boot and a
+                                positive value for a future boot. The boot IDs
+                                are searched for in chronological order. If no
+                                number is provided after <literal>:</literal>,
+                                <literal>-1</literal> is assumed. A value of 0
+                                is valid and equivalent to omitting
+                                <literal>:0</literal>.</para>
+
+                                <para>Alternatively, the argument may constist
+                                only of <literal>:n</literal>. In this case, a
+                                positive value will look up the nth boot
+                                starting from the beginning of the jouranl, a
+                                negative value will look up a previous boot
+                                relative to the current boot. <literal>:0</literal>
+                                will look for the current boot ID. Thus,
+                                <literal>:1</literal> is the first boot found in
+                                the journal, <literal>:2</literal> the second
+                                and so on; while <literal>:-1</literal> is the
+                                previous boot, <literal>:-2</literal> the boot
+                                before that and so on. Omitting a value after
+                                <literal>:</literal> will look for the previous
+                                boot.</para></listitem>
                         </varlistentry>
 
                         <varlistentry>
                                 <term><option>-k</option></term>
                                 <term><option>--dmesg</option></term>
 
-                                <listitem><para>Show kernel messages from
-                                current boot. This implies <option>-b</option>
-                                and adds the match <literal>_TRANSPORT=kernel</literal>.
+                                <listitem><para>Show only kernel messages. This
+                                implies <option>-b</option> and adds the match
+                                <literal>_TRANSPORT=kernel</literal>.
                                 </para></listitem>
                         </varlistentry>
 
                                 <literal>notice</literal> (5),
                                 <literal>info</literal> (6),
                                 <literal>debug</literal> (7). If a
-                                single log level is specified all
+                                single log level is specified, all
                                 messages with this log level or a
                                 lower (hence more important) log level
-                                are shown. If a range is specified all
+                                are shown. If a range is specified, all
                                 messages within the range are shown,
                                 including both the start and the end
                                 value of the range. This will add
                                 <listitem><para>Start showing entries
                                 on or newer than the specified date,
                                 or on or older than the specified
-                                date, respectively. Date specifications should be of
-                                the format "2012-10-30 18:17:16". If
-                                the time part is omitted, 00:00:00 is
-                                assumed. If only the seconds component
-                                is omitted, :00 is assumed. If the
-                                date component is omitted, the
-                                current day is assumed. Alternatively
-                                the strings
+                                date, respectively. Date specifications
+                                should be of the format
+                                <literal>2012-10-30 18:17:16</literal>.
+                                If the time part is omitted,
+                                <literal>00:00:00</literal> is assumed.
+                                If only the seconds component is omitted,
+                                <literal>:00</literal> is assumed. If the
+                                date component is omitted, the current
+                                day is assumed. Alternatively the strings
                                 <literal>yesterday</literal>,
                                 <literal>today</literal>,
                                 <literal>tomorrow</literal> are
                         </varlistentry>
 
                         <varlistentry>
-                                <term><option>-D</option></term>
-                                <term><option>--directory=</option></term>
+                                <term><option>-D <replaceable>DIR</replaceable></option></term>
+                                <term><option>--directory=<replaceable>DIR</replaceable></option></term>
+
+                                <listitem><para>Takes a directory path
+                                as argument. If specified, journalctl
+                                will operate on the specified journal
+                                directory
+                                <replaceable>DIR</replaceable> instead
+                                of the default runtime and system
+                                journal paths.</para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><option>--file=<replaceable>GLOB</replaceable></option></term>
 
-                                <listitem><para>Takes a
-                                directory path as argument. If
-                                specified journalctl will operate on the
-                                specified journal directory instead of
-                                the default runtime and system journal
-                                paths.</para></listitem>
+                                <listitem><para>Takes a file glob as
+                                argument. If specified, journalctl will
+                                operate on the specified journal files
+                                matching <replaceable>GLOB</replaceable>
+                                instead of the default runtime and
+                                system journal paths. May be specified
+                                multiple times, in which case files will
+                                be suitably interleaved.</para></listitem>
                         </varlistentry>
 
                         <varlistentry>
                                 <term><option>--root=<replaceable>ROOT</replaceable></option></term>
 
                                 <listitem><para>Takes a directory path
-                                as argument. If specified journalctl
+                                as argument. If specified, journalctl
                                 will operate on catalog file hierarchy
                                 underneath the specified directory
                                 instead of the root directory
                                 <term><option>--new-id128</option></term>
 
                                 <listitem><para>Instead of showing
-                                journal contents generate a new 128
+                                journal contents, generate a new 128
                                 bit ID suitable for identifying
                                 messages. This is intended for usage
                                 by developers who need a new
                                 identifier for a new message they
                                 introduce and want to make
-                                recognizable. Will print the new ID in
+                                recognizable. This will print the new ID in
                                 three different formats which can be
                                 copied into source code or
                                 similar.</para></listitem>
                                 <term><option>--header</option></term>
 
                                 <listitem><para>Instead of showing
-                                journal contents show internal header
+                                journal contents, show internal header
                                 information of the journal fields
                                 accessed.</para></listitem>
                         </varlistentry>
                                 <term><option>--setup-keys</option></term>
 
                                 <listitem><para>Instead of showing
-                                journal contents generate a new key
+                                journal contents, generate a new key
                                 pair for Forward Secure Sealing
                                 (FSS). This will generate a sealing
                                 key and a verification key. The
                                 sealing key is stored in the journal
                                 data directory and shall remain on the
                                 host. The verification key should be
-                                stored externally.</para></listitem>
+                                stored externally. Also see the
+                                <option>Seal=</option> option in
+                                <citerefentry><refentrytitle>journald.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>
+                                for details.</para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><option>--force</option></term>
+
+                                <listitem><para>When --setup-keys is passed and
+                                Forward Secure Sealing has already been set up,
+                                recreate FSS keys.</para></listitem>
                         </varlistentry>
 
                         <varlistentry>
                                 <term><option>--interval=</option></term>
 
                                 <listitem><para>Specifies the change
-                                interval for the sealing key, when
+                                interval for the sealing key when
                                 generating an FSS key pair with
                                 <option>--setup-keys</option>. Shorter
                                 intervals increase CPU consumption but
                                 <listitem><para>Check the journal file
                                 for internal consistency. If the
                                 file has been generated with FSS
-                                enabled, and the FSS verification key
+                                enabled and the FSS verification key
                                 has been specified with
-                                <option>--verify-key=</option>
+                                <option>--verify-key=</option>,
                                 authenticity of the journal file is
                                 verified.</para></listitem>
                         </varlistentry>
         <refsect1>
                 <title>Exit status</title>
 
-                <para>On success 0 is returned, a non-zero failure
+                <para>On success, 0 is returned, a non-zero failure
                 code otherwise.</para>
         </refsect1>
 
         <refsect1>
                 <title>Examples</title>
 
-                <para>Without arguments all collected logs are shown
+                <para>Without arguments, all collected logs are shown
                 unfiltered:</para>
 
                 <programlisting>journalctl</programlisting>
 
-                <para>With one match specified all entries with a field matching the expression are shown:</para>
+                <para>With one match specified, all entries with a field matching the expression are shown:</para>
 
                 <programlisting>journalctl _SYSTEMD_UNIT=avahi-daemon.service</programlisting>
 
-                <para>If two different fields are matched only entries matching both expressions at the same time are shown:</para>
+                <para>If two different fields are matched, only entries matching both expressions at the same time are shown:</para>
 
                 <programlisting>journalctl _SYSTEMD_UNIT=avahi-daemon.service _PID=28097</programlisting>
 
-                <para>If two matches refer to the same field all entries matching either expression are shown:</para>
+                <para>If two matches refer to the same field, all entries matching either expression are shown:</para>
 
                 <programlisting>journalctl _SYSTEMD_UNIT=avahi-daemon.service _SYSTEMD_UNIT=dbus.service</programlisting>
 
-                <para>If the separator "<literal>+</literal>" is used
+                <para>If the separator <literal>+</literal> is used,
                 two expressions may be combined in a logical OR. The
                 following will show all messages from the Avahi
                 service process with the PID 28097 plus all messages
 
                 <programlisting>journalctl /dev/sda</programlisting>
 
+                <para>Show all kernel logs from last boot:</para>
+
+                <programlisting>journalctl -k -b :</programlisting>
+
         </refsect1>
 
         <refsect1>