polar icon indicating copy to clipboard operation
polar copied to clipboard

Bug in OpenTelemetry causes requests with non-UTF8 headers to fail

Open sentry[bot] opened this issue 1 year ago • 0 comments

Sentry Issue: SERVER-1VC

UnicodeDecodeError: 'utf-8' codec can't decode byte 0xa1 in position 71: invalid start byte
(1 additional frame(s) were not displayed)
...
  File "starlette/middleware/errors.py", line 186, in __call__
    raise exc
  File "starlette/middleware/errors.py", line 164, in __call__
    await self.app(scope, receive, _send)
  File "/app/server/.venv/lib/python3.12/site-packages/opentelemetry/instrumentation/asgi/__init__.py", line 579, in __call__
    attributes = collect_request_attributes(scope)
  File "/app/server/.venv/lib/python3.12/site-packages/opentelemetry/instrumentation/asgi/__init__.py", line 323, in collect_request_attributes
    http_user_agent = asgi_getter.get(scope, "user-agent")
  File "/app/server/.venv/lib/python3.12/site-packages/opentelemetry/instrumentation/asgi/__init__.py", line 256, in get
    _value.decode("utf8")

Known bug in OpenTelemetry ASGI. A fix is merged but not yet released: https://github.com/open-telemetry/opentelemetry-python-contrib/pull/2837

Just upgrade the package when it is released to solve the issue.

sentry[bot] avatar Oct 02 '24 06:10 sentry[bot]