On Tue, Mar 21, 2017 at 12:06:25 +0100, Martin Kletzander wrote:
On Mon, Mar 20, 2017 at 02:11:21PM +0100, Thibaut SAUTEREAU wrote:
> Hello,
>
> I cannot find a way to retrieve PIDs of QEMU instances from libvirt domains'
> IDs (I'm using libvirt C API). I recognize it sounds like a bad idea doing so
> (and I know PIDs are explicitly made not available, as I gathered from the
> source code and on your IRC channel) but I need that to use the perf_event_open
> syscall in order to gather statistics on my QEMU/KVM guests. I also know
> libvirt now supports some perf events but only a few and I need more. I could
> submit patches to add them and I will definitely consider that but in the
> meantime...
Looks like you are looking for:
http://libvirt.org/formatdomain.html#elementsPerf
and
http://libvirt.org/html/libvirt-libvirt-domain.html#virDomainGetPerfEvents
>
> What would be the best way to get those PIDs? I tried using the XML file but
> PID is hidden in there too. I took a look at QEMU Machine Protocol. Now I'm
> going to walk /proc and match on guests names but it is not that elegant.
> Any ideas?
Just to re-iterate. We hide it because users should not fiddle with the
VMs behind our backs.
>
`ps aux | grep $UUID | grep -v grep` ??
This will obviously work, but we won't give you an elegant way since we
don't want you to know the pid.