On Wednesday 7 May 2014 at 20:42, Antonio Terceiro wrote: > Just to be sure: did you actually tested it with ruby2.1 and does it work > for you?
Of course, otherwise I would not have said the patch “worked great”. :) > Right now I am not familiar with dtrace/systemtap beyond knowing they > exist, so while this is interesting and I will definitively look at it > at some point, it would be nice to have an initial input would be nice. If you just want to give SystemTap a spin, it would probably be a good idea to try some of the code examples from the documentation or “SystemTap and ruby 2.0”: https://sourceware.org/systemtap/documentation.html http://avsej.net/2012/systemtap-and-ruby-20/ In order to list the probes in libruby2.1 just try this: stap -L 'process("/usr/lib/x86_64-linux-gnu/libruby-2.1.so.2.1").mark("*”)' If you want to test some of the examples, make sure to use the libruby path instead of /usr/local/bin/ruby and add your user to the stapdev and stapusr groups or use sudo. (See /usr/share/doc/systemtap/README.Debian.) I have attached a modified version of rubytop.stp/rubyfuntop.stp, which you can use to test systemtap: sudo stap ruby-example.stp -c 'ruby2.1 -e "puts \"Hello world\”"' The current probe selection syntax is rather basic, but if the patch above is accepted, I could add a simple tap file in order to turn process("/usr/lib/x86_64-linux-gnu/libruby-2.1.so.2.1").mark("method__entry”) into ruby.method.entry I would add another bug report for this, though.
ruby-example.stp
Description: Binary data