summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZuul <zuul@review.opendev.org>2019-07-16 17:18:44 +0000
committerGerrit Code Review <review@openstack.org>2019-07-16 17:18:44 +0000
commit9bae80ec0207d44c8bc467a11c837da9a98da007 (patch)
tree787a2798580f7b7829a2470c66373483af93c2d2
parenteb4815e36250d2517c1c7c640402a34bbb62fe97 (diff)
parentd6b74f5ce9af172d0b3a33234b1489d9af59e5fe (diff)
downloadoslo-middleware-9bae80ec0207d44c8bc467a11c837da9a98da007.tar.gz
Merge "More details when logging 413 Entity Too Large"train-em3.38.1
-rw-r--r--oslo_middleware/sizelimit.py12
-rw-r--r--releasenotes/notes/log_max_request_body_size-1835363-6f37946210a100d7.yaml4
2 files changed, 13 insertions, 3 deletions
diff --git a/oslo_middleware/sizelimit.py b/oslo_middleware/sizelimit.py
index 026b709..4156449 100644
--- a/oslo_middleware/sizelimit.py
+++ b/oslo_middleware/sizelimit.py
@@ -17,6 +17,8 @@ Request Body limiting middleware.
"""
+import logging
+
from oslo_config import cfg
import webob.dec
import webob.exc
@@ -24,6 +26,8 @@ import webob.exc
from oslo_middleware._i18n import _
from oslo_middleware import base
+LOG = logging.getLogger(__name__)
+
_oldopts = [cfg.DeprecatedOpt('osapi_max_request_body_size',
group='DEFAULT'),
@@ -56,7 +60,7 @@ class LimitingReader(object):
for chunk in self.data:
self.bytes_read += len(chunk)
if self.bytes_read > self.limit:
- msg = _("Request is too large.")
+ msg = _("Request is too large. Larger than %s") % self.limit
raise webob.exc.HTTPRequestEntityTooLarge(explanation=msg)
else:
yield chunk
@@ -70,7 +74,7 @@ class LimitingReader(object):
result = self.data.read(i)
self.bytes_read += len(result)
if self.bytes_read > self.limit:
- msg = _("Request is too large.")
+ msg = _("Request is too large. Larger than %s.") % self.limit
raise webob.exc.HTTPRequestEntityTooLarge(explanation=msg)
return result
@@ -87,7 +91,9 @@ class RequestBodySizeLimiter(base.ConfigurableMiddleware):
max_size = self._conf_get('max_request_body_size')
if (req.content_length is not None and
req.content_length > max_size):
- msg = _("Request is too large.")
+ msg = _("Request is too large. "
+ "Larger than max_request_body_size (%s).") % max_size
+ LOG.info(msg)
raise webob.exc.HTTPRequestEntityTooLarge(explanation=msg)
if req.content_length is None:
limiter = LimitingReader(req.body_file, max_size)
diff --git a/releasenotes/notes/log_max_request_body_size-1835363-6f37946210a100d7.yaml b/releasenotes/notes/log_max_request_body_size-1835363-6f37946210a100d7.yaml
new file mode 100644
index 0000000..864d2ed
--- /dev/null
+++ b/releasenotes/notes/log_max_request_body_size-1835363-6f37946210a100d7.yaml
@@ -0,0 +1,4 @@
+---
+other:
+ - |
+ Log when max_request_body_size is exceeded.