aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAmador Pahim <apahim@redhat.com>2017-09-01 13:28:21 +0200
committerEduardo Habkost <ehabkost@redhat.com>2017-09-15 20:12:00 -0300
commitb92a0011b1220aff549ae82c6104014d25e339ef (patch)
treeeb594a15af5498c2788285caac10547b2a171af2
parentdab91d9aa00e41ee680524e4f6e99a1e7fe12eb2 (diff)
downloadqemu-b92a0011b1220aff549ae82c6104014d25e339ef.zip
qemu-b92a0011b1220aff549ae82c6104014d25e339ef.tar.gz
qemu-b92a0011b1220aff549ae82c6104014d25e339ef.tar.bz2
qemu.py: include debug information on launch error
When launching a VM, if an exception happens and the VM is not initiated, it might be useful to see the qemu command line and the qemu command output. This patch creates that message. Notice that self._iolog needs to be cleaned up in the beginning of the launch() to make sure we will not expose the qemu log from a previous launch if the current one fails. Signed-off-by: Amador Pahim <apahim@redhat.com> Message-Id: <20170901112829.2571-6-apahim@redhat.com> Reviewed-by: Fam Zheng <famz@redhat.com> Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
-rw-r--r--scripts/qemu.py7
1 files changed, 7 insertions, 0 deletions
diff --git a/scripts/qemu.py b/scripts/qemu.py
index 9440261..8c67595 100644
--- a/scripts/qemu.py
+++ b/scripts/qemu.py
@@ -187,6 +187,7 @@ class QEMUMachine(object):
def launch(self):
'''Launch the VM and establish a QMP connection'''
+ self._iolog = None
self._qemu_full_args = None
devnull = open(os.path.devnull, 'rb')
qemulog = open(self._qemu_log_path, 'wb')
@@ -206,6 +207,12 @@ class QEMUMachine(object):
self._popen.wait()
self._load_io_log()
self._post_shutdown()
+
+ LOG.debug('Error launching VM')
+ if self._qemu_full_args:
+ LOG.debug('Command: %r', ' '.join(self._qemu_full_args))
+ if self._iolog:
+ LOG.debug('Output: %r', self._iolog)
raise
def shutdown(self):