diff options
Diffstat (limited to 'gn_auth/errors.py')
-rw-r--r-- | gn_auth/errors.py | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/gn_auth/errors.py b/gn_auth/errors.py index 1b6bc81..4b6007a 100644 --- a/gn_auth/errors.py +++ b/gn_auth/errors.py @@ -8,7 +8,7 @@ from gn_auth.auth.errors import AuthorisationError def add_trace(exc: Exception, errobj: dict) -> dict: """Add the traceback to the error handling object.""" - current_app.logger.debug("Endpoint: %s\n%s", + current_app.logger.error("Endpoint: %s\n%s", request.url, traceback.format_exception(exc)) return { @@ -18,6 +18,7 @@ def add_trace(exc: Exception, errobj: dict) -> dict: def page_not_found(exc): """404 handler.""" + current_app.logger.error(f"Page '{request.url}' was not found.", exc_info=True) content_type = request.content_type if bool(content_type) and content_type.lower() == "application/json": return jsonify(add_trace(exc, { @@ -31,10 +32,12 @@ def page_not_found(exc): def handle_general_exception(exc: Exception): """Handle generic unhandled exceptions.""" + current_app.logger.error("Error occurred!", exc_info=True) content_type = request.content_type if bool(content_type) and content_type.lower() == "application/json": + exc_args = [str(x) for x in exc.args] msg = ("The following exception was raised while attempting to access " - f"{request.url}: {' '.join(exc.args)}") + f"{request.url}: {' '.join(exc_args)}") return jsonify(add_trace(exc, { "error": type(exc).__name__, "error_description": msg @@ -48,6 +51,7 @@ def handle_general_exception(exc: Exception): def handle_authorisation_error(exc: AuthorisationError): """Handle AuthorisationError if not handled anywhere else.""" + current_app.logger.error("Error occurred!", exc_info=True) current_app.logger.error(exc) return jsonify(add_trace(exc, { "error": type(exc).__name__, |