diff options
author | Aarni Koskela <akx@iki.fi> | 2023-05-29 05:54:13 +0000 |
---|---|---|
committer | Aarni Koskela <akx@iki.fi> | 2023-05-29 06:17:30 +0000 |
commit | 00dfe27f59727407c5b408a80ff2a262934df495 (patch) | |
tree | aae9d324a719c7e500f4a0c45821851bc6e41ee0 /modules/api | |
parent | b957dcfece29c84ac0cfcd5a69475ff8684c531f (diff) | |
download | stable-diffusion-webui-gfx803-00dfe27f59727407c5b408a80ff2a262934df495.tar.gz stable-diffusion-webui-gfx803-00dfe27f59727407c5b408a80ff2a262934df495.tar.bz2 stable-diffusion-webui-gfx803-00dfe27f59727407c5b408a80ff2a262934df495.zip |
Add & use modules.errors.print_error where currently printing exception info by hand
Diffstat (limited to 'modules/api')
-rw-r--r-- | modules/api/api.py | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/modules/api/api.py b/modules/api/api.py index 6a456861..79ce9228 100644 --- a/modules/api/api.py +++ b/modules/api/api.py @@ -16,6 +16,7 @@ from secrets import compare_digest import modules.shared as shared from modules import sd_samplers, deepbooru, sd_hijack, images, scripts, ui, postprocessing from modules.api import models +from modules.errors import print_error from modules.shared import opts from modules.processing import StableDiffusionProcessingTxt2Img, StableDiffusionProcessingImg2Img, process_images from modules.textual_inversion.textual_inversion import create_embedding, train_embedding @@ -108,7 +109,6 @@ def api_middleware(app: FastAPI): from rich.console import Console console = Console() except Exception: - import traceback rich_available = False @app.middleware("http") @@ -139,11 +139,12 @@ def api_middleware(app: FastAPI): "errors": str(e), } if not isinstance(e, HTTPException): # do not print backtrace on known httpexceptions - print(f"API error: {request.method}: {request.url} {err}") + message = f"API error: {request.method}: {request.url} {err}" if rich_available: + print(message) console.print_exception(show_locals=True, max_frames=2, extra_lines=1, suppress=[anyio, starlette], word_wrap=False, width=min([console.width, 200])) else: - traceback.print_exc() + print_error(message, exc_info=True) return JSONResponse(status_code=vars(e).get('status_code', 500), content=jsonable_encoder(err)) @app.middleware("http") |