On Fri, 09/01 13:28, Amador Pahim wrote:
> 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>
> ---
> scripts/qemu.py | 7 +++++++
> 1 file changed, 7 insertions(+)
>
> diff --git a/scripts/qemu.py b/scripts/qemu.py
> index 670c048569..3ebe5ee0a4 100644
> --- a/scripts/qemu.py
> +++ b/scripts/qemu.py
> @@ -141,6 +141,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')
> @@ -160,6 +161,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):
> --
> 2.13.5
>
It would be nice if these messages are added to the exception obj, but it's
already an improvement over what we have now, so:
Reviewed-by: Fam Zheng <famz@redhat.com>