Differences between revisions 5 and 8 (spanning 3 versions)
Revision 5 as of 2018-08-26 10:10:21
Size: 677
Editor: PaulWise
Comment: use canonical form for program/args spec
Revision 8 as of 2018-09-19 02:33:57
Size: 879
Editor: PaulWise
Comment: ruby-rbtrace was accepted, update link
Deletions are marked like this. Additions are marked like this.
Line 3: Line 3:
|| Program type || Tool || Command-line || || Tracing type || Tool || Command-line ||
Line 6: Line 6:
|| ELF (functions) || DebianPackage:latrace || `latrace program args` ||
|| getenv(3) calls || [[https://github.com/jwilk/getenvy|getenvy]] || `export LD_PRELOAD="libgetenvy.so" ; GETENVY=1 program args` ||
Line 8: Line 10:
|| Ruby || [[DebianBug:907245|ruby-rbtrace]] || `rbtrace --exec /usr/bin/program args` || || Ruby || DebianPackage:ruby-rbtrace || `rbtrace --exec /usr/bin/program args` ||

There are various ways to trace execution of programs written in various languages:

Tracing type

Tool

Command-line

ELF (syscalls)

strace

strace program args

ELF (functions)

ltrace

ltrace program args

ELF (functions)

latrace

latrace program args

getenv(3) calls

getenvy

export LD_PRELOAD="libgetenvy.so" ; GETENVY=1 program args

Shell

all shells

sh -x /usr/bin/program args

Perl

libdevel-trace-perl

perl -d:Trace /usr/bin/program args

Ruby

ruby-rbtrace

rbtrace --exec /usr/bin/program args

Python

Python trace module

python -m trace --count /usr/bin/program args


CategoryDebugging