qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: "Daniel P. Berrange" <berrange@redhat.com>
To: "Richard W.M. Jones" <rjones@redhat.com>
Cc: Amit Shah <amit.shah@redhat.com>,
	chrisw@redhat.com, dlaor@redhat.com, qemu-devel@nongnu.org,
	avi@redhat.com
Subject: [Qemu-devel] Re: Machine-readable or parseable qemu output
Date: Wed, 14 Jan 2009 11:45:38 +0000	[thread overview]
Message-ID: <20090114114538.GH24995@redhat.com> (raw)
In-Reply-To: <20090114112938.GA11242@amd.home.annexia.org>

On Wed, Jan 14, 2009 at 11:29:38AM +0000, Richard W.M. Jones wrote:
> On Wed, Jan 14, 2009 at 04:40:05PM +0530, Amit Shah wrote:
> > - Have a libqemumonitor.so that will abstract out output from qemu and
> >   provide a machine-readble output for the consumer
> 
> Why do we need a C API at all?  IMHO it'd be better just to make the
> existing qemu monitor output more machine-friendly, meaning consistent
> delimiters so that programs can reliably resynchronize with the
> output, and consistent guarantees on error messages.

Well if we have async messages over a separate channel, we can already
reliably resynchronize with the output, because QEMU will eventually
produce its '(qemu) ' prompt on a new line. So if something goes wrong
you just need to skip until you find the prompt again.  Changing QEMU
monitor prompt will just break all existing libvirt deployments, and
any other programs relying on currently prompt.

IMHO, any libqemumonitor.so should be made to work with current monitor
format as its starting point, and then extend from there, not change
any existing characteristics. This provides forwards & backwards compat
for all apps, albeit at cost of slightly more complex internals for
the libqemumonitor.so - but this complexity will be centralized in one
place instead of all apps using QEMU, so this is still a net win.

Daniel
-- 
|: Red Hat, Engineering, London   -o-   http://people.redhat.com/berrange/ :|
|: http://libvirt.org  -o-  http://virt-manager.org  -o-  http://ovirt.org :|
|: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
|: GnuPG: 7D3B9505  -o-  F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :|

  parent reply	other threads:[~2009-01-14 11:45 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-01-14 11:10 [Qemu-devel] Machine-readable or parseable qemu output Amit Shah
2009-01-14 11:23 ` [Qemu-devel] " Daniel P. Berrange
2009-01-15 20:27   ` Anthony Liguori
2009-01-15 20:58     ` Daniel P. Berrange
2009-01-15 21:30       ` Anthony Liguori
2009-01-15 21:48       ` Avi Kivity
2009-01-15 22:26         ` Anthony Liguori
2009-01-14 11:28 ` Avi Kivity
2009-01-15 20:28   ` Anthony Liguori
2009-01-14 11:29 ` Richard W.M. Jones
2009-01-14 11:31   ` Avi Kivity
2009-01-14 11:36     ` Richard W.M. Jones
2009-01-14 11:45   ` Daniel P. Berrange [this message]
2009-01-14 12:37     ` Dor Laor
2009-01-14 14:05     ` Avi Kivity
2009-01-15 20:31     ` Anthony Liguori
2009-01-14 16:56   ` Jamie Lokier

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20090114114538.GH24995@redhat.com \
    --to=berrange@redhat.com \
    --cc=amit.shah@redhat.com \
    --cc=avi@redhat.com \
    --cc=chrisw@redhat.com \
    --cc=dlaor@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=rjones@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).