diff options
Diffstat (limited to 'man/systemd-analyze.xml')
-rw-r--r-- | man/systemd-analyze.xml | 389 |
1 files changed, 0 insertions, 389 deletions
diff --git a/man/systemd-analyze.xml b/man/systemd-analyze.xml deleted file mode 100644 index 8fa7cd3329..0000000000 --- a/man/systemd-analyze.xml +++ /dev/null @@ -1,389 +0,0 @@ -<?xml version='1.0'?> <!--*-nxml-*--> -<!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 2012 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="systemd-analyze" - xmlns:xi="http://www.w3.org/2001/XInclude"> - - <refentryinfo> - <title>systemd-analyze</title> - <productname>systemd</productname> - - <authorgroup> - <author> - <contrib>Developer</contrib> - <firstname>Lennart</firstname> - <surname>Poettering</surname> - <email>lennart@poettering.net</email> - </author> - <author> - <contrib>Developer</contrib> - <firstname>Harald</firstname> - <surname>Hoyer</surname> - <email>harald@redhat.com</email> - </author> - </authorgroup> - </refentryinfo> - - <refmeta> - <refentrytitle>systemd-analyze</refentrytitle> - <manvolnum>1</manvolnum> - </refmeta> - - <refnamediv> - <refname>systemd-analyze</refname> - <refpurpose>Analyze system boot-up performance</refpurpose> - </refnamediv> - - <refsynopsisdiv> - <cmdsynopsis> - <command>systemd-analyze</command> - <arg choice="opt" rep="repeat">OPTIONS</arg> - <arg>time</arg> - </cmdsynopsis> - <cmdsynopsis> - <command>systemd-analyze</command> - <arg choice="opt" rep="repeat">OPTIONS</arg> - <arg choice="plain">blame</arg> - </cmdsynopsis> - <cmdsynopsis> - <command>systemd-analyze</command> - <arg choice="opt" rep="repeat">OPTIONS</arg> - <arg choice="plain">critical-chain</arg> - <arg choice="opt" rep="repeat"><replaceable>UNIT</replaceable></arg> - </cmdsynopsis> - <cmdsynopsis> - <command>systemd-analyze</command> - <arg choice="opt" rep="repeat">OPTIONS</arg> - <arg choice="plain">plot</arg> - <arg choice="opt">> file.svg</arg> - </cmdsynopsis> - <cmdsynopsis> - <command>systemd-analyze</command> - <arg choice="opt" rep="repeat">OPTIONS</arg> - <arg choice="plain">dot</arg> - <arg choice="opt" rep="repeat"><replaceable>PATTERN</replaceable></arg> - <arg choice="opt">> file.dot</arg> - </cmdsynopsis> - <cmdsynopsis> - <command>systemd-analyze</command> - <arg choice="opt" rep="repeat">OPTIONS</arg> - <arg choice="plain">dump</arg> - </cmdsynopsis> - <cmdsynopsis> - <command>systemd-analyze</command> - <arg choice="opt" rep="repeat">OPTIONS</arg> - <arg choice="plain">set-log-level</arg> - <arg choice="plain"><replaceable>LEVEL</replaceable></arg> - </cmdsynopsis> - <cmdsynopsis> - <command>systemd-analyze</command> - <arg choice="opt" rep="repeat">OPTIONS</arg> - <arg choice="plain">set-log-target</arg> - <arg choice="plain"><replaceable>TARGET</replaceable></arg> - </cmdsynopsis> - <cmdsynopsis> - <command>systemd-analyze</command> - <arg choice="opt" rep="repeat">OPTIONS</arg> - <arg choice="plain">verify</arg> - <arg choice="opt" rep="repeat"><replaceable>FILES</replaceable></arg> - </cmdsynopsis> - </refsynopsisdiv> - - <refsect1> - <title>Description</title> - - <para><command>systemd-analyze</command> may be used to determine - system boot-up performance statistics and retrieve other state and - tracing information from the system and service manager, and to - verify the correctness of unit files.</para> - - <para><command>systemd-analyze time</command> prints the time - spent in the kernel before userspace has been reached, the time - spent in the initial RAM disk (initrd) before normal system - userspace has been reached, and the time normal system userspace - took to initialize. Note that these measurements simply measure - the time passed up to the point where all system services have - been spawned, but not necessarily until they fully finished - initialization or the disk is idle.</para> - - <para><command>systemd-analyze blame</command> prints a list of - all running units, ordered by the time they took to initialize. - This information may be used to optimize boot-up times. Note that - the output might be misleading as the initialization of one - service might be slow simply because it waits for the - initialization of another service to complete.</para> - - <para><command>systemd-analyze critical-chain - [<replaceable>UNIT...</replaceable>]</command> prints a tree of - the time-critical chain of units (for each of the specified - <replaceable>UNIT</replaceable>s or for the default target - otherwise). The time after the unit is active or started is - printed after the "@" character. The time the unit takes to start - is printed after the "+" character. Note that the output might be - misleading as the initialization of one service might depend on - socket activation and because of the parallel execution of - units.</para> - - <para><command>systemd-analyze plot</command> prints an SVG - graphic detailing which system services have been started at what - time, highlighting the time they spent on initialization.</para> - - <para><command>systemd-analyze dot</command> generates textual - dependency graph description in dot format for further processing - with the GraphViz - <citerefentry project='die-net'><refentrytitle>dot</refentrytitle><manvolnum>1</manvolnum></citerefentry> - tool. Use a command line like <command>systemd-analyze dot | dot - -Tsvg > systemd.svg</command> to generate a graphical dependency - tree. Unless <option>--order</option> or - <option>--require</option> is passed, the generated graph will - show both ordering and requirement dependencies. Optional pattern - globbing style specifications (e.g. <filename>*.target</filename>) - may be given at the end. A unit dependency is included in the - graph if any of these patterns match either the origin or - destination node.</para> - - <para><command>systemd-analyze dump</command> outputs a (usually - very long) human-readable serialization of the complete server - state. Its format is subject to change without notice and should - not be parsed by applications.</para> - - <para><command>systemd-analyze set-log-level - <replaceable>LEVEL</replaceable></command> changes the current log - level of the <command>systemd</command> daemon to - <replaceable>LEVEL</replaceable> (accepts the same values as - <option>--log-level=</option> described in - <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>).</para> - - <para><command>systemd-analyze set-log-target - <replaceable>TARGET</replaceable></command> changes the current log - target of the <command>systemd</command> daemon to - <replaceable>TARGET</replaceable> (accepts the same values as - <option>--log-target=</option>, described in - <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>).</para> - - <para><command>systemd-analyze verify</command> will load unit files and print - warnings if any errors are detected. Files specified on the command line will be - loaded, but also any other units referenced by them. The full unit search path is - formed by combining the directories for all command line arguments, and the usual unit - load paths (variable <varname>$SYSTEMD_UNIT_PATH</varname> is supported, and may be - used to replace or augment the compiled in set of unit load paths; see - <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>). - All units files present in the directories containing the command line arguments will - be used in preference to the other paths.</para> - - <para>If no command is passed, <command>systemd-analyze - time</command> is implied.</para> - - </refsect1> - - <refsect1> - <title>Options</title> - - <para>The following options are understood:</para> - - <variablelist> - <varlistentry> - <term><option>--user</option></term> - - <listitem><para>Operates on the user systemd - instance.</para></listitem> - </varlistentry> - - <varlistentry> - <term><option>--system</option></term> - - <listitem><para>Operates on the system systemd instance. This - is the implied default.</para></listitem> - </varlistentry> - - <varlistentry> - <term><option>--order</option></term> - <term><option>--require</option></term> - - <listitem><para>When used in conjunction with the - <command>dot</command> command (see above), selects which - dependencies are shown in the dependency graph. If - <option>--order</option> is passed, only dependencies of type - <varname>After=</varname> or <varname>Before=</varname> are - shown. If <option>--require</option> is passed, only - dependencies of type <varname>Requires=</varname>, - <varname>Requisite=</varname>, - <varname>Wants=</varname> and <varname>Conflicts=</varname> - are shown. If neither is passed, this shows dependencies of - all these types.</para></listitem> - </varlistentry> - - <varlistentry> - <term><option>--from-pattern=</option></term> - <term><option>--to-pattern=</option></term> - - <listitem><para>When used in conjunction with the - <command>dot</command> command (see above), this selects which - relationships are shown in the dependency graph. Both options - require a - <citerefentry project='die-net'><refentrytitle>glob</refentrytitle><manvolnum>7</manvolnum></citerefentry> - pattern as an argument, which will be matched against the - left-hand and the right-hand, respectively, nodes of a - relationship.</para> - - <para>Each of these can be used more than once, in which case - the unit name must match one of the values. When tests for - both sides of the relation are present, a relation must pass - both tests to be shown. When patterns are also specified as - positional arguments, they must match at least one side of the - relation. In other words, patterns specified with those two - options will trim the list of edges matched by the positional - arguments, if any are given, and fully determine the list of - edges shown otherwise.</para></listitem> - </varlistentry> - - <varlistentry> - <term><option>--fuzz=</option><replaceable>timespan</replaceable></term> - - <listitem><para>When used in conjunction with the - <command>critical-chain</command> command (see above), also - show units, which finished <replaceable>timespan</replaceable> - earlier, than the latest unit in the same level. The unit of - <replaceable>timespan</replaceable> is seconds unless - specified with a different unit, e.g. - "50ms".</para></listitem> - </varlistentry> - - <varlistentry> - <term><option>--no-man</option></term> - - <listitem><para>Do not invoke man to verify the existence of - man pages listed in <varname>Documentation=</varname>. - </para></listitem> - </varlistentry> - - <xi:include href="user-system-options.xml" xpointer="host" /> - <xi:include href="user-system-options.xml" xpointer="machine" /> - - <xi:include href="standard-options.xml" xpointer="help" /> - <xi:include href="standard-options.xml" xpointer="version" /> - <xi:include href="standard-options.xml" xpointer="no-pager" /> - </variablelist> - - </refsect1> - - <refsect1> - <title>Exit status</title> - - <para>On success, 0 is returned, a non-zero failure code - otherwise.</para> - </refsect1> - - <refsect1> - <title>Examples for <command>dot</command></title> - - <example> - <title>Plots all dependencies of any unit whose name starts with - <literal>avahi-daemon</literal></title> - - <programlisting>$ systemd-analyze dot 'avahi-daemon.*' | dot -Tsvg > avahi.svg - $ eog avahi.svg</programlisting> - </example> - - <example> - <title>Plots the dependencies between all known target units</title> - - <programlisting>systemd-analyze dot --to-pattern='*.target' --from-pattern='*.target' | dot -Tsvg > targets.svg -$ eog targets.svg</programlisting> - </example> - </refsect1> - - <refsect1> - <title>Examples for <command>verify</command></title> - - <para>The following errors are currently detected:</para> - <itemizedlist> - <listitem><para>unknown sections and directives, - </para></listitem> - - <listitem><para>missing dependencies which are required to start - the given unit, </para></listitem> - - <listitem><para>man pages listed in - <varname>Documentation=</varname> which are not found in the - system,</para></listitem> - - <listitem><para>commands listed in <varname>ExecStart=</varname> - and similar which are not found in the system or not - executable.</para></listitem> - </itemizedlist> - - <example> - <title>Misspelt directives</title> - - <programlisting>$ cat ./user.slice -[Unit] -WhatIsThis=11 -Documentation=man:nosuchfile(1) -Requires=different.service - -[Service] -Desription=x - -$ systemd-analyze verify ./user.slice -[./user.slice:9] Unknown lvalue 'WhatIsThis' in section 'Unit' -[./user.slice:13] Unknown section 'Service'. Ignoring. -Error: org.freedesktop.systemd1.LoadFailed: - Unit different.service failed to load: - No such file or directory. -Failed to create user.slice/start: Invalid argument -user.slice: man nosuchfile(1) command failed with code 16 - </programlisting> - </example> - - <example> - <title>Missing service units</title> - - <programlisting>$ tail ./a.socket ./b.socket -==> ./a.socket <== -[Socket] -ListenStream=100 - -==> ./b.socket <== -[Socket] -ListenStream=100 -Accept=yes - -$ systemd-analyze verify ./a.socket ./b.socket -Service a.service not loaded, a.socket cannot be started. -Service b@0.service not loaded, b.socket cannot be started. - </programlisting> - </example> - </refsect1> - - <xi:include href="less-variables.xml" /> - - <refsect1> - <title>See Also</title> - <para> - <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>, - <citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry> - </para> - </refsect1> - -</refentry> |