[rabbitmq-discuss] DTrace and Erlang: an update

Jason J. W. Williams jasonjwwilliams at gmail.com
Mon Oct 24 19:30:27 BST 2011


Hi Scott,

This would be awesome. It would be great to be able to get better
visibility into Rabbit via DTrace. We'd be using the probes on
OpenIndiana.

-J

On Mon, Oct 24, 2011 at 12:20 PM, Scott Lystig Fritchie
<slfritchie at snookles.com> wrote:
> Hi, all.  I've been a lurker on this list since January 2009.  I thought
> it might be time to post something.
>
> 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'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.
>
> 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?
>
> 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".
>
> -Scott
>
> P.S.  Sorry like sounding like a telethon fundraiser.  ("We need your
> pledge of support *now*.")  But the Erlang/OTP R15 release schedule is
> Ericsson's, not mine.  If we want full support for this DTrace work, we
> need to play by Ericsson's rules and schedules.
>
> P.P.S. Here's a summary of recent coding developments:
>
> A list of the probes now available is at:
>
>    https://github.com/slfritchie/otp/blob/dtrace-experiment+michal2/erts/emulator/beam/erlang_dtrace.d
>
> ... and a set of small example D scripts:
>
>    https://github.com/slfritchie/otp/tree/dtrace-experiment+michal2/lib/dtrace/examples
>
> 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
>
> I've created a "shar"-like shell script that will automagically patch
> your otp_src_R14B04.tar.gz source tarball with all this DTrace stuff.
> See here for details:
>
>    http://erlang.org/pipermail/erlang-questions/2011-October/061933.html
>
> Over the weekend, I added the ability to trace the "sequential trace
> token" via DTrace.  That work isn't available in the patch above, but it
> is available if you wish by checking out the underlying repo from
> GitHub, git://github.com/slfritchie/otp.git, and using the
> "dtrace-experiment+michal2" branch.
>
> _______________________________________________
> rabbitmq-discuss mailing list
> rabbitmq-discuss at lists.rabbitmq.com
> https://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss
>


More information about the rabbitmq-discuss mailing list