Thanks to everyone who attended Jarod’s and my talk this afternoon at JavaOne and especially to those who had to go to the overflow room. The rest of the DTrace team and I were thrilled by the turnout — we would never have thought that 900+ Java developers would be so interested in DTrace. We spent the next few hours hashing out some ways to get better support for Java in DTrace; we look forward to giving an update at next year’s conference.
As promised, here are the slides from the talk:
To get started with the dvm provider on your Solaris 10 system, download the agent here. You may need to set your LD_LIBRARY_PATH to point to wherever you install it. Then invoke java with the -Xrundvmti:all option.
I wasn’t able to capture the command history as was requested, but Bryan wrote up a nice post which can be used for the first part of the talk, and here are some of the java-specific commands from today.
# dtrace -n dvm`pgrep java`:::method-entry'{ @[copyinstr(arg0), copyinstr(arg1)] = count() }' # dtrace -n dvm`pgrep java`:::object-alloc'{ @[jstack(20, 8000)] = count() }' # dtrace -n dvm`pgrep java`:::object-alloc'/copyinstr(arg0) == "java/awt/Rectangle"/{}'
Try mixing and matching. Check out the Solaris Dynamic Tracing Guide for the exhaustive reference guide. If you have questions or want to figure out some more scripts, feel free to post a question here or — even better — on the DTrace forum on opensolaris.org.
3 Responses
Hi Adam,
I was one of the 900+ attendees this afternoon 🙂 Great speach and demo ! We will definitively need to officially publish more on the subject (tutorial etc …). I think the complexity is not so in knowing all the command detail, probes command and script language, but more in being able to interpret the results.
Maybe a nice subjetc for a book !
Seb
[Trackback] dtrace is this amazingly cool new feature in Solaris 10 (hence, part of
Open Solaris). It is a solaris-only feature (by the way).
I‘ve had in the back of my mind a nagging idea that dtrace could be
used by my team (we are the SQE f…
[Trackback] Allowing DTrace to work with Java has a really strong promise for the Java support teams.