Advanced Tracing Features in Eclipse · Advanced Tracing Features in Eclipse Tracing Mini-Summit...
Transcript of Advanced Tracing Features in Eclipse · Advanced Tracing Features in Eclipse Tracing Mini-Summit...
![Page 1: Advanced Tracing Features in Eclipse · Advanced Tracing Features in Eclipse Tracing Mini-Summit LinuxCon 2010 2010-08-09 francois.chouinard@ericsson.com marc.khouzam@ericsson.com](https://reader035.fdocuments.us/reader035/viewer/2022081602/6130b5001ecc5158694444a2/html5/thumbnails/1.jpg)
Advanced Tracing Featuresin Eclipse
Tracing Mini-SummitLinuxCon 20102010-08-09
![Page 2: Advanced Tracing Features in Eclipse · Advanced Tracing Features in Eclipse Tracing Mini-Summit LinuxCon 2010 2010-08-09 francois.chouinard@ericsson.com marc.khouzam@ericsson.com](https://reader035.fdocuments.us/reader035/viewer/2022081602/6130b5001ecc5158694444a2/html5/thumbnails/2.jpg)
© Ericsson | LinuxCon Tracing Mini-Summit 2010
› Eclipse Tracing Framework/LTTng– Introduction– LTTng Eclipse Integration– Perspective and Views– Upcoming Features
› Eclipse GDB Tracepoints– Dynamic Tracepoints– Data Visualization– Static Tracepoints– Planned Features
Overview
![Page 3: Advanced Tracing Features in Eclipse · Advanced Tracing Features in Eclipse Tracing Mini-Summit LinuxCon 2010 2010-08-09 francois.chouinard@ericsson.com marc.khouzam@ericsson.com](https://reader035.fdocuments.us/reader035/viewer/2022081602/6130b5001ecc5158694444a2/html5/thumbnails/3.jpg)
© Ericsson | LinuxCon Tracing Mini-Summit 2010
LTTng – Introduction
› Making use of LTTng with LTTv
› Integration of different tools in Eclipse
› Focus on the new LTTng integration in Eclipse
![Page 4: Advanced Tracing Features in Eclipse · Advanced Tracing Features in Eclipse Tracing Mini-Summit LinuxCon 2010 2010-08-09 francois.chouinard@ericsson.com marc.khouzam@ericsson.com](https://reader035.fdocuments.us/reader035/viewer/2022081602/6130b5001ecc5158694444a2/html5/thumbnails/4.jpg)
© Ericsson | LinuxCon Tracing Mini-Summit 2010
TargetHost
Eclipse
Shell cmd
LTTng
RSE/TCF
TMF
C/C++ App
Java App Whatever
Kernel Space
TCF Agent
lttd lttctl
PatchedKernel
libust libust libust
libustd
libustlibust
libustctl
Local FS
C adapterC adapter
LTTng Eclipse Integration
![Page 5: Advanced Tracing Features in Eclipse · Advanced Tracing Features in Eclipse Tracing Mini-Summit LinuxCon 2010 2010-08-09 francois.chouinard@ericsson.com marc.khouzam@ericsson.com](https://reader035.fdocuments.us/reader035/viewer/2022081602/6130b5001ecc5158694444a2/html5/thumbnails/5.jpg)
© Ericsson | LinuxCon Tracing Mini-Summit 2010
TMF
ControlFlowView
ResourcesView
Statistics View
Kernel StateSystem
EventsView
HistogramView
TraceParsing
Lib
Experiment/Traceset
Trace nTrace 1ProjectView
Some otherAnalysis Tool
Some otherView
JNI
LTTng Eclipse Architecture
![Page 6: Advanced Tracing Features in Eclipse · Advanced Tracing Features in Eclipse Tracing Mini-Summit LinuxCon 2010 2010-08-09 francois.chouinard@ericsson.com marc.khouzam@ericsson.com](https://reader035.fdocuments.us/reader035/viewer/2022081602/6130b5001ecc5158694444a2/html5/thumbnails/6.jpg)
© Ericsson | LinuxCon Tracing Mini-Summit 2010
LTTng Perspective
![Page 7: Advanced Tracing Features in Eclipse · Advanced Tracing Features in Eclipse Tracing Mini-Summit LinuxCon 2010 2010-08-09 francois.chouinard@ericsson.com marc.khouzam@ericsson.com](https://reader035.fdocuments.us/reader035/viewer/2022081602/6130b5001ecc5158694444a2/html5/thumbnails/7.jpg)
© Ericsson | LinuxCon Tracing Mini-Summit 2010
LTTng – Project View
› Projects are used to group traces that you wish to correlate
› Experiments are specific correlations between selected trace files
› Traces are all trace files currently included in the project
![Page 8: Advanced Tracing Features in Eclipse · Advanced Tracing Features in Eclipse Tracing Mini-Summit LinuxCon 2010 2010-08-09 francois.chouinard@ericsson.com marc.khouzam@ericsson.com](https://reader035.fdocuments.us/reader035/viewer/2022081602/6130b5001ecc5158694444a2/html5/thumbnails/8.jpg)
© Ericsson | LinuxCon Tracing Mini-Summit 2010
LTTng – Events View
› 'Raw' merged events in chronological order› Synchronized on timestamp with other views› Upcoming feature:
– Event filtering on time range, event type, field value (e.g. pid), …– Individual trace tabs
![Page 9: Advanced Tracing Features in Eclipse · Advanced Tracing Features in Eclipse Tracing Mini-Summit LinuxCon 2010 2010-08-09 francois.chouinard@ericsson.com marc.khouzam@ericsson.com](https://reader035.fdocuments.us/reader035/viewer/2022081602/6130b5001ecc5158694444a2/html5/thumbnails/9.jpg)
© Ericsson | LinuxCon Tracing Mini-Summit 2010
› Event distribution over full traceset and selected window› Controls to modify current event and event window › Synchronized on current window and current event› Upcoming feature:
– Zooming the selected window using the mouse
LTTng – Histogram View
![Page 10: Advanced Tracing Features in Eclipse · Advanced Tracing Features in Eclipse Tracing Mini-Summit LinuxCon 2010 2010-08-09 francois.chouinard@ericsson.com marc.khouzam@ericsson.com](https://reader035.fdocuments.us/reader035/viewer/2022081602/6130b5001ecc5158694444a2/html5/thumbnails/10.jpg)
© Ericsson | LinuxCon Tracing Mini-Summit 2010
› Displays processes states (color-coded) over time
› State 'tooltips‘ through hovering
› Zooming and filtering
› Quick navigation between processes, states
› Upcoming features :
– Color legend
– Configurable color scheme
LTTng – Control Flow View
![Page 11: Advanced Tracing Features in Eclipse · Advanced Tracing Features in Eclipse Tracing Mini-Summit LinuxCon 2010 2010-08-09 francois.chouinard@ericsson.com marc.khouzam@ericsson.com](https://reader035.fdocuments.us/reader035/viewer/2022081602/6130b5001ecc5158694444a2/html5/thumbnails/11.jpg)
© Ericsson | LinuxCon Tracing Mini-Summit 2010
› Displays system resource states (color-coded) over time› State 'tooltips'› Zooming and filtering› Quick navigation between resources, states› Upcoming features :
– Color legend
– Configurable color scheme
LTTng – Resources View
![Page 12: Advanced Tracing Features in Eclipse · Advanced Tracing Features in Eclipse Tracing Mini-Summit LinuxCon 2010 2010-08-09 francois.chouinard@ericsson.com marc.khouzam@ericsson.com](https://reader035.fdocuments.us/reader035/viewer/2022081602/6130b5001ecc5158694444a2/html5/thumbnails/12.jpg)
© Ericsson | LinuxCon Tracing Mini-Summit 2010
› Displays basic CPU usage statistics› Upcoming feature:
– Make the view generic (decoupled from the kernel events structure)
M
LTTng – Statistics View
![Page 13: Advanced Tracing Features in Eclipse · Advanced Tracing Features in Eclipse Tracing Mini-Summit LinuxCon 2010 2010-08-09 francois.chouinard@ericsson.com marc.khouzam@ericsson.com](https://reader035.fdocuments.us/reader035/viewer/2022081602/6130b5001ecc5158694444a2/html5/thumbnails/13.jpg)
© Ericsson | LinuxCon Tracing Mini-Summit 2010
› General– Tracing tool control– Trace streaming– Correlation of heterogeneous traces– User Space Tracing– GDB Tracepoints– Source lookup– Performance tuning
› Analyses– Time correction (traces synchronization)
T
› Multi-core, multi-level, multi-node– Timing dependencies (processes interactions e.g. startup time)
T
– Pattern matching (security e.g. intrusion detection)
P
LTTng – Upcoming Features
![Page 14: Advanced Tracing Features in Eclipse · Advanced Tracing Features in Eclipse Tracing Mini-Summit LinuxCon 2010 2010-08-09 francois.chouinard@ericsson.com marc.khouzam@ericsson.com](https://reader035.fdocuments.us/reader035/viewer/2022081602/6130b5001ecc5158694444a2/html5/thumbnails/14.jpg)
© Ericsson | LinuxCon Tracing Mini-Summit 2010
LTTng Eclipse Project (http://www.eclipse.org/linuxtools/projectPages/lttng)
)
LTTng Eclipse Wiki (http://wiki.eclipse.org/Linux_Tools_Project/LTTng)
)
Linux Tools (http://www.eclipse.org/linuxtools/index.php)
)
Update Site (http://download.eclipse.org/technology/linuxtools/update)
)
LTTng Project (http://lttng.org)
)
Tracing Wiki (http://lttng.org/tracingwiki/index.php/TracingBook)
)
LTTng – Pointers
![Page 15: Advanced Tracing Features in Eclipse · Advanced Tracing Features in Eclipse Tracing Mini-Summit LinuxCon 2010 2010-08-09 francois.chouinard@ericsson.com marc.khouzam@ericsson.com](https://reader035.fdocuments.us/reader035/viewer/2022081602/6130b5001ecc5158694444a2/html5/thumbnails/15.jpg)
© Ericsson | LinuxCon Tracing Mini-Summit 2010
Dynamic Tracing
› What if existing traces don’t give info needed?› What about systems that are not instrumented?
GDB’s Dynamic TracepointsIntegration within Eclipse
![Page 16: Advanced Tracing Features in Eclipse · Advanced Tracing Features in Eclipse Tracing Mini-Summit LinuxCon 2010 2010-08-09 francois.chouinard@ericsson.com marc.khouzam@ericsson.com](https://reader035.fdocuments.us/reader035/viewer/2022081602/6130b5001ecc5158694444a2/html5/thumbnails/16.jpg)
› Creation of tracepoint as is done as for breakpoints› Enable/Disable› Dynamic condition
› Specification of data to be gathered using symbolic expressions and memory addresses (actions)
› Pass count› Trace-state variables can be used in conditions and
actions
Eclipse Tracepoints
![Page 17: Advanced Tracing Features in Eclipse · Advanced Tracing Features in Eclipse Tracing Mini-Summit LinuxCon 2010 2010-08-09 francois.chouinard@ericsson.com marc.khouzam@ericsson.com](https://reader035.fdocuments.us/reader035/viewer/2022081602/6130b5001ecc5158694444a2/html5/thumbnails/17.jpg)
© Ericsson | LinuxCon Tracing Mini-Summit 2010
Eclipse Tracepoints Selection
› Tracepoints treated as breakpoints
![Page 18: Advanced Tracing Features in Eclipse · Advanced Tracing Features in Eclipse Tracing Mini-Summit LinuxCon 2010 2010-08-09 francois.chouinard@ericsson.com marc.khouzam@ericsson.com](https://reader035.fdocuments.us/reader035/viewer/2022081602/6130b5001ecc5158694444a2/html5/thumbnails/18.jpg)
© Ericsson | LinuxCon Tracing Mini-Summit 2010
Eclipse Tracepoints Display› Tracepoints› Tracepoints with actions
![Page 19: Advanced Tracing Features in Eclipse · Advanced Tracing Features in Eclipse Tracing Mini-Summit LinuxCon 2010 2010-08-09 francois.chouinard@ericsson.com marc.khouzam@ericsson.com](https://reader035.fdocuments.us/reader035/viewer/2022081602/6130b5001ecc5158694444a2/html5/thumbnails/19.jpg)
© Ericsson | LinuxCon Tracing Mini-Summit 2010
Eclipse Tracepoints Disassembly› Disassembly view support for Tracepoints› Tracepoint with condition
![Page 20: Advanced Tracing Features in Eclipse · Advanced Tracing Features in Eclipse Tracing Mini-Summit LinuxCon 2010 2010-08-09 francois.chouinard@ericsson.com marc.khouzam@ericsson.com](https://reader035.fdocuments.us/reader035/viewer/2022081602/6130b5001ecc5158694444a2/html5/thumbnails/20.jpg)
© Ericsson | LinuxCon Tracing Mini-Summit 2010
Eclispe Tracepoints Properties› Tracepoints properties
– Location– Enablement– Condition– Pass count
![Page 21: Advanced Tracing Features in Eclipse · Advanced Tracing Features in Eclipse Tracing Mini-Summit LinuxCon 2010 2010-08-09 francois.chouinard@ericsson.com marc.khouzam@ericsson.com](https://reader035.fdocuments.us/reader035/viewer/2022081602/6130b5001ecc5158694444a2/html5/thumbnails/21.jpg)
© Ericsson | LinuxCon Tracing Mini-Summit 2010
Eclipse Tracepoints Actions
![Page 22: Advanced Tracing Features in Eclipse · Advanced Tracing Features in Eclipse Tracing Mini-Summit LinuxCon 2010 2010-08-09 francois.chouinard@ericsson.com marc.khouzam@ericsson.com](https://reader035.fdocuments.us/reader035/viewer/2022081602/6130b5001ecc5158694444a2/html5/thumbnails/22.jpg)
© Ericsson | LinuxCon Tracing Mini-Summit 2010
Eclipse Tracepoints Actions› Tracepoints action types
– Collect– Evaluate– While-Stepping
› Collect› Evaluate
![Page 23: Advanced Tracing Features in Eclipse · Advanced Tracing Features in Eclipse Tracing Mini-Summit LinuxCon 2010 2010-08-09 francois.chouinard@ericsson.com marc.khouzam@ericsson.com](https://reader035.fdocuments.us/reader035/viewer/2022081602/6130b5001ecc5158694444a2/html5/thumbnails/23.jpg)
© Ericsson | LinuxCon Tracing Mini-Summit 2010
Eclipse Tracepoints Variables
![Page 24: Advanced Tracing Features in Eclipse · Advanced Tracing Features in Eclipse Tracing Mini-Summit LinuxCon 2010 2010-08-09 francois.chouinard@ericsson.com marc.khouzam@ericsson.com](https://reader035.fdocuments.us/reader035/viewer/2022081602/6130b5001ecc5158694444a2/html5/thumbnails/24.jpg)
© Ericsson | LinuxCon Tracing Mini-Summit 2010
Eclipse Tracepoints Control
› Trace Control View– Refreshing info– Trace Variables– Start/Stop Tracing– Navigate during Visualization– Stop Visualization
![Page 25: Advanced Tracing Features in Eclipse · Advanced Tracing Features in Eclipse Tracing Mini-Summit LinuxCon 2010 2010-08-09 francois.chouinard@ericsson.com marc.khouzam@ericsson.com](https://reader035.fdocuments.us/reader035/viewer/2022081602/6130b5001ecc5158694444a2/html5/thumbnails/25.jpg)
© Ericsson | LinuxCon Tracing Mini-Summit 2010
Eclipse Tracepoints Control
![Page 26: Advanced Tracing Features in Eclipse · Advanced Tracing Features in Eclipse Tracing Mini-Summit LinuxCon 2010 2010-08-09 francois.chouinard@ericsson.com marc.khouzam@ericsson.com](https://reader035.fdocuments.us/reader035/viewer/2022081602/6130b5001ecc5158694444a2/html5/thumbnails/26.jpg)
© Ericsson | LinuxCon Tracing Mini-Summit 2010
Eclipse Trace Data
› Resulting trace data – can be stored to file– can be visualized in Eclipse immediately or in the future
![Page 27: Advanced Tracing Features in Eclipse · Advanced Tracing Features in Eclipse Tracing Mini-Summit LinuxCon 2010 2010-08-09 francois.chouinard@ericsson.com marc.khouzam@ericsson.com](https://reader035.fdocuments.us/reader035/viewer/2022081602/6130b5001ecc5158694444a2/html5/thumbnails/27.jpg)
› Navigation through data records using GDB› Each data record is a snapshot of debug information› Records can be examined using standard debugger views
– As if debugger was attached at a specific point in time
– Only collected information can be shown
– Highlighting of the tracepoint of interest
› All collected data of a record can also be dumped as plain text
› Trace data can be saved to file› Saved trace data can be examined offline
Eclipse Trace Data Visualization
![Page 28: Advanced Tracing Features in Eclipse · Advanced Tracing Features in Eclipse Tracing Mini-Summit LinuxCon 2010 2010-08-09 francois.chouinard@ericsson.com marc.khouzam@ericsson.com](https://reader035.fdocuments.us/reader035/viewer/2022081602/6130b5001ecc5158694444a2/html5/thumbnails/28.jpg)
© Ericsson | LinuxCon Tracing Mini-Summit 2010
Eclispe Trace Data Visualization
![Page 29: Advanced Tracing Features in Eclipse · Advanced Tracing Features in Eclipse Tracing Mini-Summit LinuxCon 2010 2010-08-09 francois.chouinard@ericsson.com marc.khouzam@ericsson.com](https://reader035.fdocuments.us/reader035/viewer/2022081602/6130b5001ecc5158694444a2/html5/thumbnails/29.jpg)
© Ericsson | LinuxCon Tracing Mini-Summit 2010
Eclipse Static Tracepoints
› Next phase of development
› Using GDB and UST
› Handled like Dynamic Tracepoints, except for – creation– display list
![Page 30: Advanced Tracing Features in Eclipse · Advanced Tracing Features in Eclipse Tracing Mini-Summit LinuxCon 2010 2010-08-09 francois.chouinard@ericsson.com marc.khouzam@ericsson.com](https://reader035.fdocuments.us/reader035/viewer/2022081602/6130b5001ecc5158694444a2/html5/thumbnails/30.jpg)
© Ericsson | LinuxCon Tracing Mini-Summit 2010
Eclipse Static Tracepoints
› Creation of tracepoint done by designer before compilation
› As for Dynamic tracepoints:› Enable/Disable tracepoints dynamically› Dynamic condition
› Can additionally have dynamic tracing specified (actions)› Pass count› Trace-state variables
![Page 31: Advanced Tracing Features in Eclipse · Advanced Tracing Features in Eclipse Tracing Mini-Summit LinuxCon 2010 2010-08-09 francois.chouinard@ericsson.com marc.khouzam@ericsson.com](https://reader035.fdocuments.us/reader035/viewer/2022081602/6130b5001ecc5158694444a2/html5/thumbnails/31.jpg)
› Support for Observer mode
› Support for Fast Tracepoints– Explicit or implicit support?
› Support for Global Actions (affecting all tracepoints)
Planned Tracepoint Features
![Page 32: Advanced Tracing Features in Eclipse · Advanced Tracing Features in Eclipse Tracing Mini-Summit LinuxCon 2010 2010-08-09 francois.chouinard@ericsson.com marc.khouzam@ericsson.com](https://reader035.fdocuments.us/reader035/viewer/2022081602/6130b5001ecc5158694444a2/html5/thumbnails/32.jpg)
› Disabling tracepoints during Tracing
› Tracepoints Enhanced Visualization:– Currently the user must have an idea of what has been collected
– Goal is to directly and only show what has been collected
› Fast Tracepoints on 3-byte instruction– Currently fast tracepoints are 5-byte jumps insert in the code
– New 3-byte jump to a nearby location to the 5-byte jump
Planned Tracepoint Features
![Page 33: Advanced Tracing Features in Eclipse · Advanced Tracing Features in Eclipse Tracing Mini-Summit LinuxCon 2010 2010-08-09 francois.chouinard@ericsson.com marc.khouzam@ericsson.com](https://reader035.fdocuments.us/reader035/viewer/2022081602/6130b5001ecc5158694444a2/html5/thumbnails/33.jpg)
Questions?
![Page 34: Advanced Tracing Features in Eclipse · Advanced Tracing Features in Eclipse Tracing Mini-Summit LinuxCon 2010 2010-08-09 francois.chouinard@ericsson.com marc.khouzam@ericsson.com](https://reader035.fdocuments.us/reader035/viewer/2022081602/6130b5001ecc5158694444a2/html5/thumbnails/34.jpg)
© Ericsson | LinuxCon Tracing Mini-Summit 2010