Initial import
[lttng-docs.git] / contents / using-lttng / intro.md
1 ---
2 id: using-lttng
3 ---
4
5 Using LTTng involves two main activities: **instrumenting** and
6 **controlling tracing**.
7
8 _[Instrumenting](#doc-instrumenting)_ is the process of inserting probes
9 into some source code. It can be done manually, by writing tracepoint
10 calls at specific locations in the source code of the program to trace,
11 or more automatically using dynamic probes (address in assembled code,
12 symbol name, function entry/return, etc.).
13
14 It has to be noted that, as an LTTng user, you may not have to worry
15 about the instrumentation process. Indeed, you may want to trace a
16 program already instrumented. As an example, the Linux kernel is
17 thoroughly instrumented, which is why you can trace it without caring
18 about adding probes.
19
20 _[Controlling tracing](#doc-controlling-tracing)_ is everything
21 that can be done by the LTTng session daemon, which is controlled using
22 `liblttng-ctl` or its command line utility, `lttng`: creating tracing
23 sessions, listing tracing sessions and events, enabling/disabling
24 events, starting/stopping the tracers, taking snapshots, etc.
25
26 This chapter is a complete user guide of both activities,
27 with common use cases of LTTng exposed throughout the text. It is
28 assumed that you are familiar with LTTng's concepts (events, channels,
29 domains, tracing sessions) and that you understand the roles of its
30 components (daemons, libraries, command line tools); if not, we invite
31 you to read the [Understanding LTTng](#doc-understanding-lttng) chapter
32 before you begin reading this one.
33
34 If you're new to LTTng, we suggest that you rather start with the
35 [Getting started](#doc-getting-started) small guide first, then come
36 back here to broaden your knowledge.
37
38 If you're only interested in tracing the Linux kernel with its current
39 instrumentation, you may skip the
40 [Instrumenting](#doc-instrumenting) section.
This page took 0.030934 seconds and 4 git commands to generate.