Skip to content

DTrace Dynamic Tracing in Oracle Solaris, Mac OS X and FreeBSD

Spend $50 to get a free DVD!

ISBN-10: 0132091518

ISBN-13: 9780132091510

Edition: 2011

Authors: Jim Mauro, Brendan Gregg, Chad Mynhier, Tariq Magdon-Ismail

List price: $59.99
Blue ribbon 30 day, 100% satisfaction guarantee!
Buy eBooks
what's this?
Rush Rewards U
Members Receive:
Carrot Coin icon
XP icon
You have reached 400 XP and carrot coins. That is the daily max!

Description:

The first guide to DTrace: the breakthrough debugging tool for Mac OS X, Unix, Solaris, and OpenSolaris operating systems and applications Complete coverage: architecture, implementation, components, usage, and much more Covers integrating DTrace into open source code, and integrating probes into application software Includes full chapter of advanced tips and techniques For users of DTrace on all platforms Foreword by Bryan Cantril, creator of DTrace DTrace represents a revolution in debugging. Using it, administrators, developers, and service personnel can dynamically instrument operating systems and applications to quickly ask and answer virtually any question about how their operating systems or user programs are behaving. Now available for Solaris 10 and OpenSolaris, Mac OS X, and FreeBSD, thousands of professionals are discovering DTrace - but, until now, there's been no comprehensive, authoritative guide to using it. This book fills that gap. Written by four key contributors to the DTrace community, it's the first single source reference to this powerful new technology. The authors cover everything technical professionals need to know to succeed with DTrace, regardless of the operating system or application they want to instrument. The book also includes a full chapter of advanced tips and techniques.
Customers also bought

Book details

List price: $59.99
Copyright year: 2011
Publisher: Prentice Hall PTR
Publication date: 4/1/2011
Binding: Paperback
Pages: 1152
Size: 7.00" wide x 9.00" long x 1.50" tall
Weight: 2.992

Foreword
Preface
Acknowledgments
About the Authors
Introduction
Introduction to DTrace
What Is DTrace?
Why Do You Need It?
Capabilities
Dynamic and Static Probes
DTrace Features
A First Look
Overview
Architecture
Summary
D Language
D Language Components
Probes
Variables
Aggregations
Actions
Options
Example Programs
Summary
Using DTrace
System View
Start at the Beginning
Observing CPUs
Observing Memory
Observing Disk and Network I/O
Summary
Disk I/O
Capabilities
Disk I/O Strategy
Checklist
Providers
Scripts
Case Studies
Summary
File Systems
Capabilities
Strategy
Checklist
Providers
Scripts
Case Study
Summary
Network Lower-Level Protocols
Capabilities
Strategy
Checklist
Providers
Scripts
Common Mistakes
Summary
Application-Level Protocols
Capabilities
Strategy
Checklist
Providers
Scripts
Summary
Languages
Capabilities
Strategy
Checklist
Providers
C
C++
Java
JavaScript
Perl
PHP
Python
Ruby
Shell
Tcl
Summary
Applications
Capabilities
Strategy
Checklist
Providers
Scripts
Case Studies
Summary
Databases
Capabilities
Strategy
Providers
MySQL
PostgreSQL
Oracle
Summary
Additional User Topics
Security
Privileges, Detection, and Debugging
Scripts
Summary
Kernel
Capabilities
Strategy
Checklist
Providers
Scripts
Summary
Tools
The DTraceToolkit
Chime
DTrace GUI Plug-in for NetBeans and Sun Studio
DLight, Oracle Solaris Studio 12.2
Mac OS X Instruments
Analytics
Summary
Tips and Tricks
Known Workloads
Write Target Software
Use grep to Search for Probes
Frequency Count
Time Stamp Column, Postsort
Use Perl to Postprocess
Learn Syscalls
Timestamp vs. vtimestamp
Profile:::profile-997 and Profiling
Variable Scope and Use
Strlen() and strcmp()
Check Assumptions
Keep It Simple
Consider Performance Impact
Drops and dynvardrops
Tail-Call Optimization
Further Reading
DTrace Tunable Variables
D Language Reference
Provider Arguments Reference
Providers
Arguments
DTrace on FreeBSD
Enabling DTrace on FreeBSD 7.1 and 8.0
DTrace for FreeBSD: John Birrell
USDT Example
USDT Bourne Shell Provider
Case Study: Implementing a Bourne Shell Provider
DTrace Error Messages
Privileges
Drops
Aggregation Drops
Dynamic Variable Drops
Invalid Address
Maximum Program Size
Not Enough Space
DTrace Cheat Sheet
Synopsis
Finding Probes
Finding Probe Arguments
Probes
Vars
Actions
Switches
Pragmas
One-Liners
Bibliography
Suggested Reading
Vendor Manuals
Index