Upgrade to Pro — share decks privately, control downloads, hide ads and more …

dtrace.conf(16): DTrace state of the union

Bryan Cantrill
May 26, 2016
64

dtrace.conf(16): DTrace state of the union

Opening remarks at dtrace.conf(16) in 2016. This talk was videoed, but unfortunately the video has since been made unavailable. If it helps anyone retrieve it, the video was at: https://vimeo.com/173346406

Bryan Cantrill

May 26, 2016
Tweet

Transcript

  1. dtrace.conf(16) • Quadrennial (!) DTrace unconference started in 2008 •

    ~100 attendees from: • ~45 companies • ~1 VC Entrepreneur-in-Residence • Twitter: #dtraceconf • Thanks to our sponsors, Joyent — and the FIPP! • Huge thanks to Ryan Wilson, Brittany Berry and Jenny Miller from Joyent
  2. DTrace since 2012: Core • Added new ways of representing

    aggregated data via “agghist,” “aggpack,” and “aggzoom” options • Added new json() subroutine • Added DTrace userland CTF support • Added the new (on-by-default!) “temporal” option • Added print() support for translated types • Added support for fds[], curpsinfo, sched and proc providers in a zone container
  3. DTrace since 2012: Platforms • FreeBSD implemented the pid provider

    in 9.0 and, as of 9.2, enabled DTrace by default! • NetBSD added DTrace support — including support for ARM! • Linux port of DTrace largely completed by Oracle — but keeping the user-level portion proprietary has limited its impact
  4. DTrace in 2016 and beyond • Distributed systems are ubiquitous

    and tracing in distributed systems has improved tremendously; how can DTrace help? • Instrumenting multi-processes applications via the pid provider is still painful; can we improve? • The rise (resurrection?) of statically compiled languages like Go and Rust presents new opportunity — and new challenges • DTrace and serverless computing? • User-level postmortem tracing? • Anti-roadmap: Dynamic translators?