4 ms·
Out of curiosity, did you ever write DTrace scripts? SystemTap? BPF? Do you have some on github I can see?
by brendangregg 10y ago
Out of curiosity, did you ever write DTrace scripts? SystemTap? BPF? Do you have some on github I can see?
- qwertyuiop924 10y agoNo. See what I mean about requisite knowledge? I've been interested in learning DTrace for some time now, as it seemed like a tremdously helpful tool, but my systems are all linux, I don't run Fedora or RHEL, so systemtap is out. In recent months, eBPF has become a viable option, so I've been looking into that, but haven't had time to dive in deep yet. This makes me a poor candidate for doing this sort of work, which is why I'm not saying for sure that I'd do it. But I might be willing to try. Don't get me wrong: I have no particular attachment to D as the tracing language. However, I do think it's worth supporting the tracing language that pretty much all of the other big unixes support if we can. Am I less than qualified to have that opinion? Yes. Think what you will.
- brendangregg 10y agoThanks, was wondering if this came from a specific language pain or not. Since all of this requires being on a newer kernel anyway, I'd do that first, then try the existing bcc tools and see where you are at. You might discover that you can do everything you want to with the existing tools, which include some powerful ad-hoc analysis tools (trace and argdist). Or, if you're missing one or two tools and let us know, and we may develop them for you and add them to bcc. Many work on the current Ubuntu Xenial 4.4. A few more on 4.6 (stack tracing), more on 4.7 (tracepoints), and all work on 4.9.
- Annatar 10y agoThanks, was wondering if this came from a specific language pain or not. No language pain with DTrace, but having to know kernel structs put a damper on things like you wouldn't believe. The problem is this: suppose you've just built mikmod on Solaris (or some variant thereof), and you're not the developer of the application. You want to see why the mikmod application's output is pausing every few seconds, causing a lag; that's all you care about - answers. DTrace to the rescue! Not so fast, you don't: with DTrace, you know what the answer to what you want to get is - why is the output freezing every few seconds? What you don't know is what to ask to get it. And I bet based on experience, that every tracing framework currently in existence has the same issue. Even in scenarios where I knew exactly what to ask, correctly interpreting the results is a laborious and involved arcane art exercise in itself - you yourself wrote several books on the subject!
- brendangregg 10y agoSee my other comments -- Annatar, what is your real name? The problems you discuss -- knowing what to do with a tracer -- having little to do with the front-end.