[rabbitmq-discuss] DTrace and Erlang: an update

Jerry Kuch jerryk at vmware.com
Mon Oct 24 19:50:47 BST 2011


Hi, Scott... 



I've been working with Dustin Sallings and Michal Ptaszek to expand the 
work that they've done on adding DTrace probes to the Erlang virtual 
machine. We have started preliminary, *informal*, **no-promises-yet** 
talks with Ericsson's OTP team. Our goal (and not yet the OTP team's, I 
*cannot* speak for them) is to get these probes & NIF code into the R15 
release cycle. 

I've recently started messing with DTrace on Erlang/OTP in the context of 
RabbitMQ performance and am very interested in learning more about what 
you're doing. 


I'll be speaking about this DTrace work at the Erlang User Conference in 
Stockholm, Sweden on Thursday, November 4th. If you're going to be at 
the EUC and you're interested in DTrace, I'd love to talk to you. If 
you have a war story about RabbitMQ that you'd like me to share at the 
EUC (perhaps as part of my presentation), please contact me directly. 
FWIW, I'll also be attending the tutorial & hack-a-thon day on Friday 
05 November. 

Alas, I'm in North America and won't be there... will your presentation be 
recorded and put on the web afterward? 


If you like DTrace but you're not going to be at EUC, then ... I'd like 
to start some email correspondence. Specifically, what do you need to 
make RabbitMQ's workings visible to the outside world via DTrace? 

Great... I've just recently returned to the perf stuff after some product launch 
related turbulence that had vacuumed my attention entirely away from it. I'm 
currently messing around with the OTP fork that's on Github and trying to get 
a sense for what the existing family of probes can tell me about Rabbit behavior. 
I'm also sort of learning how to use DTrace in a grown-up manner as I go, so 
it's likely that my intuition for what is possible and what should be attempted 
is very poorly honed at this point. 


If we actually meet our goal of getting the probes + NIF into the 
official R15 source distribution ... then the evolution of the probes 
will probably be slow. Why? Because it'll be tied to Ericsson's 
release schedule. The more input we get from users of *real* apps 
(RabbitMQ, Riak, Ejabberd, et al.) now, the better the initial probes 
will be, and the fewer iterations it will take to make them "perfect". 

Are you up for phone or Skype chat on this sometime in the next week or so? 
I'd be curious to learn more about the probe wish lists for non-Rabbit apps is, 
assuming that picture has started to come together? 


In addition, I've added a NIF that allows Erlang code to trigger a 
probe. See the EDoc comments at the top of this source file for some 
background: 

https://github.com/slfritchie/otp/blob/dtrace-experiment+michal2/lib/dtrace/src/dtrace.erl 

Ah this piece looks very interesting... 

Jerry 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rabbitmq.com/pipermail/rabbitmq-discuss/attachments/20111024/d891aaf3/attachment.htm>


More information about the rabbitmq-discuss mailing list