[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH] qemu.py: Call logging.basicConfig() automatical
From: |
Cleber Rosa |
Subject: |
Re: [Qemu-devel] [PATCH] qemu.py: Call logging.basicConfig() automatically |
Date: |
Thu, 21 Sep 2017 12:34:05 -0400 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.3.0 |
On 09/21/2017 12:22 PM, Eduardo Habkost wrote:
> Not all scripts using qemu.py configure the Python logging
> module, and end up generating a "No handlers could be found for
> logger" message instead of actual log messages.
>
> To avoid requiring every script using qemu.py to configure
> logging manually, call basicConfig() when creating a QEMUMachine
> object. This won't affect scripts that already set up logging,
> but will ensure that scripts that don't configure logging keep
> working.
>
> Reported-by: Kevin Wolf <address@hidden>
> Fixes: 4738b0a85a0c2031fddc71b51cccebce0c4ba6b1
> Signed-off-by: Eduardo Habkost <address@hidden>
> ---
> scripts/qemu.py | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/scripts/qemu.py b/scripts/qemu.py
> index 5e02dd8e78..73d6031e02 100644
> --- a/scripts/qemu.py
> +++ b/scripts/qemu.py
> @@ -89,6 +89,9 @@ class QEMUMachine(object):
> self._qmp = None
> self._qemu_full_args = None
>
> + # just in case logging wasn't configured by the main script:
> + logging.basicConfig(level=(logging.DEBUG if debug else logging.WARN))
> +
> def __enter__(self):
> return self
>
>
Your description is accurate, and backed by:
https://docs.python.org/3/library/logging.html#logging.basicConfig
Quoting the relevant section: "This function does nothing if the root
logger already has handlers configured for it."
Reviewed-by: Cleber Rosa <address@hidden>