comparison env/lib/python3.9/site-packages/virtualenv/report.py @ 0:4f3585e2f14b draft default tip

"planemo upload commit 60cee0fc7c0cda8592644e1aad72851dec82c959"
author shellac
date Mon, 22 Mar 2021 18:12:50 +0000
parents
children
comparison
equal deleted inserted replaced
-1:000000000000 0:4f3585e2f14b
1 from __future__ import absolute_import, unicode_literals
2
3 import logging
4 import sys
5
6 from virtualenv.util.six import ensure_str
7
8 LEVELS = {
9 0: logging.CRITICAL,
10 1: logging.ERROR,
11 2: logging.WARNING,
12 3: logging.INFO,
13 4: logging.DEBUG,
14 5: logging.NOTSET,
15 }
16
17 MAX_LEVEL = max(LEVELS.keys())
18 LOGGER = logging.getLogger()
19
20
21 def setup_report(verbosity, show_pid=False):
22 _clean_handlers(LOGGER)
23 if verbosity > MAX_LEVEL:
24 verbosity = MAX_LEVEL # pragma: no cover
25 level = LEVELS[verbosity]
26 msg_format = "%(message)s"
27 filelock_logger = logging.getLogger("filelock")
28 if level <= logging.DEBUG:
29 locate = "module"
30 msg_format = "%(relativeCreated)d {} [%(levelname)s %({})s:%(lineno)d]".format(msg_format, locate)
31 filelock_logger.setLevel(level)
32 else:
33 filelock_logger.setLevel(logging.WARN)
34 if show_pid:
35 msg_format = "[%(process)d] " + msg_format
36 formatter = logging.Formatter(ensure_str(msg_format))
37 stream_handler = logging.StreamHandler(stream=sys.stdout)
38 stream_handler.setLevel(level)
39 LOGGER.setLevel(logging.NOTSET)
40 stream_handler.setFormatter(formatter)
41 LOGGER.addHandler(stream_handler)
42 level_name = logging.getLevelName(level)
43 logging.debug("setup logging to %s", level_name)
44 logging.getLogger("distlib").setLevel(logging.ERROR)
45 return verbosity
46
47
48 def _clean_handlers(log):
49 for log_handler in list(log.handlers): # remove handlers of libraries
50 log.removeHandler(log_handler)
51
52
53 __all__ = (
54 "LEVELS",
55 "MAX_LEVEL",
56 "setup_report",
57 )