]> git.ipfire.org Git - thirdparty/httpx.git/commitdiff
Drop MessageLoggerASGIMiddleware. (#573)
authorTom Christie <tom@tomchristie.com>
Sat, 30 Nov 2019 14:28:39 +0000 (14:28 +0000)
committerGitHub <noreply@github.com>
Sat, 30 Nov 2019 14:28:39 +0000 (14:28 +0000)
httpx/dispatch/asgi.py
httpx/utils.py

index f9cbb35ffd716c5e4209fde44b701c94c6823d7f..ee75debb5f40aa9f5171ac049e4408422a5963dc 100644 (file)
@@ -4,11 +4,8 @@ from ..concurrency.asyncio import AsyncioBackend
 from ..concurrency.base import ConcurrencyBackend
 from ..config import CertTypes, TimeoutTypes, VerifyTypes
 from ..models import Request, Response
-from ..utils import MessageLoggerASGIMiddleware, get_logger
 from .base import Dispatcher
 
-logger = get_logger(__name__)
-
 
 class ASGIDispatch(Dispatcher):
     """
@@ -81,7 +78,6 @@ class ASGIDispatch(Dispatcher):
             "client": self.client,
             "root_path": self.root_path,
         }
-        app = MessageLoggerASGIMiddleware(self.app, logger=logger)
         status_code = None
         headers = None
         body_parts = []
@@ -119,7 +115,7 @@ class ASGIDispatch(Dispatcher):
                     response_complete = True
 
         try:
-            await app(scope, receive, send)
+            await self.app(scope, receive, send)
         except Exception:
             if self.raise_app_exceptions or not response_complete:
                 raise
index 07277a34b532a44db6ec84d7acbf3746d04432be..9d3aa2230eaddc12d316962d287f97520c51428c 100644 (file)
@@ -339,64 +339,3 @@ class ElapsedTimer:
         if self.end is None:
             return timedelta(seconds=perf_counter() - self.start)
         return timedelta(seconds=self.end - self.start)
-
-
-ASGI_PLACEHOLDER_FORMAT = {
-    "body": "<{length} bytes>",
-    "bytes": "<{length} bytes>",
-    "text": "<{length} chars>",
-}
-
-
-def asgi_message_with_placeholders(message: dict) -> dict:
-    """
-    Return an ASGI message, with any body-type content omitted and replaced
-    with a placeholder.
-    """
-    new_message = message.copy()
-
-    for attr in ASGI_PLACEHOLDER_FORMAT:
-        if attr in message:
-            content = message[attr]
-            placeholder = ASGI_PLACEHOLDER_FORMAT[attr].format(length=len(content))
-            new_message[attr] = placeholder
-
-    if "headers" in message:
-        new_message["headers"] = list(obfuscate_sensitive_headers(message["headers"]))
-
-    return new_message
-
-
-class MessageLoggerASGIMiddleware:
-    def __init__(self, app: typing.Callable, logger: Logger) -> None:
-        self.app = app
-        self.logger = logger
-
-    async def __call__(
-        self, scope: dict, receive: typing.Callable, send: typing.Callable
-    ) -> None:
-        async def inner_receive() -> dict:
-            message = await receive()
-            logged_message = asgi_message_with_placeholders(message)
-            self.logger.trace(f"sent {kv_format(**logged_message)}")
-            return message
-
-        async def inner_send(message: dict) -> None:
-            logged_message = asgi_message_with_placeholders(message)
-            self.logger.trace(f"received {kv_format(**logged_message)}")
-            await send(message)
-
-        logged_scope = dict(scope)
-        if "headers" in scope:
-            logged_scope["headers"] = list(
-                obfuscate_sensitive_headers(scope["headers"])
-            )
-        self.logger.trace(f"started {kv_format(**logged_scope)}")
-
-        try:
-            await self.app(scope, inner_receive, inner_send)
-        except BaseException as exc:
-            self.logger.trace("raised_exception")
-            raise exc from None
-        else:
-            self.logger.trace("completed")