While ruby does have a great API for getting stack traces within the ruby processes, as used by profilers like vernier and stackprof, there are some projects which aim to profile ruby from outside of the process. Some examples include...dalehamel (Dale Hamel)
> does this suffice your use case? Interesting, I'll need to investigate this - it certainly has potential. My use case is for experimental tracing work, and I basically want to be able to pre-compile original source with added in...dalehamel (Dale Hamel)
Yes when I test out Koichi's sample, the iseq look like: ``` disasm: #<ISeq:<compiled>@<compiled>:1 (1,0)-(1,6)> (catch: FALSE) 0000 putself ( 1)[Li] 0001 opt_send_without_...dalehamel (Dale Hamel)
> Could you show us how V8 and Python provide USDT features? V8 has ustack helpers (which I'd love to try and figure out how to do for MRI) https://www.joyent.com/blog/understanding-dtrace-ustack-helpers which make the type of probing...dalehamel (Dale Hamel)
Thanks for the reply and your work on TracePoints, Koichi. > I need to study USDT... I can recommend some resources, I might suggest this excerpt of [my own writing on this](https://bpf.sh/usdt-report-doc/index.html#adding-usdt-s...dalehamel (Dale Hamel)
Hi Martin, > Do you have any parts implemented already Yes,I have a prototype gem that adds StaticTracing.tracepoint as a way to define a stub library that can be used for a debugger (dtrace/bpftrace) to attach to, similar to the...dalehamel (Dale Hamel)
> As far as I understand, target provides just an internal filtering, so I wonder how it involves external USDT API. The external USDT API is "always on" or "always off", it must be enabled for all events of a type or not used at all....dalehamel (Dale Hamel)
Hi Robert, Thank you for your reply and feedback. To clarify, I don't think that this feature not working on, for instance, Windows is much of a big deal, and perhaps it could be extended to Windows or any other unsupported platfor...dalehamel (Dale Hamel)
# Abstract I propose that Ruby's "dtrace" support be extended to match what is available in the TracePoint API, as was the case until feature [Feature #15289] landed. # Background I will refer to Ruby's "dtrace" bindings as USDT...dalehamel (Dale Hamel)