Skip to content

Commit

Permalink
Use real methods for fatal/warn
Browse files Browse the repository at this point in the history
For better DX in IDEs.

Fixes #648
  • Loading branch information
hynek committed Nov 9, 2024
1 parent ea14124 commit b81c4ce
Showing 1 changed file with 17 additions and 5 deletions.
22 changes: 17 additions & 5 deletions src/structlog/stdlib.py
Original file line number Diff line number Diff line change
Expand Up @@ -217,6 +217,12 @@ def critical(self, event: str | None = None, *args: Any, **kw: Any) -> Any:
"""
return self._proxy_to_logger("critical", event, *args, **kw)

def fatal(self, event: str | None = None, *args: Any, **kw: Any) -> Any:
"""
Process event and call `logging.Logger.critical` with the result.
"""
return self._proxy_to_logger("critical", event, *args, **kw)

def exception(
self, event: str | None = None, *args: Any, **kw: Any
) -> Any:
Expand All @@ -236,8 +242,6 @@ def log(
"""
return self._proxy_to_logger(LEVEL_TO_NAME[level], event, *args, **kw)

fatal = critical

def _proxy_to_logger(
self,
method_name: str,
Expand Down Expand Up @@ -448,7 +452,13 @@ async def acritical(self, event: str, *args: Any, **kw: Any) -> None:
"""
await self._dispatch_to_sync(self.critical, event, args, kw)

afatal = acritical
async def afatal(self, event: str, *args: Any, **kw: Any) -> None:
"""
Log using `critical()`, but asynchronously in a separate thread.
.. versionadded:: 23.1.0
"""
await self._dispatch_to_sync(self.critical, event, args, kw)

async def aexception(self, event: str, *args: Any, **kw: Any) -> None:
"""
Expand Down Expand Up @@ -625,15 +635,17 @@ async def info(self, event: str, *args: Any, **kw: Any) -> None:
async def warning(self, event: str, *args: Any, **kw: Any) -> None:
await self._dispatch_to_sync(self.sync_bl.warning, event, args, kw)

warn = warning
async def warn(self, event: str, *args: Any, **kw: Any) -> None:
await self._dispatch_to_sync(self.sync_bl.warning, event, args, kw)

async def error(self, event: str, *args: Any, **kw: Any) -> None:
await self._dispatch_to_sync(self.sync_bl.error, event, args, kw)

async def critical(self, event: str, *args: Any, **kw: Any) -> None:
await self._dispatch_to_sync(self.sync_bl.critical, event, args, kw)

fatal = critical
async def fatal(self, event: str, *args: Any, **kw: Any) -> None:
await self._dispatch_to_sync(self.sync_bl.critical, event, args, kw)

async def exception(self, event: str, *args: Any, **kw: Any) -> None:
# To make `log.exception("foo") work, we have to check if the user
Expand Down

0 comments on commit b81c4ce

Please sign in to comment.