2010-11-25 Francois Chouinard <fchouinard@gmail.com> Fix for Bug316910
[deliverable/tracecompass.git] / org.eclipse.linuxtools.lttng.help / Linux_Tools_Project / LTTng / User_Guide / User-Interface.html
1 <?xml version='1.0' encoding='utf-8' ?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2 <html xmlns="http://www.w3.org/1999/xhtml">
3 <head>
4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
5 <title>LTTng Plug-in User Guide - User Interface</title>
6 <link type="text/css" rel="stylesheet" href="../../../book.css"/>
7 </head>
8 <body>
9 <table class="navigation" style="width: 100%;" border="0" summary="navigation">
10 <tr>
11 <th style="width: 100%" align="center" colspan="3">User Interface</th>
12 </tr>
13 <tr>
14 <td style="width: 20%" align="left">
15 <a href="Getting-Started.html" title="Getting Started">
16 <img alt="Previous" border="0" src="../../../images/prev.gif"/>
17 </a>
18 </td>
19 <td style="width: 60%" align="center"></td>
20 <td style="width: 20%" align="right">
21 <a href="Limitations.html" title="Limitations">
22 <img alt="Next" border="0" src="../../../images/next.gif"/>
23 </a>
24 </td>
25 </tr>
26 <tr>
27 <td style="width: 20%" align="left" valign="top">Getting Started</td>
28 <td style="width: 60%" align="center"></td>
29 <td style="width: 20%" align="right" valign="top">Limitations</td>
30 </tr>
31 </table><hr/>
32 <h1 id="User_Interface">User Interface</h1>
33 <p>This section describes the LTTng perspective and its specific views.</p>
34 <h2 id="LTTng_Perspective">LTTng Perspective</h2>
35 <p>The LTTng perspective groups the LTTng specific views, namely:</p>
36 <ul>
37 <li>
38 <a href="User-Interface.html#Project_View">Project_View</a>
39 </li>
40 <li>
41 <a href="User-Interface.html#Events_View">Events_View</a>
42 </li>
43 <li>
44 <a href="User-Interface.html#Histogram_View">Histogram_View</a>
45 </li>
46 <li>
47 <a href="User-Interface.html#Control_Flow_View">Control_Flow_View</a>
48 </li>
49 <li>
50 <a href="User-Interface.html#Resources_View">Resources_View</a>
51 </li>
52 <li>
53 <a href="User-Interface.html#Statistics_View">Statistics_View</a>
54 </li>
55 </ul>
56 <p>The views are synchronized i.e. selecting an event, a timestamp, a time range, etc will update the other views accordingly.</p>
57 <p>
58 <img border="0" src="images/LTTngPerspective.png"/>
59 </p>
60 <p>The perspective can be opened from the Eclipse Open Perspective dialog (Window &gt; Open Perspective... &gt; Other).</p>
61 <p>
62 <img border="0" src="images/LTTngPerspectiveOpen.png"/>
63 </p>
64 <h2 id="Project_View">Project View</h2>
65 <p>The project view displays the LTTng projects of the current workspace.</p>
66 <p>Two folders are always present: Traces and Experiments. </p>
67 <p>
68 <img border="0" src="images/ProjectView.png"/>
69 </p>
70 <p>A new LTTng project can be created using the LTTng Project dialog (File &gt; New &gt; Project... or the context menu)</p>
71 <p>
72 <img border="0" src="images/LTTngProjectNewWizard.png"/>
73 </p>
74 <p>
75 <img border="0" src="images/LTTngProjectNewDialog.png"/>
76 </p>
77 <p>The Traces folder holds the set of traces available for experiments. Traces are imported in the LTTng project using an import wizard triggered by a context menu.</p>
78 <p>Note: An LTTng trace is actually a composite of multiple channel traces grouped under a folder. It is the folder that has to be imported. </p>
79 <p>
80 <img border="0" src="images/LTTngTraceImportDialog.png"/>
81 </p>
82 <p>The Experiment folder holds the set of experiments of the project. Experiments are created from the Experiment context menu and are configured from the experiment's context menu.</p>
83 <p>
84 <img border="0" src="images/LTTngTraceSelectDialog.png"/>
85 </p>
86 <h2 id="Events_View">Events View</h2>
87 <p>The Events View shows the basic trace data in chronological order in a tabular format.</p>
88 <p>The header displays the current trace (or experiment) name. The table displays the following fields:</p>
89 <ul>
90 <li>
91 <b>Timestamp</b>: the event timestamp
92 </li>
93 <li>
94 <b>Source</b>: the component that generated the event
95 </li>
96 <li>
97 <b>Type</b>: the event type
98 </li>
99 <li>
100 <b>Reference</b>: the trace that holds the event (e.g. experiments typically hold multiple traces)
101 </li>
102 <li>
103 <b>Content</b>: the raw event content
104 </li>
105 </ul>
106 <p>
107 <img border="0" src="images/EventsView.png"/>
108 </p>
109 <p>The highlighted event is the
110 <i>current event</i> and is synchronized with the other views. If you select another event, the other views will be synchronized accordingly.
111 </p>
112 <h2 id="Histogram_View">Histogram View</h2>
113 <p>The Histogram View displays the trace events distribution with respect to time.</p>
114 <p>
115 <img border="0" src="images/HistogramView.png"/>
116 </p>
117 <p>The large histogram, at the bottom, shows the event distribution over the whole trace. The timetamps (sec.nanosec) correspond to the first and the last event in the trace. The selected area corresponds to the current time range window. When clicking in that viewer, the mouse wheel can be used to zoom in/out and update the time range window.</p>
118 <p>The smaller histogram, on the top right of the view, is a zoom of the current time range window. It also has timestamps on the bottom that correspond to the time range. The scale of the histogram (i.e. the number of events) is displayed on the right.</p>
119 <p>On the top left, there are three elements of data:</p>
120 <ul>
121 <li>
122 <b>Current Event (sec)</b>: Displays the timestamp of the currently selected event
123 </li>
124 <li>
125 <b>Window Span (sec)</b>: Displays the current time range window size
126 </li>
127 <li>
128 <b>Window Center (sec)</b>: Displays the timestamp at the cursor
129 </li>
130 </ul>
131 <h2 id="Control_Flow_View">Control Flow View</h2>
132 <p>The Control Flow View is applicable to kernel trace data. It displays the list processes in tabular format, sorted by PID, as well as their state transitions over time in a Gantt chart format.</p>
133 <p>
134 <img border="0" src="images/ControlFlowView.png"/>
135 </p>
136 <p>The tool bar options from left to right are:</p>
137 <ul>
138 <li>
139 <b>Home</b>: reset the time window to the whole trace range.
140 </li>
141 <li>
142 <b>Next Event</b>: sets the current event to the next event of the selected process.
143 </li>
144 <li>
145 <b>Previous Event</b>: sets the current event to the previous event of the selected process.
146 </li>
147 <li>
148 <b>Next Process</b>: sets the selected process to the next down in the list.
149 </li>
150 <li>
151 <b>Previous Process</b>: sets the selected process to the next up in the list.
152 </li>
153 <li>
154 <b>Zoom In</b>: zooms in the trace (i.e. shortens the current time window) at the current location. This can also be accomplished by using the mouse wheel in the graphical part.
155 </li>
156 <li>
157 <b>Zoom Out</b>: zooms out the trace (i.e. widens the current time window) at the current location. This can also be accomplished by using the mouse wheel in the graphical part.
158 </li>
159 <li>
160 <b>Filter</b>: display only the processes that have a state transition in the current window.
161 </li>
162 </ul>
163 <p>The process table displays the following fields:</p>
164 <ul>
165 <li>
166 <b>Process</b>: the process name if know (
167 <i>UNNAMED</i> otherwise)
168 </li>
169 <li>
170 <b>Brand</b>:
171 </li>
172 <li>
173 <b>PID</b>: the process ID
174 </li>
175 <li>
176 <b>TGID</b>:
177 </li>
178 <li>
179 <b>PPID</b>: the parent PID
180 </li>
181 <li>
182 <b>CPU</b>: the CPU/core the process is running on
183 </li>
184 <li>
185 <b>Birth sec/nsec</b>: the birth time of the process (
186 <i>0</i> if unknown) - seconds and nanoseconds
187 </li>
188 <li>
189 <b>TRACE</b>: the name of the trace that holds this process
190 </li>
191 </ul>
192 <p>The graphical part shows the state of the corresponding process
193 <i>a la Gantt</i>: the color represents the process state and the length of the bar represents the time span during which the process was in that state. The header corresponds to a time axis.
194 Note that depending on the scale or zooming factor, some pixels might represent more (in fact many, many more) than just one state.
195 </p>
196 <p>Here's a list of possible colors and their corresponding process state:</p>
197 <p>
198 <img border="0" src="images/LTTngControlFlowColorLegend.png"/>
199 </p>
200 <ul>
201 <li>
202 <b>MODE_UNKNOWN</b> - Process state is unknown: there is not enough information in the trace to determine the state. This usually occurs for processes already alive when tracing started and the system is unable to infer the original state from the following trace events.
203 </li>
204 <li>
205 <b>USER_MODE</b> - Running in user mode: the process is executing user source code or library calls (in user space).
206 </li>
207 <li>
208 <b>SYSCALL</b> - Running in system call: the process is doing a system call to the kernel and the running mode switched from process limited rights to super user mode.
209 </li>
210 <li>
211 <b>IRQ</b> - Servicing an IRQ: the currently running process is interrupted by an IRQ. As the IRQ does not change the currently running process (on some architectures it uses the same stack as the process), the IRQ state is shown in the state of the process. IRQ can be nested: a higher priority interrupt can interrupt a lower priority interrupt.
212 </li>
213 <li>
214 <b>TRAP</b> - Running in a trap: the kernel is running a trap that services a fault. The most frequent trap is the memory page fault trap, called every time a page is missing from physical memory.
215 </li>
216 <li>
217 <b>WAIT</b> - Waiting on I/O: the process is waiting for an I/O operation to complete before it can continue its execution.
218 </li>
219 <li>
220 <b>UNNAMED</b> - Mode unnamed: see
221 <b>MODE_UNKNOWN</b>
222 </li>
223 <li>
224 <b>WAIT_FORK</b> - Waiting for fork: the process has just been created by its parent and is waiting for first scheduling.
225 </li>
226 <li>
227 <b>WAIT_CPU</b> - Waiting for CPU: the process is ready to run but waiting to get the CPU (a schedule in event).
228 </li>
229 <li>
230 <b>EXIT</b> - Process has exited: the process has exited, but still has the control of the CPU. It may happend if it has some tasks to do in the exit system call.
231 </li>
232 <li>
233 <b>ZOMBIE</b> - Zombie process: the process in in zombie state. This state happens when a process exits and then waits for the parent to wait for it (wait() or waitpid()).
234 </li>
235 <li>
236 <b>SOFTIRQ</b> - Running a soft IRQ handler: a SoftIRQ is normally triggered by an interrupt that whishes to have some work done very soon, but not "now". Doing the long part of a computation in a softirq that will be run just after the IRQ handler exits permits to do work while interrupts are enabled, without increasing the system latency.
237 </li>
238 </ul>
239 <h3 id="Mouse_Control">Mouse Control</h3>
240 <ul>
241 <li>Mouse Wheel
242 <ul>
243 <li>Forward - Zoom In.</li>
244 <li>Backward - Zoom Out.</li>
245 </ul>
246 </li>
247 </ul>
248 <ul>
249 <li>Mouse Drag
250 <ul>
251 <li>States Area - Moves the time window in the direction of the drag keeping current scale.</li>
252 <li>Time Scale Area - Changes the time scale to the time range from the start to the end of the drag action.</li>
253 </ul>
254 </li>
255 </ul>
256 <ul>
257 <li>Mouse Hover
258 <ul>
259 <li>Hovering the mouse selection over a state will trigger a tooltip display with additional information, including the start and end times as well as the name of the state associated to the color.</li>
260 </ul>
261 </li>
262 </ul>
263 <p>
264 <img border="0" src="images/LTTngProcessStateInfo.png"/>
265 </p>
266 <h2 id="Resources_View">Resources View</h2>
267 <p>The Resources View is applicable to kernel trace data. It displays the list system resources in tree format, grouped by trace, as well as their state transitions over time in a Gantt chart format.</p>
268 <p>
269 <img border="0" src="images/ResourcesView.png"/>
270 </p>
271 <p>The tool bar options from left to right are:</p>
272 <ul>
273 <li>
274 <b>Home</b>: reset the time window to the whole trace range.
275 </li>
276 <li>
277 <b>Next Event</b>: sets the current event to the next event of the selected process.
278 </li>
279 <li>
280 <b>Previous Event</b>: sets the current event to the previous event of the selected process.
281 </li>
282 <li>
283 <b>Next Process</b>: sets the selected process to the next down in the list.
284 </li>
285 <li>
286 <b>Previous Process</b>: sets the selected process to the next up in the list.
287 </li>
288 <li>
289 <b>Zoom In</b>: zooms in the trace (i.e. shortens the current time window) at the current location. This can also be accomplished by using the mouse wheel in the graphical part.
290 </li>
291 <li>
292 <b>Zoom Out</b>: zooms out the trace (i.e. widens the current time window) at the current location. This can also be accomplished by using the mouse wheel in the graphical part.
293 </li>
294 <li>
295 <b>Filter</b>: display only the processes that have a state transition in the current window.
296 </li>
297 </ul>
298 <p>The resource tree displays the system resources whose state transitions were collected in the trace.</p>
299 <p>The graphical part shows the state of the corresponding resources
300 <i>a la Gantt</i>: the color represents the resource state and the length of the bar represents the time span during which the resource was in that state. The header corresponds to a time axis.
301 Note that depending on the scale or zooming factor, some pixels might represent more (in fact many, many more) than just one state.
302 </p>
303 <p>Here's a list of possible colors and their corresponding process state:</p>
304 <p>
305 <img border="0" src="images/LTTngResourcesColorLegend.png"/>
306 </p>
307 <h3 id="Mouse_Control_2">Mouse Control</h3>
308 <p>See
309 <a href="User-Interface.html#Control_Flow_View">Control_Flow_View</a>
310 </p>
311 <h2 id="Statistics_View">Statistics View</h2>
312 <p>The Statistics View displays the various event counters that are collected when analyzing a trace. The data is organized per trace.</p>
313 <p>
314 <img border="0" src="images/StatisticsView.png"/>
315 </p><hr/>
316 <table class="navigation" style="width: 100%;" border="0" summary="navigation">
317 <tr>
318 <td style="width: 20%" align="left">
319 <a href="Getting-Started.html" title="Getting Started">
320 <img alt="Previous" border="0" src="../../../images/prev.gif"/>
321 </a>
322 </td>
323 <td style="width: 60%" align="center">
324 <a href="User-Guide.html" title="LTTng Plug-in User Guide">
325 <img alt="LTTng Plug-in User Guide" border="0" src="../../../images/home.gif"/>
326 </a>
327 </td>
328 <td style="width: 20%" align="right">
329 <a href="Limitations.html" title="Limitations">
330 <img alt="Next" border="0" src="../../../images/next.gif"/>
331 </a>
332 </td>
333 </tr>
334 <tr>
335 <td style="width: 20%" align="left" valign="top">Getting Started</td>
336 <td style="width: 60%" align="center"></td>
337 <td style="width: 20%" align="right" valign="top">Limitations</td>
338 </tr>
339 </table>
340 </body>
341 </html>
This page took 0.039908 seconds and 5 git commands to generate.