Làm cách nào để cài đặt DTrace?


20

Googling gợi ý rằng DTrace có sẵn trên Linux nhưng tôi không thể tìm thấy hướng dẫn về cách cài đặt nó.

DTrace là một khung theo dõi động toàn diện. Nó được thiết kế để cung cấp những hiểu biết sâu sắc về hoạt động cho phép người dùng điều chỉnh và khắc phục sự cố các ứng dụng và hệ điều hành. Xem xét đặc biệt đã được thực hiện để làm cho nó an toàn để sử dụng trong môi trường sản xuất. Ví dụ, có hiệu ứng thăm dò tối thiểu khi quá trình theo dõi đang được tiến hành và không có tác động hiệu suất liên quan đến bất kỳ đầu dò bị vô hiệu hóa nào; điều này rất quan trọng vì có hàng chục ngàn đầu dò DTrace có thể được kích hoạt.

Câu trả lời:


15

Sử dụng git hoặc tải xuống một số phiên bản của dtrace tại đây . Tôi tìm thấy các hướng dẫn cài đặt này :

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

Sidenote: Một nhận xét về động não tuyên bố bạn có thể làm tương tự với 3 điều này:


câu hỏi thú vị - liên kết web này nói rằng dtrace không có sẵn cho "debian" (còn gọi là ubfox?) - nó cập nhật hơn so với hướng dẫn được liên kết của bạn. webcache.googleusercontent.com/ từ
fossfreedom

Xem bình luận cuối cùng về brainstorm tại đây: brainstorm.ubfox.com/idea/4971 Không có tranh luận nhưng nó có thể sử dụng được trên Ubuntu.
Rinzwind

ok - hy vọng OP sẽ kiểm tra điều này - +1 từ tôi.
fossfreedom

Tôi cũng tìm thấy cái này brainstorm.ubfox.com/idea/11463 ptrace, utrace và systemtap được chỉnh sửa thay thế (không thử những thứ này quá btw;))
Rinzwind

. xây dựng / 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: không thể tạo thư mục '/ usr / lib / dtrace': Quyền bị từ chối cài đặt: không thể tạo tệp thông thường '/ usr / sbin / dtrace': Quyền bị từ chối cài đặt: không thể tạo tệp thông thường '/usr/lib/dtrace/64/drti.o': Không có tệp hoặc thư mục nào như vậy makefile: 110: công thức cho mục tiêu 'cài đặt' không thành công: *** [cài đặt] Lỗi 1
gtzinos

14

1

Tôi tìm thấy gói sytemtap-sdt-dev. Từ một loại thiết bị đầu cuối:

sudo apt-get install systemtap-sdt-dev

Gói này cung cấp dtrace.

Xin lưu ý rằng mặc dù nó được đặt tên dtracevì một lý do, nó không hoàn toàn giống với bản gốc Solaris. Bạn có thể có thể làm một số thứ, nhưng không phải tất cả.

2

Nếu bạn không ngại biên dịch, phiên bản đầy đủ tính năng hơn dtracelà bản port của Paul Fox:
ftp://crisp.dyndns-server.com/pub/release/website/dtrace/

Nó khá dễ để xây dựng, xem README.

3

Ngoài ra còn có một Oraclecổng. Nhưng tôi đã không kiểm tra nó và sẽ không đề nghị nó. Rõ ràng, nó chỉ có khoảng 0,1 phần trăm tàu ​​thăm dò cảng Paul Fox.

$ dtrace -l | wc -l
394267

Đó là mỉa mai, bởi vì Oraclemua Sun, các tác giả ban đầu dtracecho Solaris.

4

Lưu ý rằng Linux-dtrace thiếu một số chức năng không gian người dùng mà Solaris-dtrace (bản gốc) cung cấp. Vì vậy, một số cách sử dụng nhất định cho dtrace, chẳng hạn như lược tả Node.js, sẽ rất phức tạp, nếu không nói là không thể, sử dụng bản sao, fork hoặc bắt chước dtrace.


5
Thật vậy, phiên bản trong "systemtap-sdt-dev" không hỗ trợ tùy chọn "-n"
Erel Segal-Halevi
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.