Commit | Line | Data |
---|---|---|
6991b181 DG |
1 | .TH "LTTNG-SESSIOND" "8" "January 31, 2012" "" "" |
2 | ||
3 | .SH "NAME" | |
c5db699c | 4 | lttng-sessiond \(em LTTng 2.x central tracing registry session daemon. |
6991b181 DG |
5 | |
6 | .SH "SYNOPSIS" | |
7 | ||
8 | .PP | |
9 | .nf | |
10 | lttng-sessiond [OPTIONS] | |
11 | .fi | |
12 | .SH "DESCRIPTION" | |
13 | ||
14 | .PP | |
15 | The LTTng project aims at providing highly efficient tracing tools for Linux. | |
16 | It's tracers help tracking down performance issues and debugging problems | |
17 | involving multiple concurrent processes and threads. Tracing across multiple | |
18 | systems is also possible. | |
19 | ||
fa072eae | 20 | The session daemon, acting as a tracing registry, allow you to interact with |
6991b181 DG |
21 | multiple tracers (kernel and user-space) inside the same container, a tracing |
22 | session. Trace can be gathered from the kernel and/or instrumented applications | |
95dc6256 | 23 | (lttng-ust(3)). Aggregating those traces is done using a viewer, like the |
fa072eae | 24 | babeltrace(1) text viewer. |
6991b181 DG |
25 | |
26 | In order to trace the kernel, the session daemon needs to be running as root. | |
27 | LTTng provides the use of a \fBtracing group\fP (default: tracing). Whomever is | |
28 | in that group can interact with the root session daemon and thus trace the | |
29 | kernel. Session daemons can co-exist meaning that you can have a session daemon | |
fa072eae YB |
30 | running as Alice that can be used to trace her applications along side with a |
31 | root daemon or even a Bob daemon. We highly recommend to start the session | |
6991b181 DG |
32 | daemon at boot time for stable and long term tracing. |
33 | ||
34 | The session daemon is in charge of managing trace data consumers by spawning | |
fa072eae | 35 | them when the time has come. The user don't need to manage the lttng-consumerd. |
6991b181 DG |
36 | .SH "OPTIONS" |
37 | ||
38 | .PP | |
39 | This program follow the usual GNU command line syntax with long options starting with | |
40 | two dashes. Below is a summary of the available options. | |
41 | .PP | |
42 | ||
43 | .TP | |
44 | .BR "-h, --help" | |
45 | Show summary of possible options and commands | |
46 | .TP | |
47 | .BR "-v, --verbose" | |
48 | Increase verbosity | |
49 | ||
50 | There is three debugging level which will print on stderr. Maximum verbosity is | |
51 | \fB-vvv\fP. | |
52 | .TP | |
53 | .BR " --verbose-consumer" | |
54 | Verbose mode for consumer. Activate DBG() macro. | |
55 | .TP | |
56 | .BR "-d, --daemonize" | |
57 | Start as a daemon | |
58 | .TP | |
72dd7491 MD |
59 | .BR "-b, --background" |
60 | Start as a daemon, keeping console open | |
61 | .TP | |
6991b181 DG |
62 | .BR "-g, --group=NAME" |
63 | Specify the tracing group name. (default: tracing) | |
64 | .TP | |
65 | .BR "-V, --version" | |
66 | Show version number | |
67 | .TP | |
68 | .BR "-S, --sig-parent" | |
7fe6d2c5 | 69 | Send SIGUSR1 to parent pid to notify readiness. |
6991b181 DG |
70 | |
71 | This is used by \fBlttng(1)\fP to get notified when the session daemon is ready | |
fa072eae | 72 | to accept command. When building a third party tool over liblttng-ctl, this option |
6991b181 DG |
73 | can be very handy to synchronize the control tool and the session daemon. |
74 | .TP | |
75 | .BR "-q, --quiet" | |
76 | No output at all. | |
77 | .TP | |
78 | .BR " --no-kernel" | |
79 | No kernel tracer support | |
80 | .TP | |
00e4a0a9 DG |
81 | .BR " --jul-tcp-port" |
82 | JUL application registration TCP port (default: 5345) | |
83 | .TP | |
6991b181 DG |
84 | .BR "-c, --client-sock=PATH" |
85 | Specify path for the client unix socket | |
86 | .TP | |
87 | .BR "-a, --apps-sock PATH" | |
88 | Specify path for apps unix socket | |
89 | .TP | |
90 | .BR " --kconsumerd-err-sock=PATH" | |
91 | Specify path for the kernel consumer error socket | |
92 | .TP | |
93 | .BR " --kconsumerd-cmd-sock=PATH | |
94 | Specify path for the kernel consumer command socket | |
95 | .TP | |
96 | .BR " --ustconsumerd32-err-sock=PATH | |
97 | Specify path for the 32-bit UST consumer error socket | |
98 | .TP | |
99 | .BR " --ustconsumerd64-err-sock=PATH | |
100 | Specify path for the 64-bit UST consumer error socket | |
101 | .TP | |
102 | .BR " --ustconsumerd32-cmd-sock=PATH | |
103 | Specify path for the 32-bit UST consumer command socket | |
104 | .TP | |
105 | .BR " --ustconsumerd64-cmd-sock=PATH | |
106 | Specify path for the 64-bit UST consumer command socket | |
107 | .TP | |
108 | .BR " --consumerd32-path=PATH | |
109 | Specify path for the 32-bit UST consumer daemon binary | |
110 | .TP | |
111 | .BR " --consumerd32-libdir=PATH | |
112 | Specify path for the 32-bit UST consumer daemon libraries | |
113 | .TP | |
114 | .BR " --consumerd64-path=PATH | |
115 | Specify path for the 64-bit UST consumer daemon binary | |
116 | .TP | |
117 | .BR " --consumerd64-libdir=PATH | |
118 | Specify path for the 64-bit UST consumer daemon libraries | |
6d601a32 JG |
119 | .TP |
120 | .BR "-l, --load PATH | |
121 | Specify path from which to load session configurations | |
6991b181 DG |
122 | .SH "ENVIRONMENT VARIABLES" |
123 | ||
124 | .PP | |
fa072eae | 125 | Note that all command line options will override environment variables. |
6991b181 DG |
126 | .PP |
127 | ||
128 | .PP | |
129 | .IP "LTTNG_CONSUMERD32_BIN" | |
fa072eae | 130 | Specify the 32-bit consumer binary path. \fB--consumerd32-path\fP |
6991b181 DG |
131 | override this variable. |
132 | .IP "LTTNG_CONSUMERD64_BIN" | |
fa072eae | 133 | Specify the 64-bit consumer binary path. \fB--consumerd64-path\fP |
6991b181 DG |
134 | override this variable. |
135 | .IP "LTTNG_CONSUMERD32_LIBDIR" | |
fa072eae | 136 | Specifiy the 64-bit library path containing libconsumer.so. |
6991b181 DG |
137 | \fB--consumerd32-libdir\fP override this variable. |
138 | .IP "LTTNG_CONSUMERD64_LIBDIR" | |
fa072eae | 139 | Specifiy the 32-bit library path containing libconsumer.so. |
6991b181 | 140 | \fB--consumerd64-libdir\fP override this variable. |
2d85a600 MD |
141 | .IP "LTTNG_DEBUG_NOCLONE" |
142 | Debug-mode disabling use of clone/fork. Insecure, but required to allow | |
143 | debuggers to work with sessiond on some operating systems. | |
6be3d49a DG |
144 | .IP "LTTNG_APP_SOCKET_TIMEOUT" |
145 | Control the timeout of application's socket when sending and receiving | |
554831e7 MD |
146 | commands. Takes an integer parameter: the timeout value, in seconds. |
147 | After this period of time, the application is unregistered by the | |
148 | session daemon. A value of 0 or -1 means an infinite timeout. Default | |
149 | value is 5 seconds. | |
150 | .IP "LTTNG_NETWORK_SOCKET_TIMEOUT" | |
151 | Control timeout of socket connection, receive and send. Takes an integer | |
152 | parameter: the timeout value, in milliseconds. A value of 0 or -1 uses | |
153 | the timeout of the operating system (this is the default). | |
54e399cb JG |
154 | .IP "LTTNG_SESSION_CONFIG_XSD_PATH" |
155 | Specify the path that contains the XML session configuration schema (xsd). | |
6991b181 DG |
156 | .SH "SEE ALSO" |
157 | ||
158 | .PP | |
159 | babeltrace(1), lttng-ust(3), lttng(1) | |
160 | .PP | |
95dc6256 DG |
161 | |
162 | .SH "LIMITATIONS" | |
163 | ||
164 | .PP | |
165 | For unprivileged user running lttng-sessiond, the maximum number of file | |
166 | descriptors per process is usually 1024. This limits the number of traceable | |
167 | applications since for each instrumented application there is two file | |
168 | descriptors per-CPU and one more socktet for bidirectional communication. | |
169 | ||
170 | For the root user, the limit is bumped to 65535. Future version will deal with | |
171 | this limitation. | |
172 | .PP | |
173 | ||
6991b181 DG |
174 | .SH "BUGS" |
175 | ||
176 | .PP | |
fa072eae | 177 | No show stopper bugs are known yet in this version. |
6991b181 DG |
178 | |
179 | If you encounter any issues or usability problem, please report it on our | |
180 | mailing list <lttng-dev@lists.lttng.org> to help improve this project. | |
181 | .SH "CREDITS" | |
182 | ||
183 | .PP | |
c9e32613 | 184 | lttng-sessiond is distributed under the GNU General Public License version 2. See the |
6991b181 DG |
185 | file COPYING for details. |
186 | .PP | |
187 | A Web site is available at http://lttng.org for more information on the LTTng | |
188 | project. | |
189 | .PP | |
190 | You can also find our git tree at http://git.lttng.org. | |
191 | .PP | |
192 | Mailing lists for support and development: <lttng-dev@lists.lttng.org>. | |
193 | .PP | |
194 | You can find us on IRC server irc.oftc.net (OFTC) in #lttng. | |
195 | .PP | |
196 | .SH "THANKS" | |
197 | ||
198 | .PP | |
199 | Thanks to Yannick Brosseau without whom this project would never have been so | |
95dc6256 DG |
200 | lean and mean! Also thanks to the Ericsson teams working on tracing which helped |
201 | us greatly with detailed bug reports and unusual test cases. | |
6991b181 DG |
202 | |
203 | Thanks to our beloved packager Alexandre Montplaisir-Goncalves (Ubuntu and PPA | |
204 | maintainer) and Jon Bernard for our Debian packages. | |
205 | ||
206 | Special thanks to Michel Dagenais and the DORSAL laboratory at Polytechnique de | |
207 | Montreal for the LTTng journey. | |
c9e32613 | 208 | .PP |
6991b181 DG |
209 | .SH "AUTHORS" |
210 | ||
211 | .PP | |
212 | lttng-tools was originally written by Mathieu Desnoyers, Julien Desfossez and | |
213 | David Goulet. More people have since contributed to it. It is currently | |
214 | maintained by David Goulet <dgoulet@efficios.com>. | |
215 | .PP |