Просмотр исходного кода

log_bad_put_request_content: log hexdump of request on debug level

Peter Bieringer 2 месяцев назад
Родитель
Сommit
22d253c95a
1 измененных файлов с 4 добавлено и 0 удалено
  1. 4 0
      radicale/app/put.py

+ 4 - 0
radicale/app/put.py

@@ -202,6 +202,10 @@ class ApplicationPartPut(ApplicationBase):
                 "Bad PUT request on %r (read_components): %s", path, e, exc_info=True)
                 "Bad PUT request on %r (read_components): %s", path, e, exc_info=True)
             if self._log_bad_put_request_content:
             if self._log_bad_put_request_content:
                 logger.warning("Bad PUT request content of %r:\n%s", path, utils.textwrap_str(content))
                 logger.warning("Bad PUT request content of %r:\n%s", path, utils.textwrap_str(content))
+                if logger.isEnabledFor(logging.DEBUG):
+                    logger.debug("Request content (sha256sum): %s", utils.sha256_str(content))
+                    logger.debug("Request content (hexdump):\n%s", utils.hexdump_str(content))
+                    logger.debug("Request content (hexdump/lines):\n%s", utils.hexdump_lines(content))
             else:
             else:
                 logger.debug("Bad PUT request content: suppressed by config/option [logging] bad_put_request_content")
                 logger.debug("Bad PUT request content: suppressed by config/option [logging] bad_put_request_content")
             return httputils.BAD_REQUEST
             return httputils.BAD_REQUEST