Profiling Applications using DTrace
summary
DTrace provides external, non‑instrumenting visibility into the Erlang VM and OS: Erlang ships 41 Erlang DTrace probes (spawn, exit, send, BIFs, scheduler events) and scripts can capture syscalls, file creates, socket accept latencies and aggregate histograms. Practical tooling shown includes building Erlang with DTrace via curl/earlbrew and running DTrace scripts or earltrace inside Erlang; DTrace requires root and emits tab‑delimited stdout for postprocessing. Linux support is partial; demos report 30–4,000 µs scheduler deltas and top‑10 function aggregations.
AI-written summary · about
chapters (25)
- 0:00Introduction
- 0:42Overview
- 2:15Inline Profiling
- 3:06OTP Life
- 3:39Alert Logic
- 4:06DTrace as a Tool
- 5:41observability
- 6:04turtles
- 6:14Other observability technologies
- 8:54Linux DTrace
- 10:08DTrace Provider
- 10:53Probes
- 12:01DTrace Example
- 13:52Copy and Stir
- 20:27DTrace Functions
- 21:18Enabling DTrace
- 22:45DTrace in Erlang
- 23:45Interpreting output
- 25:27Questions
- 28:34Probe
- 28:56DTrace Script
- 32:09Act Probe
- 32:24ETraceD
- 32:34DTraceD
- 37:46DTrace Resources
related talks
30mDTrace at 21: Reflections on Fully-grown Software
55mLinux Kernel Debug And Profiling Tools
50mLinux loves Ruby, Ruby loves Linux
41mLinux Tracing Techniques
01h 00mBuilding your own profiling and diagnosis tools with Event Tracing for Windows
25mKernel tracing with BPF
38mLinux Kernel Tracing Using eBPF
36mDebugging with eBPF on Arm Platforms
