Bug 552387

Summary: RFE: DTrace: Provide a SystemTap/DTrace probeset for libvirt APIs, drivers & libvirtd
Product: [Community] Virtualization Tools Reporter: Daniel Berrangé <berrange>
Component: libvirtAssignee: Libvirt Maintainers <libvirt-maint>
Status: CLOSED UPSTREAM QA Contact:
Severity: medium Docs Contact:
Priority: low    
Version: unspecifiedCC: crobinso, fche, mjw, scox, xen-maint
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-01-15 12:13:33 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 636031    

Description Daniel Berrangé 2010-01-04 21:15:05 UTC
Description of problem:
DTrace / SystemTAP provide a flexible framework for efficient tracing of live applications. For userspace applications this requires that markers be inserted in the code in the interesting trace locations. SystemTAP uses the DTrace marker format, so it is only neccessary to have one impl of these markers for both Linux and Solaris.

At the very least libvirt should provide

 - Tracepoints at all public API entry points
 - Tracepoints in interesting places in libvirtd  (client connect, disconnect, RPC message dispatch queues, and authentication points)
 - Tracepoints in key parts of the internal hypervisor drivers
 - Tracepoints in key parts of the storage drivers

As an example of how "simple" it is to get a minimal probe set working, this GNOME GLib patch is a great reference point to follow

http://bugzilla-attachments.gnome.org/attachment.cgi?id=150787
https://bugzilla.gnome.org/show_bug.cgi?id=606044
http://blogs.gnome.org/alexl/2010/01/04/tracing-glib/

Version-Release number of selected component (if applicable):
0.7.5

How reproducible:


Steps to Reproduce:
1.
2.
3.
  
Actual results:


Expected results:


Additional info:

Comment 1 Daniel Berrangé 2010-09-14 18:31:16 UTC
A basic proof of concept inserting 8 probes into libvirtd is available for review:

https://www.redhat.com/archives/libvir-list/2010-September/msg00238.html

Comment 2 Frank Ch. Eigler 2010-09-15 14:36:24 UTC
Stan has offered to review the "for some reason, we need to restart libfirt" funny business.

Comment 3 Daniel Berrangé 2015-01-15 12:13:33 UTC
This was merged a long time ago.