Skip to content

[Quart] sentry_patched_asgi_app() missing 1 required positional argument: 'send' #3040

Closed
@KingsleyKelly

Description

@KingsleyKelly

How do you use Sentry?

Sentry Saas (sentry.io)

Version

latest

Steps to Reproduce

Requirements

aiohttp==3.8.1
annotated-types==0.6.0
anyio==4.2.0
blinker==1.7.0
beautifulsoup4==4.10.0
cachetools==5.3.2
certifi==2023.11.17
charset-normalizer==2.1.1
click==8.1.7
distro==1.9.0
quart
google-ads==21.3.0
google-api-core==2.15.0
google-api-python-client==2.15.0
google-auth==2.25.1
google-auth-httplib2==0.1.0
google-auth-oauthlib==0.4.6
googleapis-common-protos==1.61.0
grpcio==1.59.3
grpcio-status==1.59.3
hypercorn
h11==0.14.0
httpcore==1.0.2
httplib2==0.22.0
httpx==0.26.0
idna==3.6
itsdangerous==2.1.2
Jinja2==3.1.2
MarkupSafe==2.1.3
oauthlib==3.2.2
openai==1.6.1
packaging==23.2
proto-plus==1.22.3
protobuf==4.25.1
psycopg2-binary==2.9.9
pyasn1==0.5.1
pyasn1-modules==0.3.0
pydantic==2.5.3
pydantic_core==2.14.6
pyparsing==3.1.1
pytest==6.2.5
PyYAML==6.0.1
requests==2.31.0
requests-oauthlib==1.3.1
rsa==4.9
six==1.16.0
sniffio==1.3.0
tqdm==4.66.1
typing_extensions==4.9.0
uritemplate==3.0.1
urllib3==2.1.0
Werkzeug==3.0.1
protobuf==4.25.1
cachetools==5.3.2
mock==5.1.0
pytest-env==0.6.2
sentry-sdk[quart]
python-dotenv==0.19.1

Note that sentry, hypercorn and quart arent locked.

With the following invocation

import sentry_sdk
from sentry_sdk.integrations.quart import QuartIntegration
sentry_sdk.init(
    dsn="https://94e1b1ff4eb4da3636a3e8d55c2c0acf@o4506739227426816.ingest.sentry.io/4506739299254272",
    auto_enabling_integrations=False,
    integrations=[QuartIntegration()],
    # Set traces_sample_rate to 1.0 to capture 100%
    # of transactions for performance monitoring.
    traces_sample_rate=1.0,
    # Set profiles_sample_rate to 1.0 to profile 100%
    # of sampled transactions.
    # We recommend adjusting this value in production.
    profiles_sample_rate=1.0,

It gives the following error

Traceback (most recent call last):
  File "/usr/local/lib/python3.8/site-packages/hypercorn/asyncio/task_group.py", line 27, in _handle
    await app(scope, receive, send, sync_spawn, call_soon)
  File "/usr/local/lib/python3.8/site-packages/hypercorn/app_wrappers.py", line 51, in __call__
    await self.handle_http(scope, receive, send, sync_spawn, call_soon)
  File "/usr/local/lib/python3.8/site-packages/hypercorn/app_wrappers.py", line 83, in handle_http
    await sync_spawn(self.run_app, environ, partial(call_soon, send))
  File "/usr/local/lib/python3.8/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/usr/local/lib/python3.8/site-packages/hypercorn/app_wrappers.py", line 107, in run_app
    response_body = self.app(environ, start_response)
  File "/usr/local/lib/python3.8/site-packages/sentry_sdk/utils.py", line 1711, in runner
    return sentry_patched_function(*args, **kwargs)
TypeError: sentry_patched_asgi_app() missing 1 required positional argument: 'send' 

Expected Result

We can use Sentry

Actual Result

App 404s all requests

Metadata

Metadata

Labels

No labels
No labels

Type

Projects

Status

No status

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions