diff options
author | AUTOMATIC1111 <16777216c@gmail.com> | 2023-11-19 05:57:14 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-11-19 05:57:14 +0000 |
commit | 3a13b0e762bf4434c6ca4e279a15c9d516b54417 (patch) | |
tree | 78919e347771c307e5b170b05a42cfbd92bbc77c /modules | |
parent | 6429c3db11020bb399d240f63309261e3d2ab028 (diff) | |
parent | 7021cdb1de12be3071ecb67aa8d2e34e7a0ec5ab (diff) | |
download | stable-diffusion-webui-gfx803-3a13b0e762bf4434c6ca4e279a15c9d516b54417.tar.gz stable-diffusion-webui-gfx803-3a13b0e762bf4434c6ca4e279a15c9d516b54417.tar.bz2 stable-diffusion-webui-gfx803-3a13b0e762bf4434c6ca4e279a15c9d516b54417.zip |
Merge pull request #13996 from Luxter77/patch-1
Adds tqdm handler to logging_config.py for progress bar integration
Diffstat (limited to 'modules')
-rw-r--r-- | modules/logging_config.py | 27 |
1 files changed, 26 insertions, 1 deletions
diff --git a/modules/logging_config.py b/modules/logging_config.py index 7db23d4b..79269875 100644 --- a/modules/logging_config.py +++ b/modules/logging_config.py @@ -1,16 +1,41 @@ import os
import logging
+try:
+ from tqdm.auto import tqdm
+
+ class TqdmLoggingHandler(logging.Handler):
+ def __init__(self, level=logging.INFO):
+ super().__init__(level)
+
+ def emit(self, record):
+ try:
+ msg = self.format(record)
+ tqdm.write(msg)
+ self.flush()
+ except Exception:
+ self.handleError(record)
+
+ TQDM_IMPORTED = True
+except ImportError:
+ # tqdm does not exist before first launch
+ # I will import once the UI finishes seting up the enviroment and reloads.
+ TQDM_IMPORTED = False
def setup_logging(loglevel):
if loglevel is None:
loglevel = os.environ.get("SD_WEBUI_LOG_LEVEL")
+ loghandlers = []
+
+ if TQDM_IMPORTED:
+ loghandlers.append(TqdmLoggingHandler())
+
if loglevel:
log_level = getattr(logging, loglevel.upper(), None) or logging.INFO
logging.basicConfig(
level=log_level,
format='%(asctime)s %(levelname)s [%(name)s] %(message)s',
datefmt='%Y-%m-%d %H:%M:%S',
+ handlers=loghandlers
)
-
|