Centos / Fedora에서 DTrace 제한


8

Centos 6 상자에서 문제를 해결하고 싶었습니다. dtrace를 실행했는데 실패했습니다. 그것은 허용하지 않습니다 -n또는 -l또는 -P또는 명령 줄 옵션. 그것은 단지 동의를 주장 -h, -G, -C, -I, -s,와 -o. 나는 이것이 이상한 Centos 일이어야한다고 생각했기 때문에 Fedora 22 상자를 확인했습니다. 같은 문제입니다. 매우 제한된 수의 명령 줄 옵션 만 허용합니다. Centos와 비슷하고 Fedora와 비슷한 Oracle 박스를 사용해 보았습니다. 잘 작동했습니다. 나는 그냥 실행할 수 있었고 dtrace모든 명령 줄 옵션의 긴 목록을 얻을 수있었습니다 . 나는 Centos와 Fedora로 돌아갔다. 내가 입력 dtrace하면 출력은Usage /bin/dtrace [--help] [-h | -G] [-C [-I<Path>]] -s File.d [-o <File>]. 그래서, 인터넷 검색 한 시간 후에, 나는 포기했습니다. Centos / Fedora에서 dtrace가 올바르게 작동하도록하려면 어떻게합니까? 루트와 사용자로 모두 시도했습니다. 기능을 향상시키기 위해 패키지를 검색했습니다. dtrace를 제거하고 다시 설치하려고했습니다. 남은 것은 패키지를 제거하고 소스에서 dtrace를 설치하는 것입니다.


Oracle 머신에서 작동하는 것과 같은 것을 실행 dtrace -n BEGIN합니다 (추적 표시). Centos / Fedora 시스템에서 -n이 지원되지 않기 때문에 사용 오류가 발생합니다. 거의 명령 줄 옵션이 지원되지 않습니다.
kainaw

답변:


8

Oracle Linux에서 찾은 dtrace는 Linux systemtap과 함께 제공되는 dtrace 가 아니며 다른 모든 Linux 배포판에서 찾을 수 있습니다.

오히려 Oracle에서 제공하고 Oracle Linux에서만 사용 가능한 Solaris dtrace 포트입니다 .

두 명령은 완전히 다르며 목적이 다릅니다.

표준 Linux 커널 추적 기능은 systemtap으로 알려져 있으며 Oracle의 dtrace는 그에 대한 독점적 인 래퍼입니다. 언제든지 systemtap을 직접 사용할 수 있습니다 .


4

dtraceOracle 이외의 Linux 배포판에서 제공 되는 스크립트는 systemtap프로젝트 의 작은 도구입니다 . <sys/sdt.h>solaris dtrace 의 관련 오브젝트 / 헤더 파일 작성 기능 만 제공합니다 . 시스템 탭 데이터 구조에 매핑되므로 stap -L 'process("a.out").mark("*")프로브가 계측을 나열합니다.


3

이제 BPFtrace를 사용할 수 있습니다!

https://github.com/iovisor/bpftrace

BPFtrace is a high-level tracing language for Linux enhanced Berkeley Packet Filter (eBPF) available in recent Linux kernels (4.x). BPFtrace uses LLVM as a backend to compile scripts to BPF-bytecode and makes use of BCC for interacting with the Linux BPF system, as well as existing Linux tracing capabilities: kernel dynamic tracing (kprobes), user-level dynamic tracing (uprobes), and tracepoints. The BPFtrace language is inspired by awk and C, and predecessor tracers such as DTrace and SystemTap. BPFtrace was created by Alastair Robertson.

bpftrace 프로브 유형

이전 답변 :

You can install the Linux port of Sun/Oracle dtrace from source here: https://github.com/dtrace4linux/linux

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.