Merge "2.13: Cleanup duplicate paragraph"
[lttng-docs.git] / 2.10 / lttng-docs-2.10.txt
index d237bcace6b83e07809c7b9556a64f545f98d284..375fcf5cf4d716cae7c746e04ca242b8335203be 100644 (file)
@@ -1,7 +1,7 @@
 The LTTng Documentation
 =======================
 Philippe Proulx <pproulx@efficios.com>
 The LTTng Documentation
 =======================
 Philippe Proulx <pproulx@efficios.com>
-v2.10, 18 October 2019
+v2.10, 25 February 2021
 
 
 include::../common/copyright.txt[]
 
 
 include::../common/copyright.txt[]
@@ -300,6 +300,8 @@ becomes inactive or in real-time.
 [[installing-lttng]]
 == Installation
 
 [[installing-lttng]]
 == Installation
 
+include::../common/warning-no-installation.txt[]
+
 **LTTng** is a set of software <<plumbing,components>> which interact to
 <<instrumenting,instrument>> the Linux kernel and user applications, and
 to <<controlling-tracing,control tracing>> (start and stop
 **LTTng** is a set of software <<plumbing,components>> which interact to
 <<instrumenting,instrument>> the Linux kernel and user applications, and
 to <<controlling-tracing,control tracing>> (start and stop
@@ -314,391 +316,14 @@ components are bundled into the following packages:
   trace user applications.
 
 Most distributions mark the LTTng-modules and LTTng-UST packages as
   trace user applications.
 
 Most distributions mark the LTTng-modules and LTTng-UST packages as
-optional when installing LTTng-tools (which is always required). In the
-following sections, we always provide the steps to install all three,
-but note that:
+optional when installing LTTng-tools (which is always required). Note
+that:
 
 * You only need to install LTTng-modules if you intend to trace the
   Linux kernel.
 * You only need to install LTTng-UST if you intend to trace user
   applications.
 
 
 * You only need to install LTTng-modules if you intend to trace the
   Linux kernel.
 * You only need to install LTTng-UST if you intend to trace user
   applications.
 
-[role="growable"]
-.Availability of LTTng{nbsp}{revision} for major Linux distributions as of 18 October 2019.
-|====
-|Distribution |Available in releases
-
-|https://www.ubuntu.com/[Ubuntu]
-|xref:ubuntu[Ubuntu{nbsp}18.04 _Bionic Beaver_,
-Ubuntu{nbsp}19.04 _Disco Dingo_, and
-Ubuntu{nbsp}19.10 _Eoan Ermine_].
-
-Ubuntu{nbsp}16.04 _Xenial Xerus_:
-<<ubuntu-ppa,use the LTTng Stable{nbsp}{revision} PPA>>.
-
-|https://getfedora.org/[Fedora]
-|xref:fedora[Fedora{nbsp}29, Fedora{nbsp}30, Fedora{nbsp}31,
-and Fedora{nbsp}32].
-
-|https://www.debian.org/[Debian]
-|<<debian,Debian "buster" (stable) and Debian "bullseye" (testing)>>.
-
-|https://alpinelinux.org/[Alpine Linux]
-|xref:alpine-linux[Alpine Linux{nbsp}3.7, Alpine Linux{nbsp}3.8,
-Alpine Linux{nbsp}3.9, and Alpine Linux{nbsp}3.10].
-
-|https://www.opensuse.org/[openSUSE]
-|<<opensuse,openSUSE Leap{nbsp}15.1>>.
-
-|https://www.redhat.com/[RHEL] and https://www.suse.com/[SLES]
-|See http://packages.efficios.com/[EfficiOS Enterprise Packages].
-
-|https://buildroot.org/[Buildroot]
-|xref:buildroot[Buildroot{nbsp}2018.02, Buildroot{nbsp}2018.05,
-Buildroot{nbsp}2018.08, Buildroot{nbsp}2018.11, Buildroot{nbsp}2019.02,
-Buildroot{nbsp}2018.05, Buildroot{nbsp}2018.08, and
-Buildroot{nbsp}2018.11].
-
-|http://www.openembedded.org/wiki/Main_Page[OpenEmbedded] and
-https://www.yoctoproject.org/[Yocto]
-|<<oe-yocto,Yocto Project{nbsp}2.7 _Warrior_ and
-Yocto Project{nbsp}3.0 _Zeus_>>.
-|====
-
-
-[[ubuntu]]
-=== [[ubuntu-official-repositories]]Ubuntu
-
-LTTng{nbsp}{revision} is available on:
-
-* Ubuntu{nbsp}18.04 _Bionic Beaver_
-* Ubuntu{nbsp}19.04 _Disco Dingo_
-* Ubuntu{nbsp}19.10 _Eoan Ermine_
-
-For other releases of Ubuntu, <<ubuntu-ppa,use the LTTng
-Stable{nbsp}{revision} PPA>>.
-
-To install LTTng{nbsp}{revision} on Ubuntu{nbsp}18.04 _Bionic Beaver_,
-Ubuntu{nbsp}19.04 _Disco Dingo_, or
-Ubuntu{nbsp}19.10 _Eoan Ermine_:
-
-. Install the main LTTng{nbsp}{revision} packages:
-+
---
-[role="term"]
-----
-# apt-get install lttng-tools
-# apt-get install lttng-modules-dkms
-# apt-get install liblttng-ust-dev
-----
---
-
-. **If you need to instrument and trace
-  <<java-application,Java applications>>**, install the LTTng-UST
-  Java agent:
-+
---
-[role="term"]
-----
-# apt-get install liblttng-ust-agent-java
-----
---
-
-. **If you need to instrument and trace
-  <<python-application,Python{nbsp}3 applications>>**, install the
-  LTTng-UST Python agent:
-+
---
-[role="term"]
-----
-# apt-get install python3-lttngust
-----
---
-
-
-[[ubuntu-ppa]]
-==== noch:{LTTng} Stable {revision} PPA
-
-The https://launchpad.net/~lttng/+archive/ubuntu/stable-{revision}[LTTng
-Stable{nbsp}{revision} PPA] offers the latest stable
-LTTng{nbsp}{revision} packages for Ubuntu{nbsp}18.04 _Bionic Beaver_.
-
-To install LTTng{nbsp}{revision} from the LTTng Stable{nbsp}{revision} PPA:
-
-. Add the LTTng Stable{nbsp}{revision} PPA repository and update the
-  list of packages:
-+
---
-[role="term"]
-----
-# apt-add-repository ppa:lttng/stable-2.10
-# apt-get update
-----
---
-
-. Install the main LTTng{nbsp}{revision} packages:
-+
---
-[role="term"]
-----
-# apt-get install lttng-tools
-# apt-get install lttng-modules-dkms
-# apt-get install liblttng-ust-dev
-----
---
-
-. **If you need to instrument and trace
-  <<java-application,Java applications>>**, install the LTTng-UST
-  Java agent:
-+
---
-[role="term"]
-----
-# apt-get install liblttng-ust-agent-java
-----
---
-
-. **If you need to instrument and trace
-  <<python-application,Python{nbsp}3 applications>>**, install the
-  LTTng-UST Python agent:
-+
---
-[role="term"]
-----
-# apt-get install python3-lttngust
-----
---
-
-
-[[fedora]]
-=== Fedora
-
-To install LTTng{nbsp}{revision} on Fedora{nbsp}29, Fedora{nbsp}30,
-Fedora{nbsp}31, or Fedora{nbsp}32:
-
-. Install the LTTng-tools{nbsp}{revision} and LTTng-UST{nbsp}{revision}
-  packages:
-+
---
-[role="term"]
-----
-# yum install lttng-tools
-# yum install lttng-ust
-----
---
-
-. Download, build, and install the latest LTTng-modules{nbsp}{revision}:
-+
---
-[role="term"]
-----
-$ cd $(mktemp -d) &&
-wget http://lttng.org/files/lttng-modules/lttng-modules-latest-2.10.tar.bz2 &&
-tar -xf lttng-modules-latest-2.10.tar.bz2 &&
-cd lttng-modules-2.10.* &&
-make &&
-sudo make modules_install &&
-sudo depmod -a
-----
---
-
-[IMPORTANT]
-.Java and Python application instrumentation and tracing
-====
-If you need to instrument and trace <<java-application,Java
-applications>> on Fedora, you need to build and install
-LTTng-UST{nbsp}{revision} <<building-from-source,from source>> and pass
-the `--enable-java-agent-jul`, `--enable-java-agent-log4j`, or
-`--enable-java-agent-all` options to the `configure` script, depending
-on which Java logging framework you use.
-
-If you need to instrument and trace <<python-application,Python
-applications>> on Fedora, you need to build and install
-LTTng-UST{nbsp}{revision} from source and pass the
-`--enable-python-agent` option to the `configure` script.
-====
-
-
-[[debian]]
-=== Debian
-
-To install LTTng{nbsp}{revision} on Debian "buster" (stable) or
-Debian "bullseye" (testing):
-
-. Install the main LTTng{nbsp}{revision} packages:
-+
---
-[role="term"]
-----
-# apt-get install lttng-modules-dkms
-# apt-get install liblttng-ust-dev
-# apt-get install lttng-tools
-----
---
-
-. **If you need to instrument and trace <<java-application,Java
-  applications>>**, install the LTTng-UST Java agent:
-+
---
-[role="term"]
-----
-# apt-get install liblttng-ust-agent-java
-----
---
-
-. **If you need to instrument and trace <<python-application,Python
-  applications>>**, install the LTTng-UST Python agent:
-+
---
-[role="term"]
-----
-# apt-get install python3-lttngust
-----
---
-
-
-[[alpine-linux]]
-=== Alpine Linux
-
-To install LTTng-tools{nbsp}{revision} and LTTng-UST{nbsp}{revision} on
-Alpine Linux{nbsp}3.7, Alpine Linux{nbsp}3.8, Alpine Linux{nbsp}3.9, or
-Alpine Linux{nbsp}3.10:
-
-. Add the LTTng packages:
-+
---
-[role="term"]
-----
-# apk add lttng-tools
-# apk add lttng-ust-dev
-----
---
-
-. Download, build, and install the latest LTTng-modules{nbsp}{revision}:
-+
---
-[role="term"]
-----
-$ cd $(mktemp -d) &&
-wget http://lttng.org/files/lttng-modules/lttng-modules-latest-2.10.tar.bz2 &&
-tar -xf lttng-modules-latest-2.10.tar.bz2 &&
-cd lttng-modules-2.10.* &&
-make &&
-sudo make modules_install &&
-sudo depmod -a
-----
---
-
-
-[[opensuse]]
-=== noch:{openSUSE}
-
-To install LTTng{nbsp}{revision} on openSUSE Leap{nbsp}15.1:
-
-* Install the main LTTng{nbsp}{revision} packages:
-+
---
-[role="term"]
-----
-sudo zypper install lttng-tools
-sudo zypper install lttng-modules
-sudo zypper install lttng-ust-devel
-----
---
-
-[IMPORTANT]
-.Java and Python application instrumentation and tracing
-====
-If you need to instrument and trace <<java-application,Java
-applications>> on openSUSE, you need to build and install
-LTTng-UST{nbsp}{revision} <<building-from-source,from source>> and pass
-the `--enable-java-agent-jul`, `--enable-java-agent-log4j`, or
-`--enable-java-agent-all` options to the `configure` script, depending
-on which Java logging framework you use.
-
-If you need to instrument and trace <<python-application,Python
-applications>> on openSUSE, you need to build and install
-LTTng-UST{nbsp}{revision} from source and pass the
-`--enable-python-agent` option to the `configure` script.
-====
-
-
-[[enterprise-distributions]]
-=== RHEL, SUSE, and other enterprise distributions
-
-To install LTTng on enterprise Linux distributions, such as Red Hat
-Enterprise Linux (RHEL) and SUSE Linux Enterprise Server (SUSE), please
-see http://packages.efficios.com/[EfficiOS Enterprise Packages].
-
-
-[[buildroot]]
-=== Buildroot
-
-To install LTTng{nbsp}{revision} on Buildroot{nbsp}2018.02,
-Buildroot{nbsp}2018.05, Buildroot{nbsp}2018.08,
-Buildroot{nbsp}2018.11, Buildroot{nbsp}2019.02,
-Buildroot{nbsp}2019.05, Buildroot{nbsp}2019.08, or
-Buildroot{nbsp}2019.11:
-
-. Launch the Buildroot configuration tool:
-+
---
-[role="term"]
-----
-$ make menuconfig
-----
---
-
-. In **Kernel**, check **Linux kernel**.
-. In **Toolchain**, check **Enable WCHAR support**.
-. In **Target packages**{nbsp}&#8594; **Debugging, profiling and benchmark**,
-  check **lttng-modules** and **lttng-tools**.
-. In **Target packages**{nbsp}&#8594; **Libraries**{nbsp}&#8594;
-  **Other**, check **lttng-libust**.
-
-
-[[oe-yocto]]
-=== OpenEmbedded and Yocto
-
-LTTng{nbsp}{revision} recipes are available in the
-http://layers.openembedded.org/layerindex/branch/master/layer/openembedded-core/[`openembedded-core`]
-layer for Yocto Project{nbsp}2.7 _Warrior_ and
-Yocto Project{nbsp}3.0 _Zeus_ under the following names:
-
-* `lttng-tools`
-* `lttng-modules`
-* `lttng-ust`
-
-With BitBake, the simplest way to include LTTng recipes in your target
-image is to add them to `IMAGE_INSTALL_append` in path:{conf/local.conf}:
-
-----
-IMAGE_INSTALL_append = " lttng-tools lttng-modules lttng-ust"
-----
-
-If you use Hob:
-
-. Select a machine and an image recipe.
-. Click **Edit image recipe**.
-. Under the **All recipes** tab, search for **lttng**.
-. Check the desired LTTng recipes.
-
-[IMPORTANT]
-.Java and Python application instrumentation and tracing
-====
-If you need to instrument and trace <<java-application,Java
-applications>> on Yocto/OpenEmbedded, you need to build and install
-LTTng-UST{nbsp}{revision} <<building-from-source,from source>> and pass
-the `--enable-java-agent-jul`, `--enable-java-agent-log4j`, or
-`--enable-java-agent-all` options to the `configure` script, depending
-on which Java logging framework you use.
-
-If you need to instrument and trace <<python-application,Python
-applications>> on Yocto/OpenEmbedded, you need to build and install
-LTTng-UST{nbsp}{revision} from source and pass the
-`--enable-python-agent` option to the `configure` script.
-====
-
 
 [[building-from-source]]
 === Build from source
 
 [[building-from-source]]
 === Build from source
@@ -1397,11 +1022,11 @@ LTTng can send the generated trace data to different locations. The
 _tracing session mode_ dictates where to send it. The following modes
 are available in LTTng{nbsp}{revision}:
 
 _tracing session mode_ dictates where to send it. The following modes
 are available in LTTng{nbsp}{revision}:
 
-Local mode::
+[[local-mode]]Local mode::
   LTTng writes the traces to the file system of the machine being traced
   (target system).
 
   LTTng writes the traces to the file system of the machine being traced
   (target system).
 
-Network streaming mode::
+[[net-streaming-mode]]Network streaming mode::
   LTTng sends the traces over the network to a
   <<lttng-relayd,relay daemon>> running on a remote system.
 
   LTTng sends the traces over the network to a
   <<lttng-relayd,relay daemon>> running on a remote system.
 
@@ -1412,7 +1037,7 @@ Snapshot mode::
   or to send it over the network to a <<lttng-relayd,relay daemon>>
   running on a remote system.
 
   or to send it over the network to a <<lttng-relayd,relay daemon>>
   running on a remote system.
 
-Live mode::
+[[live-mode]]Live mode::
   This mode is similar to the network streaming mode, but a live
   trace viewer can connect to the distant relay daemon to
   <<lttng-live,view event records as LTTng generates them>> by
   This mode is similar to the network streaming mode, but a live
   trace viewer can connect to the distant relay daemon to
   <<lttng-live,view event records as LTTng generates them>> by
@@ -1577,13 +1202,18 @@ discard mode, the tracer only discards the event record that doesn't
 fit.
 
 In discard mode, LTTng increments a count of lost event records when an
 fit.
 
 In discard mode, LTTng increments a count of lost event records when an
-event record is lost and saves this count to the trace. In overwrite
-mode, since LTTng 2.8, LTTng increments a count of lost sub-buffers when
-a sub-buffer is lost and saves this count to the trace. In this mode,
-the exact number of lost event records in those lost sub-buffers is not
-saved to the trace. Trace analyses can use the trace's saved discarded
-event record and sub-buffer counts to decide whether or not to perform
-the analyses even if trace data is known to be missing.
+event record is lost and saves this count to the trace. Since
+LTTng{nbsp}2.8, in overwrite mode, LTTng writes to a given sub-buffer
+its sequence number within its data stream. With a <<local-mode,local>>,
+<<net-streaming-mode,network streaming>>, or <<live-mode,live>>
+<<tracing-session,tracing session>>, a trace reader can use such
+sequence numbers to report lost packets. In overwrite mode, LTTng
+doesn't write to the trace the exact number of lost event records in
+those lost sub-buffers.
+
+Trace analyses can use saved discarded event record and sub-buffer
+(packet) counts of the trace to decide whether or not to perform the
+analyses even if trace data is known to be missing.
 
 There are a few ways to decrease your probability of losing event
 records.
 
 There are a few ways to decrease your probability of losing event
 records.
@@ -4269,7 +3899,7 @@ $ lttng enable-event --userspace 'lttng_ust_tracelog:*'
 [[prebuilt-ust-helpers]]
 === Prebuilt user space tracing helpers
 
 [[prebuilt-ust-helpers]]
 === Prebuilt user space tracing helpers
 
-The LTTng-UST package provides a few helpers in the form or preloadable
+The LTTng-UST package provides a few helpers in the form of preloadable
 shared objects which automatically instrument system functions and
 calls.
 
 shared objects which automatically instrument system functions and
 calls.
 
This page took 0.045164 seconds and 4 git commands to generate.