Bagaimana cara menginstal DTrace?

20

Googling menyarankan bahwa DTrace tersedia di Linux tetapi saya tidak dapat menemukan instruksi bagaimana cara menginstalnya.

DTrace adalah kerangka kerja pelacakan dinamis yang komprehensif. Ini dirancang untuk memberikan wawasan operasional yang memungkinkan pengguna menyetel dan memecahkan masalah aplikasi dan OS itu sendiri. Pertimbangan khusus telah diambil untuk membuatnya aman untuk digunakan dalam lingkungan produksi. Misalnya, ada efek probe minimal ketika pelacakan sedang berlangsung, dan tidak ada dampak kinerja yang terkait dengan probe yang dinonaktifkan; ini penting karena ada puluhan ribu probe DTrace yang dapat diaktifkan.

tepat waktu
sumber

Jawaban:

15

Gunakan git atau unduh beberapa versi dtrace di sini . Saya menemukan petunjuk Instalasi ini :

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

Sidenote: Komentar tentang brainstorming mengklaim Anda dapat melakukan hal yang sama dengan 3 ini:

Rinzwind
sumber
pertanyaan menarik - tautan web ini mengatakan bahwa dtrace tidak tersedia untuk "debian" (alias ubuntu?) - ini lebih mutakhir daripada instruksi yang ditautkan. webcache.googleusercontent.com/…
fossfreedom
Lihat komentar terakhir tentang brainstorm di sini: brainstorm.ubuntu.com/idea/4971 Tidak ada deb tetapi bisa digunakan di Ubuntu.
Rinzwind
ok - semoga OP akan menguji ini - +1 dari saya.
fossfreedom
Saya juga menemukan satu ini brainstorm.ubuntu.com/idea/11463 ptrace, utrace, dan systemtap diedit sebagai alternatif (jangan coba ini juga btw;))
Rinzwind
. 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: tidak dapat membuat direktori '/ usr / lib / dtrace': Izin ditolak instal: tidak dapat membuat file biasa '/ usr / sbin / dtrace': Izin ditolak instal: tidak dapat membuat file biasa '/usr/lib/dtrace/64/drti.o': Tidak ada file atau direktori makefile: 110: resep untuk target 'install' gagal buat: *** [instal] Kesalahan 1
gtzinos
14

1

Saya menemukan paket sytemtap-sdt-dev. Dari jenis terminal:

sudo apt-get install systemtap-sdt-dev

Paket ini menyediakan dtrace.

Harap perhatikan bahwa meskipun diberi nama dtracekarena suatu alasan, itu tidak persis sama dengan aslinya Solaris. Anda mungkin dapat melakukan beberapa hal, tetapi tidak semua.

2

Jika Anda tidak keberatan mengkompilasi, versi yang lebih lengkap fitur dtraceadalah port oleh Paul Fox:
ftp://crisp.dyndns-server.com/pub/release/website/dtrace/

Cukup mudah untuk membangun, lihat README.

3

Ada juga Oracleport. Tetapi saya belum mengujinya dan tidak akan merekomendasikannya . Rupanya, itu hanya memiliki sekitar 0,1 persen dari probe port Paul Fox.

$ dtrace -l | wc -l
394267

Yang ironis, karena Oracledibeli Sun, penulis asli dtraceuntuk Solaris.

4

Perhatikan bahwa Linux-dtrace tidak memiliki beberapa fungsionalitas userspace yang disediakan oleh Solaris-dtrace (asli). Jadi kegunaan tertentu untuk dtrace, seperti membuat profil Node.js, akan rumit, jika bukan tidak mungkin, menggunakan salah satu klon, garpu, atau imitasi dtrace.

Redsandro
sumber
5
Memang, versi dalam "systemtap-sdt-dev" tidak mendukung opsi "-n"
Erel Segal-Halevi