• Stars
    star
    167
  • Rank 219,560 (Top 5 %)
  • Language
  • Created almost 10 years ago
  • Updated almost 10 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Scripts from "DTrace: Dynamic Tracing in Oracle Solaris, Mac OS X, and FreeBSD", by Brendan Gregg and Jim Mauro, Prentice Hall, 2011.

DTrace book scripts

Scripts from "DTrace: Dynamic Tracing in Oracle Solaris, Mac OS X, and FreeBSD", by Brendan Gregg and Jim Mauro, Prentice Hall, 2011. ISBN-10: 0132091518, ISBN-13: 978-0132091510

This is a copy of the scripts published on http://dtracebook.com, and is a static collection to support the book.

See the book for descriptions of these scripts, examples, and any related warnings.

WARNING: These scripts are not tools that are expected to work. They are examples of solving problems, but are often tied to the kernel version they were written for. You can treat them as starting points: they embody an idea, approach, and presentation for an observability problem. Their implementation details will likely need adjusting to work correctly on your OS. This is explained, in detail, in the book, which should help you use and update the scripts as needed.

The hardest part of using DTrace is knowing what to do with it. That is what these scripts provide -- proven usage ideas. Even if they don't work on your current kernel version, they still help with the hardest problem faced by new users of DTrace, showing by example what can be done. The nature of dynamic tracing (the DTrace fbt and pid providers) means that writing tools that work across every OS, now, and in the future, is not possible.

If you repurpose a script (in the same way that a reader of a textbook might reuse an example), I'd ask that you please identify the origin in the script; eg, in the header:

 * Based on a script from Chapter X of the book: DTrace: Dynamic Tracing in
 * Oracle Solaris, Mac OS X, and FreeBSD", by Brendan Gregg and Jim Mauro,
 * Prentice Hall, 2011. ISBN-10: 0132091518. http://dtracebook.com.

Thanks to Mike Harsch for transcribing and testing these scripts.

More Repositories

1

FlameGraph

Stack trace visualizer
Perl
16,494
star
2

perf-tools

Performance analysis tools based on Linux perf_events (aka perf) and ftrace
Shell
9,533
star
3

bpf-perf-tools-book

Official repository for the BPF Performance Tools book
Python
1,492
star
4

HeatMap

Heat map generation tools
Perl
305
star
5

pmc-cloud-tools

PMC (Performance Monitoring Counter) tools for the cloud
Shell
233
star
6

Chaosreader

An any-snarf program that processes application protocols (HTTP/FTP/...) from tcpdump or snoop files and stores session and file data
216
star
7

dtrace-cloud-tools

Some DTrace tools written for the SmartOS/SmartDataCenter cloud (illumos-based)
D
202
star
8

wss

Working Set Size tools
C
200
star
9

systemtap-lwtools

SystemTap Lightweight Tools
182
star
10

bpf-perf-workshop

C
179
star
11

msr-cloud-tools

MSR Cloud Tools
Shell
173
star
12

BPF-tools

Performance Tools using Linux eBPF
C
118
star
13

perf-labs

Performance analysis labs
C
89
star
14

DTrace-tools

DTrace tools for FreeBSD
DTrace
69
star
15

PerfModels

Performance Scalability Models
R
67
star
16

Misc

Misc
Shell
65
star
17

Dump2PNG

Visualize file data as a PNG
C
40
star
18

GuessingGame

Guessing game written in many programming languages
Batchfile
33
star
19

proc-profiler

Linux /proc/PID/stack profiler
Perl
32
star
20

bpf-typewriter

BPF noisy typewriter (bpftrace)
23
star
21

p1bench

Perturbation Benchmark
C
20
star
22

DTraceToolkit

A collection of useful, tested and documented DTrace scripts
16
star
23

FlameScope

coming soon
Perl
13
star
24

skid-testing

Processor PMC sample skid testing
C
7
star
25

wrmsrbench

WRMSR micro benchmark
C
7
star
26

Test

testing github
JavaScript
3
star
27

brendangregg.github.io

HTML
3
star