Messages in this thread | | | Date | Sat, 19 Jul 2014 23:02:59 +0530 | From | Hemant Kumar <> | Subject | Re: [PATCH v2 0/3] perf/sdt : Support for SDT markers |
| |
On 07/18/2014 04:53 PM, Masami Hiramatsu wrote: > Hi Hemant, > > (2014/07/17 14:53), Hemant Kumar wrote: >> This patchset helps in listing dtrace style markers(SDT) present in user space >> applications through perf. >> Notes/markers are placed at important places by the >> developers. They have a negligible overhead when not enabled. >> We can enable them and probe at these places and find some important information >> like the arguments' values, etc. > Thanks for your work! This actually helps us a lot :)
Thanks a lot for the appreciation. :)
> >> We have lots of applications which use SDT markers today, like: >> Postgresql, MySql, Mozilla, Perl, Python, Java, Ruby, libvirt, QEMU, glib >> >> To add SDT markers into user applications: >> We need to have this header sys/sdt.h present. >> sys/sdt.h used is version 3. >> If not present, install systemtap-sdt-devel package (for fedora-18). >> >> Please refer to the Documentation patch to see how the SDT markers are added into >> a program. >> >> With this patchset, >> - Use perf to list the markers in the app: >> # perf list sdt ./user_app >> >> ./user_app : >> %user_app:foo_start >> %user_app:fun_start >> >> - Also, we can see the SDT markers present in our system in the usual binaries. >> These usual binaries are libraries (dsos) listed by ldconfig --print-cache and some >> binaries present in PATH environment variable. >> >> First, scan the binaries using : >> # perf list sdt --scan > At a glance, maybe we'd better have perf sdt-cache as like as perf buildid-cache > for manage sdt information. what would you think? >
I agree with you having perf sdt-cache similar to perf buildid-cache. But I think if the functionality of perf sdt-cache is only to build the cache, then we can go with the perf list sdt --scan. Since, "perf list sdt" is used for other purposes too, it should be less confusing for the users to just add another option (--scan) to create/modify the cache. What do you suggest?
>> Creating a cache of SDT markers... >> perf sdt cache created! >> Use : "perf list sdt" >> to see the SDT markers >> >> After the sdt cache file is created, use perf list to view the markers : >> # perf list sdt >> >> %rtld : init_start >> %rtld : init_complete >> %rtld : map_failed >> %rtld : map_start >> %rtld : lll_futex_wake >> ... >> ... >> %libgcc : unwind >> %libvirt : rpc_server_client_auth_allow >> %libvirt : rpc_server_client_auth_fail >> %libvirt : rpc_server_client_auth_deny > Looks good :) > It seems very useful for perf users. > > Thank you,
Thanks a lot for going through this.
-- Thanks, Hemant Kumar
| |