On 09/07/10 - 04:08:13PM, Lai Jiangshan wrote:
> Hi, Chris,
> 
> I saw virDomainQemuMonitorCommand() in libvirt-qemu.c,
> I think it will help me to send arbitrary qemu-monitor command to
> qemu via libvirtd.
> 
> But how can I use virDomainQemuMonitorCommand()?
> Can I use it by just using current tools(virsh or other) without writing any 
> code?

Unfortunately, no.  There is a bug in the current virsh command that prevents
it from properly parsing the command-lines necessary to send monitor commands
to the qemu monitor.  Until we fix that bug, we won't push the support into
virsh.

For that reason you will need to write a custom program to call
virDomainQemuMonitorCommand as appropriate.  The absolute easiest program you
can write looks something like (untested):

#include <stdio.h>
#include <stdlib.h>
#include <libvirt/libvirt.h>

int main()
{
        virConnectPtr conn;
        virDomainPtr dom;
        char *reply;

        conn = virConnectOpen(NULL);
        dom = virDomainLookupByName(conn, "mydomain");

        virDomainQemuMonitorCommand(dom, "info cpus", &reply, 0);
        fprintf(stderr, "Reply: %s\n", reply);
        free(reply);
        virConnectClose(conn);

        return 0;
}

-- 
Chris Lalancette

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list

Reply via email to