Letölthető a Dtrace for Linux

Címkék

Itt a HUP-on folyamatosan figyelemmel kísértük a Sun Microsystems Dtrace névre hallgató "dinamikus instrumentálási technológiájának" Linux-ra való portolását egészen a kezdetektől, mikor is a Dtrace egyik vezető fejlesztője, Bryan Cantrill szerencsét kívánt a születőfélben levő projektnek. Ez körülbelül egy éve volt. A portolást végző fejlesztő most bejelentette a DTrace for Linux letölthetőségét.

A Dtrace fejlesztését végző Paul Fox most ezt írta:

"Szeretném bejelenteni a Sun Dtrace-ének elérhetőségét Linux-ra. Ez egy komplett Linux port, amely olyan forráskód modul formájában került rendelkezésre bocsátásra, amelyet lefordíthatsz és betölthetsz a futó kernelbe.

[...]

A Dtrace fut 32 és 64 bites kernelekkel és tesztelésre került a 2.6.9-től 2.6.29-ig [terjedő] kernelválasztékkal. Nincs szükség a kernelkód megváltoztatására - ez egy egyszerű, nyílt forrású kernelmodul, amely működik a kprobes-okkal vagy azok nélkül"

A szoftver a CDDL feltételei szerint használható. Éles hoston való felhasználás előtt ajánlott tesztelni!

A bejelentés elolvasható itt. Letölthető innen.

Hozzászólások

Ubuntu Jaunty-n:

# wget ftp://crisp.dynalias.com/pub/release/website/dtrace/dtrace-20090612.tar…
# apt-get install libelf-dev bison

Kibont, majd a könyvtárban:

# make all
# make install
# make load
tools/load.pl
18:08:01 Syncing...
18:08:01 Loading: build/driver/dtracedrv.ko
18:08:03 Preparing symbols...
18:08:03 Probes available: 257801
18:08:07 Time: 6s


root@alderaan:/tmp/dev/dtrace-20090612# dtrace -n BEGIN  
dtrace: description 'BEGIN' matched 1 probe
CPU     ID                    FUNCTION:NAME
  1      1                           :BEGIN 

Már el is lehet kezdeni játszani vele.

--
trey @ gépház

Most hogy emiatt feltettem osot notira, na mindegy, jó hír :) kösz.

Javítsatok ki, ha tévednék, de nekem erősen truss-os beütésű proginak tűnik..
____________________________________
Az embert 2 éven át arra tanítják hogyan álljon meg a 2 lábán, és hogyan beszéljen... Aztán azt mondják neki: -"Ülj le és kuss legyen!"..

Kijavitalak, a trusstol sokkal tobbet tud, bar nehany sorban lehet trusst irni benne:). Nekem ez a hozzaszolasod tunik erosen "nem igazan neztem meg mi ez" beutesunek:). A trussal egy adott process rendszerhivasait tudok csak nezni, itt ha erre hasznalod csak, akkor ezt rendszerszinten tudod. Pl az egesz rendszer melyik rendszerhivasban tolti el a legtobb idot. Es nem csak rendszerhivas szinten tudsz vele obszervalni, hanem kernel es userspaceben is.

Az, hogy nem néztem annyira utána jogos.. Elkezdtem olvasgatni az itteni kiírást, meg kicsit belenéztem a wikibe, és ezek után csináltam segget a számból :) Most így még1x nekiugorva, és immár élesen tesztelve látom ténylegesen a különbséget :)
Jah igen.. FYI - truss-ban ( legalább is AIX alatt ahol előszeretettel használom ) le tudsz menni subchild szintre is ha kell, bár belátom, hogy a dtrace tényleg leveri tudásban.. Kiváncsi leszek mikorra kerül bele a mainline kernelbe is..
____________________________________
Az embert 2 éven át arra tanítják hogyan álljon meg a 2 lábán, és hogyan beszéljen... Aztán azt mondják neki: -"Ülj le és kuss legyen!"..

A systemtap végülis egy dtrace "implementáció" Linuxra. Mennyivel tud maga a dtrace többet Linuxon, mint a systemtap?
Valaki tud erről infót?
Érdemes nekifeküdni a linuxos dtrace-nek, vagy inkább maradjon az ember a systemtap-nél?

miota _szamit_ egy unix command line toolnal egy parameter szuksegessege? en inkabb a hianya miatt panaszkodnek.
amugy az eredeti kornyezetben az adott felhasznalo jogosultsagaitol fuggoen elkepzelheto, hogy a destruktiv traceles, a kernel traceles, vagy az userspace traceles egyaltalan nem elerheto.

sracok, etch-en sikerult leforditania valakinek?

nekem mar lefordul (kitoroltem az egyedi strcmp/len fgv.-ket), viszont a modul nem toltodik be:

forditasnal:

Building modules, stage 2.
MODPOST
WARNING: "__KERNEL_PERCPU" [/root/dtrace-20090622/build-2.6.18/driver/dtracedrv.ko] undefined!
WARNING: "smp_call_function_single" [/root/dtrace-20090622/build-2.6.18/driver/dtracedrv.ko] undefined!
LD [M] /root/dtrace-20090622/build-2.6.18/driver/dtracedrv.ko

de sikeres.

betoltesnel:

tools/load.pl
10:36:56 Syncing...
10:36:56 Loading: build/driver/dtracedrv.ko
insmod: error inserting 'build/driver/dtracedrv.ko': -1 Unknown symbol in module

Jun 23 10:36:56 tp kernel: dtracedrv: Unknown symbol smp_call_function_single
Jun 23 10:36:56 tp kernel: dtracedrv: Unknown symbol __KERNEL_PERCPU
make: *** [load] Error 1

5let, valaki?