Added Uvicorn specific handle to renamve uvicorn.error
This commit is contained in:
1 parent
ed38d00418
commit
ff75697346
2 files changed
+8
-1
No files matched your search
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
[project]
|
[project]
|
||||||
name = "simple-logger-handler"
|
name = "simple-logger-handler"
|
||||||
version = "0.2.0"
|
version = "0.2.1"
|
||||||
description = "Simple reusable logger setup."
|
description = "Simple reusable logger setup."
|
||||||
authors = [{ name = "Florian Gänsejunge" }]
|
authors = [{ name = "Florian Gänsejunge" }]
|
||||||
dependencies = ["python-json-logger"]
|
dependencies = ["python-json-logger"]
|
||||||
|
|||||||
@@ -12,6 +12,12 @@ _UVICORN_LOGGERS = ("uvicorn", "uvicorn.error", "uvicorn.access")
|
|||||||
_lock = threading.Lock()
|
_lock = threading.Lock()
|
||||||
_configured = False
|
_configured = False
|
||||||
|
|
||||||
|
class _UvicornCleanupFilter(logging.Filter):
|
||||||
|
def filter(self, record: logging.LogRecord) -> bool:
|
||||||
|
if record.name == "uvicorn.error":
|
||||||
|
record.name = "uvicorn"
|
||||||
|
record.__dict__.pop("color_message", None)
|
||||||
|
return True
|
||||||
|
|
||||||
def _resolve_level() -> tuple[str, bool]:
|
def _resolve_level() -> tuple[str, bool]:
|
||||||
"""Return (level_name, was_valid). Falls back to INFO if invalid."""
|
"""Return (level_name, was_valid). Falls back to INFO if invalid."""
|
||||||
@@ -52,6 +58,7 @@ def configure_logging(*, force: bool = False) -> None:
|
|||||||
|
|
||||||
handler = logging.StreamHandler()
|
handler = logging.StreamHandler()
|
||||||
handler.setFormatter(_build_formatter())
|
handler.setFormatter(_build_formatter())
|
||||||
|
handler.addFilter(_UvicornCleanupFilter())
|
||||||
handler._shared_handler = True # marker for idempotency
|
handler._shared_handler = True # marker for idempotency
|
||||||
root.addHandler(handler)
|
root.addHandler(handler)
|
||||||
root.setLevel(level)
|
root.setLevel(level)
|
||||||
|
|||||||
Reference in new issue
Block a user