Come installo DTrace?


20

Google suggerisce che DTrace è disponibile su Linux ma non riesco a trovare le istruzioni su come installarlo.

DTrace è un framework di tracciamento dinamico completo. È progettato per fornire informazioni operative che consentono agli utenti di ottimizzare e risolvere i problemi relativi alle applicazioni e al sistema operativo stesso. Particolare attenzione è stata presa per renderlo sicuro da usare in un ambiente di produzione. Ad esempio, c'è un effetto minimo della sonda quando è in corso la traccia e nessun impatto sulle prestazioni associato a qualsiasi sonda disabilitata; questo è importante poiché ci sono decine di migliaia di sonde DTrace che possono essere abilitate.

Risposte:


15

Usa git o scarica diverse versioni di dtrace qui . Ho trovato queste istruzioni di installazione :

git clone "https://github.com/dtrace4linux/linux.git" dtrace
cd dtrace
tools/get-deps.pl
make all 
make install
sudo make load

Sidenote: un commento sul brainstorming afferma che potresti fare lo stesso con questi 3:


domanda interessante - questo link dice che dtrace non è disponibile per "debian" (aka ubuntu?) - è più aggiornato delle tue istruzioni collegate. webcache.googleusercontent.com/…
fossfreedom

Vedi l'ultimo commento sul brainstorming qui: brainstorm.ubuntu.com/idea/4971 Nessun deb ma è utilizzabile su Ubuntu.
Rinzwind,

ok - speriamo che l'OP lo testerà - +1 da parte mia.
Fossfreedom

Ho anche trovato questo brainstorm.ubuntu.com/idea/11463 ptrace, utrace e systemtap modificati in alternativa (non li ho
provati

. build / config.sh; \ mkdir -p "" / usr / lib / dtrace / $ CPU_BITS; \ rm -f "" /usr/lib/dtrace/types.d; \ mkdir -p "" / usr / sbin /; \ install -m 4755 -o root build / dtrace "" / usr / sbin / dtrace; \ install -m 644 -o root build / drti.o "" /usr/lib/dtrace/$CPU_BITS/drti.o mkdir: impossibile creare la directory '/ usr / lib / dtrace': autorizzazione negata installazione: impossibile creare un file regolare '/ usr / sbin / dtrace': Autorizzazione negata installazione: impossibile creare il file regolare '/usr/lib/dtrace/64/drti.o': Nessun file o directory makefile: 110: ricetta per destinazione 'install' non riuscita: *** [installa] Errore 1
gtzinos,

14

1

Ho trovato il pacchetto sytemtap-sdt-dev. Da un tipo di terminale:

sudo apt-get install systemtap-sdt-dev

Questo pacchetto fornisce dtrace .

Si noti che, sebbene abbia un nome dtraceper un motivo, non è esattamente lo stesso dell'originale Solaris. Probabilmente puoi fare alcune cose, ma non tutte.

2

Se non ti dispiace compilare, una versione più completa di funzionalità dtraceè la porta di Paul Fox:
ftp://crisp.dyndns-server.com/pub/release/website/dtrace/

È abbastanza facile da costruire, vedi README.

3

C'è anche una Oracleporta. Ma non l'ho provato e non lo consiglierei . Apparentemente, ha solo circa lo 0,1 percento delle sonde della porta Paul Fox.

$ dtrace -l | wc -l
394267

Che è ironico, perché Oracleacquistato Sun, gli autori originali di dtraceper Solaris.

4

Si noti che Linux-dtrace manca di alcune funzionalità dello spazio utente fornite dal (originale) Solaris-dtrace. Quindi alcuni usi di dtrace, come la profilazione di Node.js, saranno complicati, se non impossibili, usando clone, fork o immitazione di dtrace.


5
Infatti, la versione in "systemtap-sdt-dev" non supporta l'opzione "-n"
Erel Segal-Halevi
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.