From: Kevin Wolf <kwolf@redhat.com>
To: John Snow <jsnow@redhat.com>
Cc: ehabkost@redhat.com, qemu-block@nongnu.org, armbru@redhat.com,
qemu-devel@nongnu.org, Max Reitz <mreitz@redhat.com>,
philmd@redhat.com
Subject: Re: [PATCH v10 14/14] iotests: use python logging for iotests.log()
Date: Tue, 31 Mar 2020 15:44:46 +0200 [thread overview]
Message-ID: <20200331134446.GF7030@linux.fritz.box> (raw)
In-Reply-To: <20200331000014.11581-15-jsnow@redhat.com>
Am 31.03.2020 um 02:00 hat John Snow geschrieben:
> We can turn logging on/off globally instead of per-function.
>
> Remove use_log from run_job, and use python logging to turn on
> diffable output when we run through a script entry point.
>
> iotest 245 changes output order due to buffering reasons.
>
>
> An extended note on python logging:
>
> A NullHandler is added to `qemu.iotests` to stop output from being
> generated if this code is used as a library without configuring logging.
> A NullHandler is only needed at the root, so a duplicate handler is not
> needed for `qemu.iotests.diff_io`.
>
> When logging is not configured, messages at the 'WARNING' levels or
> above are printed with default settings. The NullHandler stops this from
> occurring, which is considered good hygiene for code used as a library.
>
> See https://docs.python.org/3/howto/logging.html#library-config
>
> When logging is actually enabled (always at the behest of an explicit
> call by a client script), a root logger is implicitly created at the
> root, which allows messages to propagate upwards and be handled/emitted
> from the root logger with default settings.
>
> When we want iotest logging, we attach a handler to the
> qemu.iotests.diff_io logger and disable propagation to avoid possible
> double-printing.
>
> For more information on python logging infrastructure, I highly
> recommend downloading the pip package `logging_tree`, which provides
> convenient visualizations of the hierarchical logging configuration
> under different circumstances.
>
> See https://pypi.org/project/logging_tree/ for more information.
>
> Signed-off-by: John Snow <jsnow@redhat.com>
> Reviewed-by: Max Reitz <mreitz@redhat.com>
Should we enable logger if -d is given?
Previously we had:
$ ./check -d -T -raw 281
[...]
281 not run: not suitable for this image format: raw
281 not run [15:39:03] [15:39:04] not suitable for this image format: raw
Not run: 281
After this series, the first line of output from notrun() is missing.
Not that I think it's important to have the line, but as long as we
bother to call logger.warning(), I thought that maybe we want to be able
to actually see the effect of it somehwere?
Kevin
next prev parent reply other threads:[~2020-03-31 13:45 UTC|newest]
Thread overview: 41+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-03-31 0:00 [PATCH v10 00/14] iotests: use python logging John Snow
2020-03-31 0:00 ` [PATCH v10 01/14] iotests: do a light delinting John Snow
2020-03-31 0:00 ` [PATCH v10 02/14] iotests: don't use 'format' for drive_add John Snow
2020-03-31 0:00 ` [PATCH v10 03/14] iotests: ignore import warnings from pylint John Snow
2020-03-31 0:00 ` [PATCH v10 04/14] iotests: replace mutable list default args John Snow
2020-03-31 0:00 ` [PATCH v10 05/14] iotests: add pylintrc file John Snow
2020-03-31 0:00 ` [PATCH v10 06/14] iotests: alphabetize standard imports John Snow
2020-03-31 8:00 ` Philippe Mathieu-Daudé
2020-03-31 0:00 ` [PATCH v10 07/14] iotests: drop pre-Python 3.4 compatibility code John Snow
2020-03-31 0:00 ` [PATCH v10 08/14] iotests: touch up log function signature John Snow
2020-03-31 0:00 ` [PATCH v10 09/14] iotests: limit line length to 79 chars John Snow
2020-03-31 0:00 ` [PATCH v10 10/14] iotests: add hmp helper with logging John Snow
2020-03-31 10:21 ` Max Reitz
2020-03-31 14:00 ` Kevin Wolf
2020-04-01 12:28 ` Max Reitz
2020-04-01 12:42 ` Max Reitz
2020-04-01 13:51 ` Kevin Wolf
2020-04-01 14:53 ` Max Reitz
2020-03-31 17:23 ` John Snow
2020-03-31 17:39 ` Kevin Wolf
2020-04-01 12:40 ` Max Reitz
2020-04-02 18:27 ` John Snow
2020-04-03 7:46 ` Kevin Wolf
2020-04-03 8:57 ` Max Reitz
2020-04-04 2:38 ` John Snow
2020-03-31 0:00 ` [PATCH v10 11/14] iotests: add script_initialize John Snow
2020-03-31 0:00 ` [PATCH v10 12/14] iotest 258: use script_main John Snow
2020-03-31 0:00 ` [PATCH v10 13/14] iotests: Mark verify functions as private John Snow
2020-03-31 10:40 ` Max Reitz
2020-03-31 0:00 ` [PATCH v10 14/14] iotests: use python logging for iotests.log() John Snow
2020-03-31 13:44 ` Kevin Wolf [this message]
2020-05-14 6:24 ` John Snow
2020-05-14 10:06 ` Kevin Wolf
2020-05-14 19:54 ` John Snow
2020-05-15 9:03 ` Kevin Wolf
2020-05-18 18:29 ` John Snow
2020-03-31 15:07 ` [PATCH v10 00/14] iotests: use python logging Kevin Wolf
2020-04-28 11:46 ` Max Reitz
2020-04-28 12:21 ` Kevin Wolf
2020-04-28 17:36 ` John Snow
2020-04-29 8:08 ` Max Reitz
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=20200331134446.GF7030@linux.fritz.box \
--to=kwolf@redhat.com \
--cc=armbru@redhat.com \
--cc=ehabkost@redhat.com \
--cc=jsnow@redhat.com \
--cc=mreitz@redhat.com \
--cc=philmd@redhat.com \
--cc=qemu-block@nongnu.org \
--cc=qemu-devel@nongnu.org \
/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).