Skip to content

ref(wsgi): Drop send_default_pii support - #7834

Draft
pabloDeputter wants to merge 2 commits into
major/3.0from
pablo/wsgi-drop-pii-support
Draft

pabloDeputter wants to merge 2 commits into
major/3.0from
pablo/wsgi-drop-pii-support

Conversation

@pabloDeputter

Copy link
Copy Markdown
Member

Description

Drop send_default_pii support from WSGI.

Issues

Resolves #7616

@github-actions

github-actions Bot commented Oct 2, 2026

Copy link
Copy Markdown
Contributor

Codecov Results 📊

✅ 55062 passed | ❌ 128 failed | ⏭️ 2715 skipped | Total: 57905 | Pass Rate: 95.09% | Execution Time: 153m 21s

📊 Comparison with Base Branch

Metric Change
Total Tests 📉 -81414
Passed Tests 📉 -77036
Failed Tests 📈 +127
Skipped Tests 📉 -4505

➕ New Tests (128)

View new tests
  • test_query_string_data_collection[legacy_send_default_pii_true]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_query_string_data_collection[legacy_send_default_pii_false]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_span_http_query_data_collection[legacy_send_default_pii_true]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_span_http_query_data_collection[legacy_send_default_pii_false]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_query_string_empty_legacy_emits_empty_string
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_custom_error_handler_request_context
    • File: tests.integrations.django.test_basic
    • Status: ❌ Failing
  • test_query_string_data_collection[legacy_send_default_pii_true]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_query_string_data_collection[legacy_send_default_pii_false]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_span_http_query_data_collection[legacy_send_default_pii_true]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_span_http_query_data_collection[legacy_send_default_pii_false]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_query_string_empty_legacy_emits_empty_string
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_custom_error_handler_request_context
    • File: tests.integrations.django.test_basic
    • Status: ❌ Failing
  • test_query_string_data_collection[legacy_send_default_pii_true]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_query_string_data_collection[legacy_send_default_pii_false]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_span_http_query_data_collection[legacy_send_default_pii_true]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_span_http_query_data_collection[legacy_send_default_pii_false]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_query_string_empty_legacy_emits_empty_string
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_custom_error_handler_request_context
    • File: tests.integrations.django.test_basic
    • Status: ❌ Failing
  • test_query_string_data_collection[legacy_send_default_pii_true]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_query_string_data_collection[legacy_send_default_pii_false]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_span_http_query_data_collection[legacy_send_default_pii_true]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_span_http_query_data_collection[legacy_send_default_pii_false]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_query_string_empty_legacy_emits_empty_string
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_custom_error_handler_request_context
    • File: tests.integrations.django.test_basic
    • Status: ❌ Failing
  • test_query_string_data_collection[legacy_send_default_pii_true]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_query_string_data_collection[legacy_send_default_pii_false]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_span_http_query_data_collection[legacy_send_default_pii_true]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_span_http_query_data_collection[legacy_send_default_pii_false]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_query_string_empty_legacy_emits_empty_string
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_custom_error_handler_request_context
    • File: tests.integrations.django.test_basic
    • Status: ❌ Failing
  • test_query_string_data_collection[legacy_send_default_pii_true]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_query_string_data_collection[legacy_send_default_pii_false]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_span_http_query_data_collection[legacy_send_default_pii_true]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_span_http_query_data_collection[legacy_send_default_pii_false]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_query_string_empty_legacy_emits_empty_string
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_custom_error_handler_request_context
    • File: tests.integrations.django.test_basic
    • Status: ❌ Failing
  • test_query_string_data_collection[legacy_send_default_pii_true]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_query_string_data_collection[legacy_send_default_pii_false]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_span_http_query_data_collection[legacy_send_default_pii_true]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_span_http_query_data_collection[legacy_send_default_pii_false]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_query_string_empty_legacy_emits_empty_string
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_custom_error_handler_request_context
    • File: tests.integrations.django.test_basic
    • Status: ❌ Failing
  • test_query_string_data_collection[legacy_send_default_pii_true]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_query_string_data_collection[legacy_send_default_pii_false]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_span_http_query_data_collection[legacy_send_default_pii_true]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_span_http_query_data_collection[legacy_send_default_pii_false]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_query_string_empty_legacy_emits_empty_string
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_custom_error_handler_request_context
    • File: tests.integrations.django.test_basic
    • Status: ❌ Failing
  • test_query_string_data_collection[legacy_send_default_pii_true]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_query_string_data_collection[legacy_send_default_pii_false]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_span_http_query_data_collection[legacy_send_default_pii_true]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_span_http_query_data_collection[legacy_send_default_pii_false]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_query_string_empty_legacy_emits_empty_string
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_custom_error_handler_request_context
    • File: tests.integrations.django.test_basic
    • Status: ❌ Failing
  • test_query_string_data_collection[legacy_send_default_pii_true]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_query_string_data_collection[legacy_send_default_pii_false]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_span_http_query_data_collection[legacy_send_default_pii_true]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_span_http_query_data_collection[legacy_send_default_pii_false]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_query_string_empty_legacy_emits_empty_string
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_custom_error_handler_request_context
    • File: tests.integrations.django.test_basic
    • Status: ❌ Failing
  • test_query_string_data_collection[legacy_send_default_pii_true]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_query_string_data_collection[legacy_send_default_pii_false]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_span_http_query_data_collection[legacy_send_default_pii_true]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_span_http_query_data_collection[legacy_send_default_pii_false]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_query_string_empty_legacy_emits_empty_string
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_custom_error_handler_request_context
    • File: tests.integrations.django.test_basic
    • Status: ❌ Failing
  • test_query_string_data_collection[legacy_send_default_pii_true]
    • File: tests.integrations.flask.test_flask
    • Status: ❌ Failing
  • test_query_string_data_collection[legacy_send_default_pii_false]
    • File: tests.integrations.flask.test_flask
    • Status: ❌ Failing
  • test_span_http_query_data_collection[legacy_send_default_pii_true]
    • File: tests.integrations.flask.test_flask
    • Status: ❌ Failing
  • test_span_http_query_data_collection[legacy_send_default_pii_false]
    • File: tests.integrations.flask.test_flask
    • Status: ❌ Failing
  • test_query_string_empty_legacy_emits_empty_string
    • File: tests.integrations.flask.test_flask
    • Status: ❌ Failing
  • test_query_string_data_collection[legacy_send_default_pii_true]
    • File: tests.integrations.flask.test_flask
    • Status: ❌ Failing
  • test_query_string_data_collection[legacy_send_default_pii_false]
    • File: tests.integrations.flask.test_flask
    • Status: ❌ Failing
  • test_span_http_query_data_collection[legacy_send_default_pii_true]
    • File: tests.integrations.flask.test_flask
    • Status: ❌ Failing
  • test_span_http_query_data_collection[legacy_send_default_pii_false]
    • File: tests.integrations.flask.test_flask
    • Status: ❌ Failing
  • test_query_string_empty_legacy_emits_empty_string
    • File: tests.integrations.flask.test_flask
    • Status: ❌ Failing
  • test_query_string_data_collection[legacy_send_default_pii_true]
    • File: tests.integrations.flask.test_flask
    • Status: ❌ Failing
  • test_query_string_data_collection[legacy_send_default_pii_false]
    • File: tests.integrations.flask.test_flask
    • Status: ❌ Failing
  • test_span_http_query_data_collection[legacy_send_default_pii_true]
    • File: tests.integrations.flask.test_flask
    • Status: ❌ Failing
  • test_span_http_query_data_collection[legacy_send_default_pii_false]
    • File: tests.integrations.flask.test_flask
    • Status: ❌ Failing
  • test_query_string_empty_legacy_emits_empty_string
    • File: tests.integrations.flask.test_flask
    • Status: ❌ Failing
  • test_query_string_data_collection[legacy_send_default_pii_true]
    • File: tests.integrations.flask.test_flask
    • Status: ❌ Failing
  • test_query_string_data_collection[legacy_send_default_pii_false]
    • File: tests.integrations.flask.test_flask
    • Status: ❌ Failing
  • test_span_http_query_data_collection[legacy_send_default_pii_true]
    • File: tests.integrations.flask.test_flask
    • Status: ❌ Failing
  • test_span_http_query_data_collection[legacy_send_default_pii_false]
    • File: tests.integrations.flask.test_flask
    • Status: ❌ Failing
  • test_query_string_empty_legacy_emits_empty_string
    • File: tests.integrations.flask.test_flask
    • Status: ❌ Failing
  • test_query_string_data_collection[legacy_send_default_pii_true]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_query_string_data_collection[legacy_send_default_pii_false]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_span_http_query_data_collection[legacy_send_default_pii_true]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_span_http_query_data_collection[legacy_send_default_pii_false]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_query_string_empty_legacy_emits_empty_string
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_custom_error_handler_request_context
    • File: tests.integrations.django.test_basic
    • Status: ❌ Failing
  • test_query_string_data_collection[legacy_send_default_pii_true]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_query_string_data_collection[legacy_send_default_pii_false]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_span_http_query_data_collection[legacy_send_default_pii_true]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_span_http_query_data_collection[legacy_send_default_pii_false]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_query_string_empty_legacy_emits_empty_string
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_custom_error_handler_request_context
    • File: tests.integrations.django.test_basic
    • Status: ❌ Failing
  • test_query_string_data_collection[legacy_send_default_pii_true]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_query_string_data_collection[legacy_send_default_pii_false]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_span_http_query_data_collection[legacy_send_default_pii_true]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_span_http_query_data_collection[legacy_send_default_pii_false]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_query_string_empty_legacy_emits_empty_string
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_custom_error_handler_request_context
    • File: tests.integrations.django.test_basic
    • Status: ❌ Failing
  • test_query_string_data_collection[legacy_send_default_pii_true]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_query_string_data_collection[legacy_send_default_pii_false]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_span_http_query_data_collection[legacy_send_default_pii_true]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_span_http_query_data_collection[legacy_send_default_pii_false]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_query_string_empty_legacy_emits_empty_string
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_custom_error_handler_request_context
    • File: tests.integrations.django.test_basic
    • Status: ❌ Failing
  • test_query_string_data_collection[legacy_send_default_pii_true]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_query_string_data_collection[legacy_send_default_pii_false]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_span_http_query_data_collection[legacy_send_default_pii_true]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_span_http_query_data_collection[legacy_send_default_pii_false]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_query_string_empty_legacy_emits_empty_string
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_custom_error_handler_request_context
    • File: tests.integrations.django.test_basic
    • Status: ❌ Failing
  • test_query_string_data_collection[legacy_send_default_pii_true]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_query_string_data_collection[legacy_send_default_pii_false]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_span_http_query_data_collection[legacy_send_default_pii_true]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_span_http_query_data_collection[legacy_send_default_pii_false]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_query_string_empty_legacy_emits_empty_string
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_custom_error_handler_request_context
    • File: tests.integrations.django.test_basic
    • Status: ❌ Failing
  • test_query_string_data_collection[legacy_send_default_pii_true]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_query_string_data_collection[legacy_send_default_pii_false]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_span_http_query_data_collection[legacy_send_default_pii_true]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_span_http_query_data_collection[legacy_send_default_pii_false]
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_query_string_empty_legacy_emits_empty_string
    • File: tests.integrations.django.test_data_scrubbing
    • Status: ❌ Failing
  • test_custom_error_handler_request_context
    • File: tests.integrations.django.test_basic
    • Status: ❌ Failing

➖ Removed Tests (1)

View removed tests
  • test_cache_spans_item_size[True]
    • File: tests.integrations.django.test_cache_module

❌ Failed Tests

test_query_string_data_collection[legacy_send_default_pii_true]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.10-django-v3.2.25
Error: tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection assert event["request"]["query_string"] == expected_query_string E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection
    assert event["request"]["query_string"] == expected_query_string
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_query_string_data_collection[legacy_send_default_pii_false]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.10-django-v3.2.25
Error: tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection assert event["request"]["query_string"] == expected_query_string E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection
    assert event["request"]["query_string"] == expected_query_string
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_span_http_query_data_collection[legacy_send_default_pii_true]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.10-django-v3.2.25
Error: tests/integrations/django/test_data_scrubbing.py:234: in test_span_http_query_data_collection assert root_span["attributes"][SPANDATA.HTTP_QUERY] == expected_query E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:234: in test_span_http_query_data_collection
    assert root_span["attributes"][SPANDATA.HTTP_QUERY] == expected_query
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_span_http_query_data_collection[legacy_send_default_pii_false]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.10-django-v3.2.25
Error: tests/integrations/django/test_data_scrubbing.py:232: in test_span_http_query_data_collection assert SPANDATA.HTTP_QUERY not in root_span["attributes"] E AssertionError: assert 'http.query' not in {'sentry.origin': 'auto.http.django', 'sentry.trace_lifecycle': 'stream', 'sentry.segment.name.source': 'route', 'sentry.op': 'http.server', 'thread.id': '139902902386688', 'thread.name': 'MainThread', 'sentry.platform': 'python', 'process.command_args': ['/home/runner/work/sentry-python/sentry-python/.tox/py3.10-django-v3.2.25/lib/python3.10/site-packages/pytest/main.py', '-W', 'error::pytest.PytestUnraisableExceptionWarning', 'tests/integrations/django', '-o', 'junit_suite_name=py3.10-django-v3.2.25', '--junitxml=.junitxml-py3.10-django-v3.2.25'], 'sentry.sdk.integrations': ['argv', 'atexit', 'dedupe', 'django', 'excepthook', 'modules', 'stdlib', 'threading', 'unraisablehook'], 'http.request.method': 'GET', 'http.request.header.host': ['localhost'], 'network.protocol.name': 'http', 'server.address': 'localhost', 'server.port': 80, 'http.query': 'toy=tennisball&color=red&auth=%5BFiltered%5D', 'url.path': '/message', 'url.full': 'http://localhost/message?toy=tennisball&color=red&auth=%5BFiltered%5D', 'http.route': '/message', 'http.response.status_code': 200, 'sentry.segment.id': 'bdb9e3aeb529019c', 'sentry.segment.name': '/message', 'sentry.sdk.name': 'sentry.python.django', 'sentry.sdk.version': '2.71.0', 'process.runtime.name': 'CPython', 'process.runtime.version': '3.10.12', 'sentry.environment': 'production', 'sentry.release': '7f391caa6aa1728afda27af9e7500edf26a6a44f', 'sentry.is_localhost': True} E + where 'http.query' = SPANDATA.HTTP_QUERY

Stack Trace
tests/integrations/django/test_data_scrubbing.py:232: in test_span_http_query_data_collection
    assert SPANDATA.HTTP_QUERY not in root_span["attributes"]
E   AssertionError: assert 'http.query' not in {'sentry.origin': 'auto.http.django', 'sentry.trace_lifecycle': 'stream', 'sentry.segment.name.source': 'route', 'sentry.op': 'http.server', 'thread.id': '139902902386688', 'thread.name': 'MainThread', 'sentry.platform': 'python', 'process.command_args': ['/home/runner/work/sentry-python/sentry-python/.tox/py3.10-django-v3.2.25/lib/python3.10/site-packages/pytest/__main__.py', '-W', 'error::pytest.PytestUnraisableExceptionWarning', 'tests/integrations/django', '-o', 'junit_suite_name=py3.10-django-v3.2.25', '--junitxml=.junitxml-py3.10-django-v3.2.25'], 'sentry.sdk.integrations': ['argv', 'atexit', 'dedupe', 'django', 'excepthook', 'modules', 'stdlib', 'threading', 'unraisablehook'], 'http.request.method': 'GET', 'http.request.header.host': ['localhost'], 'network.protocol.name': 'http', 'server.address': 'localhost', 'server.port': 80, 'http.query': 'toy=tennisball&color=red&auth=%5BFiltered%5D', 'url.path': '/message', 'url.full': 'http://localhost/message?toy=tennisball&color=red&auth=%5BFiltered%5D', 'http.route': '/message', 'http.response.status_code': 200, 'sentry.segment.id': 'bdb9e3aeb529019c', 'sentry.segment.name': '/message', 'sentry.sdk.name': 'sentry.python.django', 'sentry.sdk.version': '2.71.0', 'process.runtime.name': 'CPython', 'process.runtime.version': '3.10.12', 'sentry.environment': 'production', 'sentry.release': '7f391caa6aa1728afda27af9e7500edf26a6a44f', 'sentry.is_localhost': True}
E    +  where 'http.query' = SPANDATA.HTTP_QUERY

test_query_string_empty_legacy_emits_empty_string

File: tests.integrations.django.test_data_scrubbing
Suite: py3.10-django-v3.2.25
Error: tests/integrations/django/test_data_scrubbing.py:248: in test_query_string_empty_legacy_emits_empty_string assert event["request"]["query_string"] == "" E KeyError: 'query_string'

Stack Trace
tests/integrations/django/test_data_scrubbing.py:248: in test_query_string_empty_legacy_emits_empty_string
    assert event["request"]["query_string"] == ""
E   KeyError: 'query_string'

test_custom_error_handler_request_context

File: tests.integrations.django.test_basic
Suite: py3.10-django-v3.2.25
Error: AssertionError: assert {'url': 'http://localhost/404', 'method': 'POST', 'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}} == {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'query_string': '', 'url': 'http://localhost/404'}
 Common items: {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'url': 'http://localhost/404'}
 Right contains 1 more item: {'query_string': ''} Full diff: { + 'url': 'http://localhost/404',
 + 'method': 'POST', 'env': { 'SERVER_NAME': 'localhost', 'SERVER_PORT': '80', }, 'headers': { 'Host': 'localhost', }, - 'method': 'POST', - 'query_string': '', - 'url': 'http://localhost/404',
 }

Stack Trace
tests/integrations/django/test_basic.py:439: in test_custom_error_handler_request_context
    assert event["request"] == {
E   AssertionError: assert {'url': 'http://localhost/404', 'method': 'POST', 'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}} == {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'query_string': '', 'url': 'http://localhost/404'}
E     
E     Common items:
E     {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'},
E      'headers': {'Host': 'localhost'},
E      'method': 'POST',
E      'url': 'http://localhost/404'}
E     Right contains 1 more item:
E     {'query_string': ''}
E     
E     Full diff:
E       {
E     +     'url': 'http://localhost/404',
E     +     'method': 'POST',
E           'env': {
E               'SERVER_NAME': 'localhost',
E               'SERVER_PORT': '80',
E           },
E           'headers': {
E               'Host': 'localhost',
E           },
E     -     'method': 'POST',
E     -     'query_string': '',
E     -     'url': 'http://localhost/404',
E       }

test_query_string_data_collection[legacy_send_default_pii_true]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.10-django-v5.2.17
Error: tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection assert event["request"]["query_string"] == expected_query_string E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection
    assert event["request"]["query_string"] == expected_query_string
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_query_string_data_collection[legacy_send_default_pii_false]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.10-django-v5.2.17
Error: tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection assert event["request"]["query_string"] == expected_query_string E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection
    assert event["request"]["query_string"] == expected_query_string
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_span_http_query_data_collection[legacy_send_default_pii_true]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.10-django-v5.2.17
Error: tests/integrations/django/test_data_scrubbing.py:234: in test_span_http_query_data_collection assert root_span["attributes"][SPANDATA.HTTP_QUERY] == expected_query E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:234: in test_span_http_query_data_collection
    assert root_span["attributes"][SPANDATA.HTTP_QUERY] == expected_query
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_span_http_query_data_collection[legacy_send_default_pii_false]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.10-django-v5.2.17
Error: tests/integrations/django/test_data_scrubbing.py:232: in test_span_http_query_data_collection assert SPANDATA.HTTP_QUERY not in root_span["attributes"] E AssertionError: assert 'http.query' not in {'sentry.origin': 'auto.http.django', 'sentry.trace_lifecycle': 'stream', 'sentry.segment.name.source': 'route', 'sentry.op': 'http.server', 'thread.id': '140007312777216', 'thread.name': 'MainThread', 'sentry.platform': 'python', 'process.command_args': ['/home/runner/work/sentry-python/sentry-python/.tox/py3.10-django-v5.2.17/lib/python3.10/site-packages/pytest/main.py', '-W', 'error::pytest.PytestUnraisableExceptionWarning', 'tests/integrations/django', '-o', 'junit_suite_name=py3.10-django-v5.2.17', '--junitxml=.junitxml-py3.10-django-v5.2.17'], 'sentry.sdk.integrations': ['argv', 'atexit', 'dedupe', 'django', 'excepthook', 'modules', 'stdlib', 'threading', 'unraisablehook'], 'http.request.method': 'GET', 'http.request.header.host': ['localhost'], 'network.protocol.name': 'http', 'server.address': 'localhost', 'server.port': 80, 'http.query': 'toy=tennisball&color=red&auth=%5BFiltered%5D', 'url.path': '/message', 'url.full': 'http://localhost/message?toy=tennisball&color=red&auth=%5BFiltered%5D', 'http.route': '/message', 'http.response.status_code': 200, 'sentry.segment.id': '982ad2cee62e51f4', 'sentry.segment.name': '/message', 'sentry.sdk.name': 'sentry.python.django', 'sentry.sdk.version': '2.71.0', 'process.runtime.name': 'CPython', 'process.runtime.version': '3.10.12', 'sentry.environment': 'production', 'sentry.release': '7f391caa6aa1728afda27af9e7500edf26a6a44f', 'sentry.is_localhost': True} E + where 'http.query' = SPANDATA.HTTP_QUERY

Stack Trace
tests/integrations/django/test_data_scrubbing.py:232: in test_span_http_query_data_collection
    assert SPANDATA.HTTP_QUERY not in root_span["attributes"]
E   AssertionError: assert 'http.query' not in {'sentry.origin': 'auto.http.django', 'sentry.trace_lifecycle': 'stream', 'sentry.segment.name.source': 'route', 'sentry.op': 'http.server', 'thread.id': '140007312777216', 'thread.name': 'MainThread', 'sentry.platform': 'python', 'process.command_args': ['/home/runner/work/sentry-python/sentry-python/.tox/py3.10-django-v5.2.17/lib/python3.10/site-packages/pytest/__main__.py', '-W', 'error::pytest.PytestUnraisableExceptionWarning', 'tests/integrations/django', '-o', 'junit_suite_name=py3.10-django-v5.2.17', '--junitxml=.junitxml-py3.10-django-v5.2.17'], 'sentry.sdk.integrations': ['argv', 'atexit', 'dedupe', 'django', 'excepthook', 'modules', 'stdlib', 'threading', 'unraisablehook'], 'http.request.method': 'GET', 'http.request.header.host': ['localhost'], 'network.protocol.name': 'http', 'server.address': 'localhost', 'server.port': 80, 'http.query': 'toy=tennisball&color=red&auth=%5BFiltered%5D', 'url.path': '/message', 'url.full': 'http://localhost/message?toy=tennisball&color=red&auth=%5BFiltered%5D', 'http.route': '/message', 'http.response.status_code': 200, 'sentry.segment.id': '982ad2cee62e51f4', 'sentry.segment.name': '/message', 'sentry.sdk.name': 'sentry.python.django', 'sentry.sdk.version': '2.71.0', 'process.runtime.name': 'CPython', 'process.runtime.version': '3.10.12', 'sentry.environment': 'production', 'sentry.release': '7f391caa6aa1728afda27af9e7500edf26a6a44f', 'sentry.is_localhost': True}
E    +  where 'http.query' = SPANDATA.HTTP_QUERY

test_query_string_empty_legacy_emits_empty_string

File: tests.integrations.django.test_data_scrubbing
Suite: py3.10-django-v5.2.17
Error: tests/integrations/django/test_data_scrubbing.py:248: in test_query_string_empty_legacy_emits_empty_string assert event["request"]["query_string"] == "" E KeyError: 'query_string'

Stack Trace
tests/integrations/django/test_data_scrubbing.py:248: in test_query_string_empty_legacy_emits_empty_string
    assert event["request"]["query_string"] == ""
E   KeyError: 'query_string'

test_custom_error_handler_request_context

File: tests.integrations.django.test_basic
Suite: py3.10-django-v5.2.17
Error: AssertionError: assert {'url': 'http://localhost/404', 'method': 'POST', 'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}} == {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'query_string': '', 'url': 'http://localhost/404'}
 Common items: {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'url': 'http://localhost/404'}
 Right contains 1 more item: {'query_string': ''} Full diff: { + 'url': 'http://localhost/404',
 + 'method': 'POST', 'env': { 'SERVER_NAME': 'localhost', 'SERVER_PORT': '80', }, 'headers': { 'Host': 'localhost', }, - 'method': 'POST', - 'query_string': '', - 'url': 'http://localhost/404',
 }

Stack Trace
tests/integrations/django/test_basic.py:439: in test_custom_error_handler_request_context
    assert event["request"] == {
E   AssertionError: assert {'url': 'http://localhost/404', 'method': 'POST', 'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}} == {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'query_string': '', 'url': 'http://localhost/404'}
E     
E     Common items:
E     {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'},
E      'headers': {'Host': 'localhost'},
E      'method': 'POST',
E      'url': 'http://localhost/404'}
E     Right contains 1 more item:
E     {'query_string': ''}
E     
E     Full diff:
E       {
E     +     'url': 'http://localhost/404',
E     +     'method': 'POST',
E           'env': {
E               'SERVER_NAME': 'localhost',
E               'SERVER_PORT': '80',
E           },
E           'headers': {
E               'Host': 'localhost',
E           },
E     -     'method': 'POST',
E     -     'query_string': '',
E     -     'url': 'http://localhost/404',
E       }

test_query_string_data_collection[legacy_send_default_pii_true]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.11-django-v4.2.30
Error: tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection assert event["request"]["query_string"] == expected_query_string E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection
    assert event["request"]["query_string"] == expected_query_string
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_query_string_data_collection[legacy_send_default_pii_false]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.11-django-v4.2.30
Error: tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection assert event["request"]["query_string"] == expected_query_string E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection
    assert event["request"]["query_string"] == expected_query_string
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_span_http_query_data_collection[legacy_send_default_pii_true]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.11-django-v4.2.30
Error: tests/integrations/django/test_data_scrubbing.py:234: in test_span_http_query_data_collection assert root_span["attributes"][SPANDATA.HTTP_QUERY] == expected_query E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:234: in test_span_http_query_data_collection
    assert root_span["attributes"][SPANDATA.HTTP_QUERY] == expected_query
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_span_http_query_data_collection[legacy_send_default_pii_false]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.11-django-v4.2.30
Error: tests/integrations/django/test_data_scrubbing.py:232: in test_span_http_query_data_collection assert SPANDATA.HTTP_QUERY not in root_span["attributes"] E AssertionError: assert 'http.query' not in {'sentry.origin': 'auto.http.django', 'sentry.trace_lifecycle': 'stream', 'sentry.segment.name.source': 'route', 'sentry.op': 'http.server', 'thread.id': '139923168597824', 'thread.name': 'MainThread', 'sentry.platform': 'python', 'process.command_args': ['/home/runner/work/sentry-python/sentry-python/.tox/py3.11-django-v4.2.30/lib/python3.11/site-packages/pytest/main.py', '-W', 'error::pytest.PytestUnraisableExceptionWarning', 'tests/integrations/django', '-o', 'junit_suite_name=py3.11-django-v4.2.30', '--junitxml=.junitxml-py3.11-django-v4.2.30'], 'sentry.sdk.integrations': ['argv', 'atexit', 'dedupe', 'django', 'excepthook', 'modules', 'stdlib', 'threading', 'unraisablehook'], 'http.request.method': 'GET', 'http.request.header.host': ['localhost'], 'network.protocol.name': 'http', 'server.address': 'localhost', 'server.port': 80, 'http.query': 'toy=tennisball&color=red&auth=%5BFiltered%5D', 'url.path': '/message', 'url.full': 'http://localhost/message?toy=tennisball&color=red&auth=%5BFiltered%5D', 'http.route': '/message', 'http.response.status_code': 200, 'sentry.segment.id': 'afef5f556521465a', 'sentry.segment.name': '/message', 'sentry.sdk.name': 'sentry.python.django', 'sentry.sdk.version': '2.71.0', 'process.runtime.name': 'CPython', 'process.runtime.version': '3.11.16', 'sentry.environment': 'production', 'sentry.release': '7f391caa6aa1728afda27af9e7500edf26a6a44f', 'sentry.is_localhost': True} E + where 'http.query' = SPANDATA.HTTP_QUERY

Stack Trace
tests/integrations/django/test_data_scrubbing.py:232: in test_span_http_query_data_collection
    assert SPANDATA.HTTP_QUERY not in root_span["attributes"]
E   AssertionError: assert 'http.query' not in {'sentry.origin': 'auto.http.django', 'sentry.trace_lifecycle': 'stream', 'sentry.segment.name.source': 'route', 'sentry.op': 'http.server', 'thread.id': '139923168597824', 'thread.name': 'MainThread', 'sentry.platform': 'python', 'process.command_args': ['/home/runner/work/sentry-python/sentry-python/.tox/py3.11-django-v4.2.30/lib/python3.11/site-packages/pytest/__main__.py', '-W', 'error::pytest.PytestUnraisableExceptionWarning', 'tests/integrations/django', '-o', 'junit_suite_name=py3.11-django-v4.2.30', '--junitxml=.junitxml-py3.11-django-v4.2.30'], 'sentry.sdk.integrations': ['argv', 'atexit', 'dedupe', 'django', 'excepthook', 'modules', 'stdlib', 'threading', 'unraisablehook'], 'http.request.method': 'GET', 'http.request.header.host': ['localhost'], 'network.protocol.name': 'http', 'server.address': 'localhost', 'server.port': 80, 'http.query': 'toy=tennisball&color=red&auth=%5BFiltered%5D', 'url.path': '/message', 'url.full': 'http://localhost/message?toy=tennisball&color=red&auth=%5BFiltered%5D', 'http.route': '/message', 'http.response.status_code': 200, 'sentry.segment.id': 'afef5f556521465a', 'sentry.segment.name': '/message', 'sentry.sdk.name': 'sentry.python.django', 'sentry.sdk.version': '2.71.0', 'process.runtime.name': 'CPython', 'process.runtime.version': '3.11.16', 'sentry.environment': 'production', 'sentry.release': '7f391caa6aa1728afda27af9e7500edf26a6a44f', 'sentry.is_localhost': True}
E    +  where 'http.query' = SPANDATA.HTTP_QUERY

test_query_string_empty_legacy_emits_empty_string

File: tests.integrations.django.test_data_scrubbing
Suite: py3.11-django-v4.2.30
Error: tests/integrations/django/test_data_scrubbing.py:248: in test_query_string_empty_legacy_emits_empty_string assert event["request"]["query_string"] == "" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ E KeyError: 'query_string'

Stack Trace
tests/integrations/django/test_data_scrubbing.py:248: in test_query_string_empty_legacy_emits_empty_string
    assert event["request"]["query_string"] == ""
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
E   KeyError: 'query_string'

test_custom_error_handler_request_context

File: tests.integrations.django.test_basic
Suite: py3.11-django-v4.2.30
Error: AssertionError: assert {'url': 'http://localhost/404', 'method': 'POST', 'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}} == {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'query_string': '', 'url': 'http://localhost/404'}
 Common items: {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'url': 'http://localhost/404'}
 Right contains 1 more item: {'query_string': ''} Full diff: { + 'url': 'http://localhost/404',
 + 'method': 'POST', 'env': { 'SERVER_NAME': 'localhost', 'SERVER_PORT': '80', }, 'headers': { 'Host': 'localhost', }, - 'method': 'POST', - 'query_string': '', - 'url': 'http://localhost/404',
 }

Stack Trace
tests/integrations/django/test_basic.py:439: in test_custom_error_handler_request_context
    assert event["request"] == {
E   AssertionError: assert {'url': 'http://localhost/404', 'method': 'POST', 'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}} == {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'query_string': '', 'url': 'http://localhost/404'}
E     
E     Common items:
E     {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'},
E      'headers': {'Host': 'localhost'},
E      'method': 'POST',
E      'url': 'http://localhost/404'}
E     Right contains 1 more item:
E     {'query_string': ''}
E     
E     Full diff:
E       {
E     +     'url': 'http://localhost/404',
E     +     'method': 'POST',
E           'env': {
E               'SERVER_NAME': 'localhost',
E               'SERVER_PORT': '80',
E           },
E           'headers': {
E               'Host': 'localhost',
E           },
E     -     'method': 'POST',
E     -     'query_string': '',
E     -     'url': 'http://localhost/404',
E       }

test_query_string_data_collection[legacy_send_default_pii_true]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.12-django-v4.2.30
Error: tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection assert event["request"]["query_string"] == expected_query_string E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection
    assert event["request"]["query_string"] == expected_query_string
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_query_string_data_collection[legacy_send_default_pii_false]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.12-django-v4.2.30
Error: tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection assert event["request"]["query_string"] == expected_query_string E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection
    assert event["request"]["query_string"] == expected_query_string
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_span_http_query_data_collection[legacy_send_default_pii_true]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.12-django-v4.2.30
Error: tests/integrations/django/test_data_scrubbing.py:234: in test_span_http_query_data_collection assert root_span["attributes"][SPANDATA.HTTP_QUERY] == expected_query E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:234: in test_span_http_query_data_collection
    assert root_span["attributes"][SPANDATA.HTTP_QUERY] == expected_query
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_span_http_query_data_collection[legacy_send_default_pii_false]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.12-django-v4.2.30
Error: tests/integrations/django/test_data_scrubbing.py:232: in test_span_http_query_data_collection assert SPANDATA.HTTP_QUERY not in root_span["attributes"] E AssertionError: assert 'http.query' not in {'sentry.origin': 'auto.http.django', 'sentry.trace_lifecycle': 'stream', 'sentry.segment.name.source': 'route', 'sentry.op': 'http.server', 'thread.id': '139962453894976', 'thread.name': 'MainThread', 'sentry.platform': 'python', 'process.command_args': ['/home/runner/work/sentry-python/sentry-python/.tox/py3.12-django-v4.2.30/lib/python3.12/site-packages/pytest/main.py', '-W', 'error::pytest.PytestUnraisableExceptionWarning', 'tests/integrations/django', '-o', 'junit_suite_name=py3.12-django-v4.2.30', '--junitxml=.junitxml-py3.12-django-v4.2.30'], 'sentry.sdk.integrations': ['argv', 'atexit', 'dedupe', 'django', 'excepthook', 'modules', 'stdlib', 'threading', 'unraisablehook'], 'http.request.method': 'GET', 'http.request.header.host': ['localhost'], 'network.protocol.name': 'http', 'server.address': 'localhost', 'server.port': 80, 'http.query': 'toy=tennisball&color=red&auth=%5BFiltered%5D', 'url.path': '/message', 'url.full': 'http://localhost/message?toy=tennisball&color=red&auth=%5BFiltered%5D', 'http.route': '/message', 'http.response.status_code': 200, 'sentry.segment.id': '8cdc58a81c3e6dd8', 'sentry.segment.name': '/message', 'sentry.sdk.name': 'sentry.python.django', 'sentry.sdk.version': '2.71.0', 'process.runtime.name': 'CPython', 'process.runtime.version': '3.12.14', 'sentry.environment': 'production', 'sentry.release': '7f391caa6aa1728afda27af9e7500edf26a6a44f', 'sentry.is_localhost': True} E + where 'http.query' = SPANDATA.HTTP_QUERY

Stack Trace
tests/integrations/django/test_data_scrubbing.py:232: in test_span_http_query_data_collection
    assert SPANDATA.HTTP_QUERY not in root_span["attributes"]
E   AssertionError: assert 'http.query' not in {'sentry.origin': 'auto.http.django', 'sentry.trace_lifecycle': 'stream', 'sentry.segment.name.source': 'route', 'sentry.op': 'http.server', 'thread.id': '139962453894976', 'thread.name': 'MainThread', 'sentry.platform': 'python', 'process.command_args': ['/home/runner/work/sentry-python/sentry-python/.tox/py3.12-django-v4.2.30/lib/python3.12/site-packages/pytest/__main__.py', '-W', 'error::pytest.PytestUnraisableExceptionWarning', 'tests/integrations/django', '-o', 'junit_suite_name=py3.12-django-v4.2.30', '--junitxml=.junitxml-py3.12-django-v4.2.30'], 'sentry.sdk.integrations': ['argv', 'atexit', 'dedupe', 'django', 'excepthook', 'modules', 'stdlib', 'threading', 'unraisablehook'], 'http.request.method': 'GET', 'http.request.header.host': ['localhost'], 'network.protocol.name': 'http', 'server.address': 'localhost', 'server.port': 80, 'http.query': 'toy=tennisball&color=red&auth=%5BFiltered%5D', 'url.path': '/message', 'url.full': 'http://localhost/message?toy=tennisball&color=red&auth=%5BFiltered%5D', 'http.route': '/message', 'http.response.status_code': 200, 'sentry.segment.id': '8cdc58a81c3e6dd8', 'sentry.segment.name': '/message', 'sentry.sdk.name': 'sentry.python.django', 'sentry.sdk.version': '2.71.0', 'process.runtime.name': 'CPython', 'process.runtime.version': '3.12.14', 'sentry.environment': 'production', 'sentry.release': '7f391caa6aa1728afda27af9e7500edf26a6a44f', 'sentry.is_localhost': True}
E    +  where 'http.query' = SPANDATA.HTTP_QUERY

test_query_string_empty_legacy_emits_empty_string

File: tests.integrations.django.test_data_scrubbing
Suite: py3.12-django-v4.2.30
Error: tests/integrations/django/test_data_scrubbing.py:248: in test_query_string_empty_legacy_emits_empty_string assert event["request"]["query_string"] == "" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ E KeyError: 'query_string'

Stack Trace
tests/integrations/django/test_data_scrubbing.py:248: in test_query_string_empty_legacy_emits_empty_string
    assert event["request"]["query_string"] == ""
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
E   KeyError: 'query_string'

test_custom_error_handler_request_context

File: tests.integrations.django.test_basic
Suite: py3.12-django-v4.2.30
Error: AssertionError: assert {'url': 'http://localhost/404', 'method': 'POST', 'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}} == {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'query_string': '', 'url': 'http://localhost/404'}
 Common items: {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'url': 'http://localhost/404'}
 Right contains 1 more item: {'query_string': ''} Full diff: { + 'url': 'http://localhost/404',
 + 'method': 'POST', 'env': { 'SERVER_NAME': 'localhost', 'SERVER_PORT': '80', }, 'headers': { 'Host': 'localhost', }, - 'method': 'POST', - 'query_string': '', - 'url': 'http://localhost/404',
 }

Stack Trace
tests/integrations/django/test_basic.py:439: in test_custom_error_handler_request_context
    assert event["request"] == {
E   AssertionError: assert {'url': 'http://localhost/404', 'method': 'POST', 'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}} == {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'query_string': '', 'url': 'http://localhost/404'}
E     
E     Common items:
E     {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'},
E      'headers': {'Host': 'localhost'},
E      'method': 'POST',
E      'url': 'http://localhost/404'}
E     Right contains 1 more item:
E     {'query_string': ''}
E     
E     Full diff:
E       {
E     +     'url': 'http://localhost/404',
E     +     'method': 'POST',
E           'env': {
E               'SERVER_NAME': 'localhost',
E               'SERVER_PORT': '80',
E           },
E           'headers': {
E               'Host': 'localhost',
E           },
E     -     'method': 'POST',
E     -     'query_string': '',
E     -     'url': 'http://localhost/404',
E       }

test_query_string_data_collection[legacy_send_default_pii_true]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.12-django-v6.1.1
Error: tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection assert event["request"]["query_string"] == expected_query_string E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection
    assert event["request"]["query_string"] == expected_query_string
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_query_string_data_collection[legacy_send_default_pii_false]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.12-django-v6.1.1
Error: tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection assert event["request"]["query_string"] == expected_query_string E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection
    assert event["request"]["query_string"] == expected_query_string
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_span_http_query_data_collection[legacy_send_default_pii_true]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.12-django-v6.1.1
Error: tests/integrations/django/test_data_scrubbing.py:234: in test_span_http_query_data_collection assert root_span["attributes"][SPANDATA.HTTP_QUERY] == expected_query E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:234: in test_span_http_query_data_collection
    assert root_span["attributes"][SPANDATA.HTTP_QUERY] == expected_query
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_span_http_query_data_collection[legacy_send_default_pii_false]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.12-django-v6.1.1
Error: tests/integrations/django/test_data_scrubbing.py:232: in test_span_http_query_data_collection assert SPANDATA.HTTP_QUERY not in root_span["attributes"] E AssertionError: assert 'http.query' not in {'sentry.origin': 'auto.http.django', 'sentry.trace_lifecycle': 'stream', 'sentry.segment.name.source': 'route', 'sentry.op': 'http.server', 'thread.id': '140495768319808', 'thread.name': 'MainThread', 'sentry.platform': 'python', 'process.command_args': ['/home/runner/work/sentry-python/sentry-python/.tox/py3.12-django-v6.1.1/lib/python3.12/site-packages/pytest/main.py', '-W', 'error::pytest.PytestUnraisableExceptionWarning', 'tests/integrations/django', '-o', 'junit_suite_name=py3.12-django-v6.1.1', '--junitxml=.junitxml-py3.12-django-v6.1.1'], 'sentry.sdk.integrations': ['argv', 'atexit', 'dedupe', 'django', 'excepthook', 'modules', 'stdlib', 'threading', 'unraisablehook'], 'http.request.method': 'GET', 'http.request.header.host': ['localhost'], 'network.protocol.name': 'http', 'server.address': 'localhost', 'server.port': 80, 'http.query': 'toy=tennisball&color=red&auth=%5BFiltered%5D', 'url.path': '/message', 'url.full': 'http://localhost/message?toy=tennisball&color=red&auth=%5BFiltered%5D', 'http.route': '/message', 'http.response.status_code': 200, 'sentry.segment.id': '832e3a4b20cbbe3c', 'sentry.segment.name': '/message', 'sentry.sdk.name': 'sentry.python.django', 'sentry.sdk.version': '2.71.0', 'process.runtime.name': 'CPython', 'process.runtime.version': '3.12.14', 'sentry.environment': 'production', 'sentry.release': '7f391caa6aa1728afda27af9e7500edf26a6a44f', 'sentry.is_localhost': True} E + where 'http.query' = SPANDATA.HTTP_QUERY

Stack Trace
tests/integrations/django/test_data_scrubbing.py:232: in test_span_http_query_data_collection
    assert SPANDATA.HTTP_QUERY not in root_span["attributes"]
E   AssertionError: assert 'http.query' not in {'sentry.origin': 'auto.http.django', 'sentry.trace_lifecycle': 'stream', 'sentry.segment.name.source': 'route', 'sentry.op': 'http.server', 'thread.id': '140495768319808', 'thread.name': 'MainThread', 'sentry.platform': 'python', 'process.command_args': ['/home/runner/work/sentry-python/sentry-python/.tox/py3.12-django-v6.1.1/lib/python3.12/site-packages/pytest/__main__.py', '-W', 'error::pytest.PytestUnraisableExceptionWarning', 'tests/integrations/django', '-o', 'junit_suite_name=py3.12-django-v6.1.1', '--junitxml=.junitxml-py3.12-django-v6.1.1'], 'sentry.sdk.integrations': ['argv', 'atexit', 'dedupe', 'django', 'excepthook', 'modules', 'stdlib', 'threading', 'unraisablehook'], 'http.request.method': 'GET', 'http.request.header.host': ['localhost'], 'network.protocol.name': 'http', 'server.address': 'localhost', 'server.port': 80, 'http.query': 'toy=tennisball&color=red&auth=%5BFiltered%5D', 'url.path': '/message', 'url.full': 'http://localhost/message?toy=tennisball&color=red&auth=%5BFiltered%5D', 'http.route': '/message', 'http.response.status_code': 200, 'sentry.segment.id': '832e3a4b20cbbe3c', 'sentry.segment.name': '/message', 'sentry.sdk.name': 'sentry.python.django', 'sentry.sdk.version': '2.71.0', 'process.runtime.name': 'CPython', 'process.runtime.version': '3.12.14', 'sentry.environment': 'production', 'sentry.release': '7f391caa6aa1728afda27af9e7500edf26a6a44f', 'sentry.is_localhost': True}
E    +  where 'http.query' = SPANDATA.HTTP_QUERY

test_query_string_empty_legacy_emits_empty_string

File: tests.integrations.django.test_data_scrubbing
Suite: py3.12-django-v6.1.1
Error: tests/integrations/django/test_data_scrubbing.py:248: in test_query_string_empty_legacy_emits_empty_string assert event["request"]["query_string"] == "" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ E KeyError: 'query_string'

Stack Trace
tests/integrations/django/test_data_scrubbing.py:248: in test_query_string_empty_legacy_emits_empty_string
    assert event["request"]["query_string"] == ""
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
E   KeyError: 'query_string'

test_custom_error_handler_request_context

File: tests.integrations.django.test_basic
Suite: py3.12-django-v6.1.1
Error: AssertionError: assert {'url': 'http://localhost/404', 'method': 'POST', 'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}} == {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'query_string': '', 'url': 'http://localhost/404'}
 Common items: {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'url': 'http://localhost/404'}
 Right contains 1 more item: {'query_string': ''} Full diff: { + 'url': 'http://localhost/404',
 + 'method': 'POST', 'env': { 'SERVER_NAME': 'localhost', 'SERVER_PORT': '80', }, 'headers': { 'Host': 'localhost', }, - 'method': 'POST', - 'query_string': '', - 'url': 'http://localhost/404',
 }

Stack Trace
tests/integrations/django/test_basic.py:439: in test_custom_error_handler_request_context
    assert event["request"] == {
E   AssertionError: assert {'url': 'http://localhost/404', 'method': 'POST', 'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}} == {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'query_string': '', 'url': 'http://localhost/404'}
E     
E     Common items:
E     {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'},
E      'headers': {'Host': 'localhost'},
E      'method': 'POST',
E      'url': 'http://localhost/404'}
E     Right contains 1 more item:
E     {'query_string': ''}
E     
E     Full diff:
E       {
E     +     'url': 'http://localhost/404',
E     +     'method': 'POST',
E           'env': {
E               'SERVER_NAME': 'localhost',
E               'SERVER_PORT': '80',
E           },
E           'headers': {
E               'Host': 'localhost',
E           },
E     -     'method': 'POST',
E     -     'query_string': '',
E     -     'url': 'http://localhost/404',
E       }

test_query_string_data_collection[legacy_send_default_pii_true]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.13-django-v5.2.17
Error: tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection assert event["request"]["query_string"] == expected_query_string E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection
    assert event["request"]["query_string"] == expected_query_string
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_query_string_data_collection[legacy_send_default_pii_false]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.13-django-v5.2.17
Error: tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection assert event["request"]["query_string"] == expected_query_string E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection
    assert event["request"]["query_string"] == expected_query_string
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_span_http_query_data_collection[legacy_send_default_pii_true]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.13-django-v5.2.17
Error: tests/integrations/django/test_data_scrubbing.py:234: in test_span_http_query_data_collection assert root_span["attributes"][SPANDATA.HTTP_QUERY] == expected_query E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:234: in test_span_http_query_data_collection
    assert root_span["attributes"][SPANDATA.HTTP_QUERY] == expected_query
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_span_http_query_data_collection[legacy_send_default_pii_false]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.13-django-v5.2.17
Error: tests/integrations/django/test_data_scrubbing.py:232: in test_span_http_query_data_collection assert SPANDATA.HTTP_QUERY not in root_span["attributes"] E AssertionError: assert 'http.query' not in {'sentry.origin': 'auto.http.django', 'sentry.trace_lifecycle': 'stream', 'sentry.segment.name.source': 'route', 'sentry.op': 'http.server', 'thread.id': '140518498801472', 'thread.name': 'MainThread', 'sentry.platform': 'python', 'process.command_args': ['/home/runner/work/sentry-python/sentry-python/.tox/py3.13-django-v5.2.17/lib/python3.13/site-packages/pytest/main.py', '-W', 'error::pytest.PytestUnraisableExceptionWarning', 'tests/integrations/django', '-o', 'junit_suite_name=py3.13-django-v5.2.17', '--junitxml=.junitxml-py3.13-django-v5.2.17'], 'sentry.sdk.integrations': ['argv', 'atexit', 'dedupe', 'django', 'excepthook', 'modules', 'stdlib', 'threading', 'unraisablehook'], 'http.request.method': 'GET', 'http.request.header.host': ['localhost'], 'network.protocol.name': 'http', 'server.address': 'localhost', 'server.port': 80, 'http.query': 'toy=tennisball&color=red&auth=%5BFiltered%5D', 'url.path': '/message', 'url.full': 'http://localhost/message?toy=tennisball&color=red&auth=%5BFiltered%5D', 'http.route': '/message', 'http.response.status_code': 200, 'sentry.segment.id': '98b8d09849d2f0c4', 'sentry.segment.name': '/message', 'sentry.sdk.name': 'sentry.python.django', 'sentry.sdk.version': '2.71.0', 'process.runtime.name': 'CPython', 'process.runtime.version': '3.13.15', 'sentry.environment': 'production', 'sentry.release': '7f391caa6aa1728afda27af9e7500edf26a6a44f', 'sentry.is_localhost': True} E + where 'http.query' = SPANDATA.HTTP_QUERY

Stack Trace
tests/integrations/django/test_data_scrubbing.py:232: in test_span_http_query_data_collection
    assert SPANDATA.HTTP_QUERY not in root_span["attributes"]
E   AssertionError: assert 'http.query' not in {'sentry.origin': 'auto.http.django', 'sentry.trace_lifecycle': 'stream', 'sentry.segment.name.source': 'route', 'sentry.op': 'http.server', 'thread.id': '140518498801472', 'thread.name': 'MainThread', 'sentry.platform': 'python', 'process.command_args': ['/home/runner/work/sentry-python/sentry-python/.tox/py3.13-django-v5.2.17/lib/python3.13/site-packages/pytest/__main__.py', '-W', 'error::pytest.PytestUnraisableExceptionWarning', 'tests/integrations/django', '-o', 'junit_suite_name=py3.13-django-v5.2.17', '--junitxml=.junitxml-py3.13-django-v5.2.17'], 'sentry.sdk.integrations': ['argv', 'atexit', 'dedupe', 'django', 'excepthook', 'modules', 'stdlib', 'threading', 'unraisablehook'], 'http.request.method': 'GET', 'http.request.header.host': ['localhost'], 'network.protocol.name': 'http', 'server.address': 'localhost', 'server.port': 80, 'http.query': 'toy=tennisball&color=red&auth=%5BFiltered%5D', 'url.path': '/message', 'url.full': 'http://localhost/message?toy=tennisball&color=red&auth=%5BFiltered%5D', 'http.route': '/message', 'http.response.status_code': 200, 'sentry.segment.id': '98b8d09849d2f0c4', 'sentry.segment.name': '/message', 'sentry.sdk.name': 'sentry.python.django', 'sentry.sdk.version': '2.71.0', 'process.runtime.name': 'CPython', 'process.runtime.version': '3.13.15', 'sentry.environment': 'production', 'sentry.release': '7f391caa6aa1728afda27af9e7500edf26a6a44f', 'sentry.is_localhost': True}
E    +  where 'http.query' = SPANDATA.HTTP_QUERY

test_query_string_empty_legacy_emits_empty_string

File: tests.integrations.django.test_data_scrubbing
Suite: py3.13-django-v5.2.17
Error: tests/integrations/django/test_data_scrubbing.py:248: in test_query_string_empty_legacy_emits_empty_string assert event["request"]["query_string"] == "" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ E KeyError: 'query_string'

Stack Trace
tests/integrations/django/test_data_scrubbing.py:248: in test_query_string_empty_legacy_emits_empty_string
    assert event["request"]["query_string"] == ""
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
E   KeyError: 'query_string'

test_custom_error_handler_request_context

File: tests.integrations.django.test_basic
Suite: py3.13-django-v5.2.17
Error: AssertionError: assert {'url': 'http://localhost/404', 'method': 'POST', 'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}} == {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'query_string': '', 'url': 'http://localhost/404'}
 Common items: {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'url': 'http://localhost/404'}
 Right contains 1 more item: {'query_string': ''} Full diff: { + 'url': 'http://localhost/404',
 + 'method': 'POST', 'env': { 'SERVER_NAME': 'localhost', 'SERVER_PORT': '80', }, 'headers': { 'Host': 'localhost', }, - 'method': 'POST', - 'query_string': '', - 'url': 'http://localhost/404',
 }

Stack Trace
tests/integrations/django/test_basic.py:439: in test_custom_error_handler_request_context
    assert event["request"] == {
E   AssertionError: assert {'url': 'http://localhost/404', 'method': 'POST', 'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}} == {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'query_string': '', 'url': 'http://localhost/404'}
E     
E     Common items:
E     {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'},
E      'headers': {'Host': 'localhost'},
E      'method': 'POST',
E      'url': 'http://localhost/404'}
E     Right contains 1 more item:
E     {'query_string': ''}
E     
E     Full diff:
E       {
E     +     'url': 'http://localhost/404',
E     +     'method': 'POST',
E           'env': {
E               'SERVER_NAME': 'localhost',
E               'SERVER_PORT': '80',
E           },
E           'headers': {
E               'Host': 'localhost',
E           },
E     -     'method': 'POST',
E     -     'query_string': '',
E     -     'url': 'http://localhost/404',
E       }

test_query_string_data_collection[legacy_send_default_pii_true]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.13-django-v6.1.1
Error: tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection assert event["request"]["query_string"] == expected_query_string E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection
    assert event["request"]["query_string"] == expected_query_string
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_query_string_data_collection[legacy_send_default_pii_false]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.13-django-v6.1.1
Error: tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection assert event["request"]["query_string"] == expected_query_string E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection
    assert event["request"]["query_string"] == expected_query_string
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_span_http_query_data_collection[legacy_send_default_pii_true]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.13-django-v6.1.1
Error: tests/integrations/django/test_data_scrubbing.py:234: in test_span_http_query_data_collection assert root_span["attributes"][SPANDATA.HTTP_QUERY] == expected_query E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:234: in test_span_http_query_data_collection
    assert root_span["attributes"][SPANDATA.HTTP_QUERY] == expected_query
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_span_http_query_data_collection[legacy_send_default_pii_false]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.13-django-v6.1.1
Error: tests/integrations/django/test_data_scrubbing.py:232: in test_span_http_query_data_collection assert SPANDATA.HTTP_QUERY not in root_span["attributes"] E AssertionError: assert 'http.query' not in {'sentry.origin': 'auto.http.django', 'sentry.trace_lifecycle': 'stream', 'sentry.segment.name.source': 'route', 'sentry.op': 'http.server', 'thread.id': '140585585104704', 'thread.name': 'MainThread', 'sentry.platform': 'python', 'process.command_args': ['/home/runner/work/sentry-python/sentry-python/.tox/py3.13-django-v6.1.1/lib/python3.13/site-packages/pytest/main.py', '-W', 'error::pytest.PytestUnraisableExceptionWarning', 'tests/integrations/django', '-o', 'junit_suite_name=py3.13-django-v6.1.1', '--junitxml=.junitxml-py3.13-django-v6.1.1'], 'sentry.sdk.integrations': ['argv', 'atexit', 'dedupe', 'django', 'excepthook', 'modules', 'stdlib', 'threading', 'unraisablehook'], 'http.request.method': 'GET', 'http.request.header.host': ['localhost'], 'network.protocol.name': 'http', 'server.address': 'localhost', 'server.port': 80, 'http.query': 'toy=tennisball&color=red&auth=%5BFiltered%5D', 'url.path': '/message', 'url.full': 'http://localhost/message?toy=tennisball&color=red&auth=%5BFiltered%5D', 'http.route': '/message', 'http.response.status_code': 200, 'sentry.segment.id': '9179e25b7f380c29', 'sentry.segment.name': '/message', 'sentry.sdk.name': 'sentry.python.django', 'sentry.sdk.version': '2.71.0', 'process.runtime.name': 'CPython', 'process.runtime.version': '3.13.15', 'sentry.environment': 'production', 'sentry.release': '7f391caa6aa1728afda27af9e7500edf26a6a44f', 'sentry.is_localhost': True} E + where 'http.query' = SPANDATA.HTTP_QUERY

Stack Trace
tests/integrations/django/test_data_scrubbing.py:232: in test_span_http_query_data_collection
    assert SPANDATA.HTTP_QUERY not in root_span["attributes"]
E   AssertionError: assert 'http.query' not in {'sentry.origin': 'auto.http.django', 'sentry.trace_lifecycle': 'stream', 'sentry.segment.name.source': 'route', 'sentry.op': 'http.server', 'thread.id': '140585585104704', 'thread.name': 'MainThread', 'sentry.platform': 'python', 'process.command_args': ['/home/runner/work/sentry-python/sentry-python/.tox/py3.13-django-v6.1.1/lib/python3.13/site-packages/pytest/__main__.py', '-W', 'error::pytest.PytestUnraisableExceptionWarning', 'tests/integrations/django', '-o', 'junit_suite_name=py3.13-django-v6.1.1', '--junitxml=.junitxml-py3.13-django-v6.1.1'], 'sentry.sdk.integrations': ['argv', 'atexit', 'dedupe', 'django', 'excepthook', 'modules', 'stdlib', 'threading', 'unraisablehook'], 'http.request.method': 'GET', 'http.request.header.host': ['localhost'], 'network.protocol.name': 'http', 'server.address': 'localhost', 'server.port': 80, 'http.query': 'toy=tennisball&color=red&auth=%5BFiltered%5D', 'url.path': '/message', 'url.full': 'http://localhost/message?toy=tennisball&color=red&auth=%5BFiltered%5D', 'http.route': '/message', 'http.response.status_code': 200, 'sentry.segment.id': '9179e25b7f380c29', 'sentry.segment.name': '/message', 'sentry.sdk.name': 'sentry.python.django', 'sentry.sdk.version': '2.71.0', 'process.runtime.name': 'CPython', 'process.runtime.version': '3.13.15', 'sentry.environment': 'production', 'sentry.release': '7f391caa6aa1728afda27af9e7500edf26a6a44f', 'sentry.is_localhost': True}
E    +  where 'http.query' = SPANDATA.HTTP_QUERY

test_query_string_empty_legacy_emits_empty_string

File: tests.integrations.django.test_data_scrubbing
Suite: py3.13-django-v6.1.1
Error: tests/integrations/django/test_data_scrubbing.py:248: in test_query_string_empty_legacy_emits_empty_string assert event["request"]["query_string"] == "" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ E KeyError: 'query_string'

Stack Trace
tests/integrations/django/test_data_scrubbing.py:248: in test_query_string_empty_legacy_emits_empty_string
    assert event["request"]["query_string"] == ""
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
E   KeyError: 'query_string'

test_custom_error_handler_request_context

File: tests.integrations.django.test_basic
Suite: py3.13-django-v6.1.1
Error: AssertionError: assert {'url': 'http://localhost/404', 'method': 'POST', 'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}} == {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'query_string': '', 'url': 'http://localhost/404'}
 Common items: {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'url': 'http://localhost/404'}
 Right contains 1 more item: {'query_string': ''} Full diff: { + 'url': 'http://localhost/404',
 + 'method': 'POST', 'env': { 'SERVER_NAME': 'localhost', 'SERVER_PORT': '80', }, 'headers': { 'Host': 'localhost', }, - 'method': 'POST', - 'query_string': '', - 'url': 'http://localhost/404',
 }

Stack Trace
tests/integrations/django/test_basic.py:439: in test_custom_error_handler_request_context
    assert event["request"] == {
E   AssertionError: assert {'url': 'http://localhost/404', 'method': 'POST', 'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}} == {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'query_string': '', 'url': 'http://localhost/404'}
E     
E     Common items:
E     {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'},
E      'headers': {'Host': 'localhost'},
E      'method': 'POST',
E      'url': 'http://localhost/404'}
E     Right contains 1 more item:
E     {'query_string': ''}
E     
E     Full diff:
E       {
E     +     'url': 'http://localhost/404',
E     +     'method': 'POST',
E           'env': {
E               'SERVER_NAME': 'localhost',
E               'SERVER_PORT': '80',
E           },
E           'headers': {
E               'Host': 'localhost',
E           },
E     -     'method': 'POST',
E     -     'query_string': '',
E     -     'url': 'http://localhost/404',
E       }

test_query_string_data_collection[legacy_send_default_pii_true]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.14-django-v5.2.17
Error: tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection assert event["request"]["query_string"] == expected_query_string E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection
    assert event["request"]["query_string"] == expected_query_string
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_query_string_data_collection[legacy_send_default_pii_false]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.14-django-v5.2.17
Error: tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection assert event["request"]["query_string"] == expected_query_string E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection
    assert event["request"]["query_string"] == expected_query_string
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_span_http_query_data_collection[legacy_send_default_pii_true]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.14-django-v5.2.17
Error: tests/integrations/django/test_data_scrubbing.py:234: in test_span_http_query_data_collection assert root_span["attributes"][SPANDATA.HTTP_QUERY] == expected_query E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:234: in test_span_http_query_data_collection
    assert root_span["attributes"][SPANDATA.HTTP_QUERY] == expected_query
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_span_http_query_data_collection[legacy_send_default_pii_false]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.14-django-v5.2.17
Error: tests/integrations/django/test_data_scrubbing.py:232: in test_span_http_query_data_collection assert SPANDATA.HTTP_QUERY not in root_span["attributes"] E AssertionError: assert 'http.query' not in {'sentry.origin': 'auto.http.django', 'sentry.trace_lifecycle': 'stream', 'sentry.segment.name.source': 'route', 'sentry.op': 'http.server', 'thread.id': '140620774479680', 'thread.name': 'MainThread', 'sentry.platform': 'python', 'process.command_args': ['/home/runner/work/sentry-python/sentry-python/.tox/py3.14-django-v5.2.17/lib/python3.14/site-packages/pytest/main.py', '-W', 'error::pytest.PytestUnraisableExceptionWarning', 'tests/integrations/django', '-o', 'junit_suite_name=py3.14-django-v5.2.17', '--junitxml=.junitxml-py3.14-django-v5.2.17'], 'sentry.sdk.integrations': ['argv', 'atexit', 'dedupe', 'django', 'excepthook', 'modules', 'stdlib', 'threading', 'unraisablehook'], 'http.request.method': 'GET', 'http.request.header.host': ['localhost'], 'network.protocol.name': 'http', 'server.address': 'localhost', 'server.port': 80, 'http.query': 'toy=tennisball&color=red&auth=%5BFiltered%5D', 'url.path': '/message', 'url.full': 'http://localhost/message?toy=tennisball&color=red&auth=%5BFiltered%5D', 'http.route': '/message', 'http.response.status_code': 200, 'sentry.segment.id': '9b1c33de5415f519', 'sentry.segment.name': '/message', 'sentry.sdk.name': 'sentry.python.django', 'sentry.sdk.version': '2.71.0', 'process.runtime.name': 'CPython', 'process.runtime.version': '3.14.8', 'sentry.environment': 'production', 'sentry.release': '7f391caa6aa1728afda27af9e7500edf26a6a44f', 'sentry.is_localhost': True} E + where 'http.query' = SPANDATA.HTTP_QUERY

Stack Trace
tests/integrations/django/test_data_scrubbing.py:232: in test_span_http_query_data_collection
    assert SPANDATA.HTTP_QUERY not in root_span["attributes"]
E   AssertionError: assert 'http.query' not in {'sentry.origin': 'auto.http.django', 'sentry.trace_lifecycle': 'stream', 'sentry.segment.name.source': 'route', 'sentry.op': 'http.server', 'thread.id': '140620774479680', 'thread.name': 'MainThread', 'sentry.platform': 'python', 'process.command_args': ['/home/runner/work/sentry-python/sentry-python/.tox/py3.14-django-v5.2.17/lib/python3.14/site-packages/pytest/__main__.py', '-W', 'error::pytest.PytestUnraisableExceptionWarning', 'tests/integrations/django', '-o', 'junit_suite_name=py3.14-django-v5.2.17', '--junitxml=.junitxml-py3.14-django-v5.2.17'], 'sentry.sdk.integrations': ['argv', 'atexit', 'dedupe', 'django', 'excepthook', 'modules', 'stdlib', 'threading', 'unraisablehook'], 'http.request.method': 'GET', 'http.request.header.host': ['localhost'], 'network.protocol.name': 'http', 'server.address': 'localhost', 'server.port': 80, 'http.query': 'toy=tennisball&color=red&auth=%5BFiltered%5D', 'url.path': '/message', 'url.full': 'http://localhost/message?toy=tennisball&color=red&auth=%5BFiltered%5D', 'http.route': '/message', 'http.response.status_code': 200, 'sentry.segment.id': '9b1c33de5415f519', 'sentry.segment.name': '/message', 'sentry.sdk.name': 'sentry.python.django', 'sentry.sdk.version': '2.71.0', 'process.runtime.name': 'CPython', 'process.runtime.version': '3.14.8', 'sentry.environment': 'production', 'sentry.release': '7f391caa6aa1728afda27af9e7500edf26a6a44f', 'sentry.is_localhost': True}
E    +  where 'http.query' = SPANDATA.HTTP_QUERY

test_query_string_empty_legacy_emits_empty_string

File: tests.integrations.django.test_data_scrubbing
Suite: py3.14-django-v5.2.17
Error: tests/integrations/django/test_data_scrubbing.py:248: in test_query_string_empty_legacy_emits_empty_string assert event["request"]["query_string"] == "" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ E KeyError: 'query_string'

Stack Trace
tests/integrations/django/test_data_scrubbing.py:248: in test_query_string_empty_legacy_emits_empty_string
    assert event["request"]["query_string"] == ""
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
E   KeyError: 'query_string'

test_custom_error_handler_request_context

File: tests.integrations.django.test_basic
Suite: py3.14-django-v5.2.17
Error: AssertionError: assert {'url': 'http://localhost/404', 'method': 'POST', 'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}} == {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'query_string': '', 'url': 'http://localhost/404'}
 Common items: {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'url': 'http://localhost/404'}
 Right contains 1 more item: {'query_string': ''} Full diff: { + 'url': 'http://localhost/404',
 + 'method': 'POST', 'env': { 'SERVER_NAME': 'localhost', 'SERVER_PORT': '80', }, 'headers': { 'Host': 'localhost', }, - 'method': 'POST', - 'query_string': '', - 'url': 'http://localhost/404',
 }

Stack Trace
tests/integrations/django/test_basic.py:439: in test_custom_error_handler_request_context
    assert event["request"] == {
E   AssertionError: assert {'url': 'http://localhost/404', 'method': 'POST', 'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}} == {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'query_string': '', 'url': 'http://localhost/404'}
E     
E     Common items:
E     {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'},
E      'headers': {'Host': 'localhost'},
E      'method': 'POST',
E      'url': 'http://localhost/404'}
E     Right contains 1 more item:
E     {'query_string': ''}
E     
E     Full diff:
E       {
E     +     'url': 'http://localhost/404',
E     +     'method': 'POST',
E           'env': {
E               'SERVER_NAME': 'localhost',
E               'SERVER_PORT': '80',
E           },
E           'headers': {
E               'Host': 'localhost',
E           },
E     -     'method': 'POST',
E     -     'query_string': '',
E     -     'url': 'http://localhost/404',
E       }

test_query_string_data_collection[legacy_send_default_pii_true]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.14-django-v6.1.1
Error: tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection assert event["request"]["query_string"] == expected_query_string E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection
    assert event["request"]["query_string"] == expected_query_string
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_query_string_data_collection[legacy_send_default_pii_false]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.14-django-v6.1.1
Error: tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection assert event["request"]["query_string"] == expected_query_string E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection
    assert event["request"]["query_string"] == expected_query_string
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_span_http_query_data_collection[legacy_send_default_pii_true]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.14-django-v6.1.1
Error: tests/integrations/django/test_data_scrubbing.py:234: in test_span_http_query_data_collection assert root_span["attributes"][SPANDATA.HTTP_QUERY] == expected_query E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:234: in test_span_http_query_data_collection
    assert root_span["attributes"][SPANDATA.HTTP_QUERY] == expected_query
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_span_http_query_data_collection[legacy_send_default_pii_false]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.14-django-v6.1.1
Error: tests/integrations/django/test_data_scrubbing.py:232: in test_span_http_query_data_collection assert SPANDATA.HTTP_QUERY not in root_span["attributes"] E AssertionError: assert 'http.query' not in {'sentry.origin': 'auto.http.django', 'sentry.trace_lifecycle': 'stream', 'sentry.segment.name.source': 'route', 'sentry.op': 'http.server', 'thread.id': '139631633332032', 'thread.name': 'MainThread', 'sentry.platform': 'python', 'process.command_args': ['/home/runner/work/sentry-python/sentry-python/.tox/py3.14-django-v6.1.1/lib/python3.14/site-packages/pytest/main.py', '-W', 'error::pytest.PytestUnraisableExceptionWarning', 'tests/integrations/django', '-o', 'junit_suite_name=py3.14-django-v6.1.1', '--junitxml=.junitxml-py3.14-django-v6.1.1'], 'sentry.sdk.integrations': ['argv', 'atexit', 'dedupe', 'django', 'excepthook', 'modules', 'stdlib', 'threading', 'unraisablehook'], 'http.request.method': 'GET', 'http.request.header.host': ['localhost'], 'network.protocol.name': 'http', 'server.address': 'localhost', 'server.port': 80, 'http.query': 'toy=tennisball&color=red&auth=%5BFiltered%5D', 'url.path': '/message', 'url.full': 'http://localhost/message?toy=tennisball&color=red&auth=%5BFiltered%5D', 'http.route': '/message', 'http.response.status_code': 200, 'sentry.segment.id': 'a193a0c7a51bb60c', 'sentry.segment.name': '/message', 'sentry.sdk.name': 'sentry.python.django', 'sentry.sdk.version': '2.71.0', 'process.runtime.name': 'CPython', 'process.runtime.version': '3.14.8', 'sentry.environment': 'production', 'sentry.release': '7f391caa6aa1728afda27af9e7500edf26a6a44f', 'sentry.is_localhost': True} E + where 'http.query' = SPANDATA.HTTP_QUERY

Stack Trace
tests/integrations/django/test_data_scrubbing.py:232: in test_span_http_query_data_collection
    assert SPANDATA.HTTP_QUERY not in root_span["attributes"]
E   AssertionError: assert 'http.query' not in {'sentry.origin': 'auto.http.django', 'sentry.trace_lifecycle': 'stream', 'sentry.segment.name.source': 'route', 'sentry.op': 'http.server', 'thread.id': '139631633332032', 'thread.name': 'MainThread', 'sentry.platform': 'python', 'process.command_args': ['/home/runner/work/sentry-python/sentry-python/.tox/py3.14-django-v6.1.1/lib/python3.14/site-packages/pytest/__main__.py', '-W', 'error::pytest.PytestUnraisableExceptionWarning', 'tests/integrations/django', '-o', 'junit_suite_name=py3.14-django-v6.1.1', '--junitxml=.junitxml-py3.14-django-v6.1.1'], 'sentry.sdk.integrations': ['argv', 'atexit', 'dedupe', 'django', 'excepthook', 'modules', 'stdlib', 'threading', 'unraisablehook'], 'http.request.method': 'GET', 'http.request.header.host': ['localhost'], 'network.protocol.name': 'http', 'server.address': 'localhost', 'server.port': 80, 'http.query': 'toy=tennisball&color=red&auth=%5BFiltered%5D', 'url.path': '/message', 'url.full': 'http://localhost/message?toy=tennisball&color=red&auth=%5BFiltered%5D', 'http.route': '/message', 'http.response.status_code': 200, 'sentry.segment.id': 'a193a0c7a51bb60c', 'sentry.segment.name': '/message', 'sentry.sdk.name': 'sentry.python.django', 'sentry.sdk.version': '2.71.0', 'process.runtime.name': 'CPython', 'process.runtime.version': '3.14.8', 'sentry.environment': 'production', 'sentry.release': '7f391caa6aa1728afda27af9e7500edf26a6a44f', 'sentry.is_localhost': True}
E    +  where 'http.query' = SPANDATA.HTTP_QUERY

test_query_string_empty_legacy_emits_empty_string

File: tests.integrations.django.test_data_scrubbing
Suite: py3.14-django-v6.1.1
Error: tests/integrations/django/test_data_scrubbing.py:248: in test_query_string_empty_legacy_emits_empty_string assert event["request"]["query_string"] == "" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ E KeyError: 'query_string'

Stack Trace
tests/integrations/django/test_data_scrubbing.py:248: in test_query_string_empty_legacy_emits_empty_string
    assert event["request"]["query_string"] == ""
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
E   KeyError: 'query_string'

test_custom_error_handler_request_context

File: tests.integrations.django.test_basic
Suite: py3.14-django-v6.1.1
Error: AssertionError: assert {'url': 'http://localhost/404', 'method': 'POST', 'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}} == {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'query_string': '', 'url': 'http://localhost/404'}
 Common items: {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'url': 'http://localhost/404'}
 Right contains 1 more item: {'query_string': ''} Full diff: { + 'url': 'http://localhost/404',
 + 'method': 'POST', 'env': { 'SERVER_NAME': 'localhost', 'SERVER_PORT': '80', }, 'headers': { 'Host': 'localhost', }, - 'method': 'POST', - 'query_string': '', - 'url': 'http://localhost/404',
 }

Stack Trace
tests/integrations/django/test_basic.py:439: in test_custom_error_handler_request_context
    assert event["request"] == {
E   AssertionError: assert {'url': 'http://localhost/404', 'method': 'POST', 'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}} == {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'query_string': '', 'url': 'http://localhost/404'}
E     
E     Common items:
E     {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'},
E      'headers': {'Host': 'localhost'},
E      'method': 'POST',
E      'url': 'http://localhost/404'}
E     Right contains 1 more item:
E     {'query_string': ''}
E     
E     Full diff:
E       {
E     +     'url': 'http://localhost/404',
E     +     'method': 'POST',
E           'env': {
E               'SERVER_NAME': 'localhost',
E               'SERVER_PORT': '80',
E           },
E           'headers': {
E               'Host': 'localhost',
E           },
E     -     'method': 'POST',
E     -     'query_string': '',
E     -     'url': 'http://localhost/404',
E       }

test_query_string_data_collection[legacy_send_default_pii_true]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.14t-django-v5.2.17
Error: tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection assert event["request"]["query_string"] == expected_query_string E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection
    assert event["request"]["query_string"] == expected_query_string
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_query_string_data_collection[legacy_send_default_pii_false]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.14t-django-v5.2.17
Error: tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection assert event["request"]["query_string"] == expected_query_string E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection
    assert event["request"]["query_string"] == expected_query_string
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_span_http_query_data_collection[legacy_send_default_pii_true]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.14t-django-v5.2.17
Error: tests/integrations/django/test_data_scrubbing.py:234: in test_span_http_query_data_collection assert root_span["attributes"][SPANDATA.HTTP_QUERY] == expected_query E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:234: in test_span_http_query_data_collection
    assert root_span["attributes"][SPANDATA.HTTP_QUERY] == expected_query
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_span_http_query_data_collection[legacy_send_default_pii_false]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.14t-django-v5.2.17
Error: tests/integrations/django/test_data_scrubbing.py:232: in test_span_http_query_data_collection assert SPANDATA.HTTP_QUERY not in root_span["attributes"] E AssertionError: assert 'http.query' not in {'sentry.origin': 'auto.http.django', 'sentry.trace_lifecycle': 'stream', 'sentry.segment.name.source': 'route', 'sentry.op': 'http.server', 'thread.id': '140666967525184', 'thread.name': 'MainThread', 'sentry.platform': 'python', 'process.command_args': ['/home/runner/work/sentry-python/sentry-python/.tox/py3.14t-django-v5.2.17/lib/python3.14t/site-packages/pytest/main.py', '-W', 'error::pytest.PytestUnraisableExceptionWarning', 'tests/integrations/django', '-o', 'junit_suite_name=py3.14t-django-v5.2.17', '--junitxml=.junitxml-py3.14t-django-v5.2.17'], 'sentry.sdk.integrations': ['argv', 'atexit', 'dedupe', 'django', 'excepthook', 'modules', 'stdlib', 'threading', 'unraisablehook'], 'http.request.method': 'GET', 'http.request.header.host': ['localhost'], 'network.protocol.name': 'http', 'server.address': 'localhost', 'server.port': 80, 'http.query': 'toy=tennisball&color=red&auth=%5BFiltered%5D', 'url.path': '/message', 'url.full': 'http://localhost/message?toy=tennisball&color=red&auth=%5BFiltered%5D', 'http.route': '/message', 'http.response.status_code': 200, 'sentry.segment.id': '85b25e071ae9e15f', 'sentry.segment.name': '/message', 'sentry.sdk.name': 'sentry.python.django', 'sentry.sdk.version': '2.71.0', 'process.runtime.name': 'CPython', 'process.runtime.version': '3.14.7', 'sentry.environment': 'production', 'sentry.release': '7f391caa6aa1728afda27af9e7500edf26a6a44f', 'sentry.is_localhost': True} E + where 'http.query' = SPANDATA.HTTP_QUERY

Stack Trace
tests/integrations/django/test_data_scrubbing.py:232: in test_span_http_query_data_collection
    assert SPANDATA.HTTP_QUERY not in root_span["attributes"]
E   AssertionError: assert 'http.query' not in {'sentry.origin': 'auto.http.django', 'sentry.trace_lifecycle': 'stream', 'sentry.segment.name.source': 'route', 'sentry.op': 'http.server', 'thread.id': '140666967525184', 'thread.name': 'MainThread', 'sentry.platform': 'python', 'process.command_args': ['/home/runner/work/sentry-python/sentry-python/.tox/py3.14t-django-v5.2.17/lib/python3.14t/site-packages/pytest/__main__.py', '-W', 'error::pytest.PytestUnraisableExceptionWarning', 'tests/integrations/django', '-o', 'junit_suite_name=py3.14t-django-v5.2.17', '--junitxml=.junitxml-py3.14t-django-v5.2.17'], 'sentry.sdk.integrations': ['argv', 'atexit', 'dedupe', 'django', 'excepthook', 'modules', 'stdlib', 'threading', 'unraisablehook'], 'http.request.method': 'GET', 'http.request.header.host': ['localhost'], 'network.protocol.name': 'http', 'server.address': 'localhost', 'server.port': 80, 'http.query': 'toy=tennisball&color=red&auth=%5BFiltered%5D', 'url.path': '/message', 'url.full': 'http://localhost/message?toy=tennisball&color=red&auth=%5BFiltered%5D', 'http.route': '/message', 'http.response.status_code': 200, 'sentry.segment.id': '85b25e071ae9e15f', 'sentry.segment.name': '/message', 'sentry.sdk.name': 'sentry.python.django', 'sentry.sdk.version': '2.71.0', 'process.runtime.name': 'CPython', 'process.runtime.version': '3.14.7', 'sentry.environment': 'production', 'sentry.release': '7f391caa6aa1728afda27af9e7500edf26a6a44f', 'sentry.is_localhost': True}
E    +  where 'http.query' = SPANDATA.HTTP_QUERY

test_query_string_empty_legacy_emits_empty_string

File: tests.integrations.django.test_data_scrubbing
Suite: py3.14t-django-v5.2.17
Error: tests/integrations/django/test_data_scrubbing.py:248: in test_query_string_empty_legacy_emits_empty_string assert event["request"]["query_string"] == "" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ E KeyError: 'query_string'

Stack Trace
tests/integrations/django/test_data_scrubbing.py:248: in test_query_string_empty_legacy_emits_empty_string
    assert event["request"]["query_string"] == ""
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
E   KeyError: 'query_string'

test_custom_error_handler_request_context

File: tests.integrations.django.test_basic
Suite: py3.14t-django-v5.2.17
Error: AssertionError: assert {'url': 'http://localhost/404', 'method': 'POST', 'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}} == {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'query_string': '', 'url': 'http://localhost/404'}
 Common items: {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'url': 'http://localhost/404'}
 Right contains 1 more item: {'query_string': ''} Full diff: { + 'url': 'http://localhost/404',
 + 'method': 'POST', 'env': { 'SERVER_NAME': 'localhost', 'SERVER_PORT': '80', }, 'headers': { 'Host': 'localhost', }, - 'method': 'POST', - 'query_string': '', - 'url': 'http://localhost/404',
 }

Stack Trace
tests/integrations/django/test_basic.py:439: in test_custom_error_handler_request_context
    assert event["request"] == {
E   AssertionError: assert {'url': 'http://localhost/404', 'method': 'POST', 'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}} == {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'query_string': '', 'url': 'http://localhost/404'}
E     
E     Common items:
E     {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'},
E      'headers': {'Host': 'localhost'},
E      'method': 'POST',
E      'url': 'http://localhost/404'}
E     Right contains 1 more item:
E     {'query_string': ''}
E     
E     Full diff:
E       {
E     +     'url': 'http://localhost/404',
E     +     'method': 'POST',
E           'env': {
E               'SERVER_NAME': 'localhost',
E               'SERVER_PORT': '80',
E           },
E           'headers': {
E               'Host': 'localhost',
E           },
E     -     'method': 'POST',
E     -     'query_string': '',
E     -     'url': 'http://localhost/404',
E       }

test_query_string_data_collection[legacy_send_default_pii_true]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.14t-django-v6.1.1
Error: tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection assert event["request"]["query_string"] == expected_query_string E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection
    assert event["request"]["query_string"] == expected_query_string
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_query_string_data_collection[legacy_send_default_pii_false]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.14t-django-v6.1.1
Error: tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection assert event["request"]["query_string"] == expected_query_string E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection
    assert event["request"]["query_string"] == expected_query_string
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_span_http_query_data_collection[legacy_send_default_pii_true]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.14t-django-v6.1.1
Error: tests/integrations/django/test_data_scrubbing.py:234: in test_span_http_query_data_collection assert root_span["attributes"][SPANDATA.HTTP_QUERY] == expected_query E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:234: in test_span_http_query_data_collection
    assert root_span["attributes"][SPANDATA.HTTP_QUERY] == expected_query
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_span_http_query_data_collection[legacy_send_default_pii_false]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.14t-django-v6.1.1
Error: tests/integrations/django/test_data_scrubbing.py:232: in test_span_http_query_data_collection assert SPANDATA.HTTP_QUERY not in root_span["attributes"] E AssertionError: assert 'http.query' not in {'sentry.origin': 'auto.http.django', 'sentry.trace_lifecycle': 'stream', 'sentry.segment.name.source': 'route', 'sentry.op': 'http.server', 'thread.id': '140285609891648', 'thread.name': 'MainThread', 'sentry.platform': 'python', 'process.command_args': ['/home/runner/work/sentry-python/sentry-python/.tox/py3.14t-django-v6.1.1/lib/python3.14t/site-packages/pytest/main.py', '-W', 'error::pytest.PytestUnraisableExceptionWarning', 'tests/integrations/django', '-o', 'junit_suite_name=py3.14t-django-v6.1.1', '--junitxml=.junitxml-py3.14t-django-v6.1.1'], 'sentry.sdk.integrations': ['argv', 'atexit', 'dedupe', 'django', 'excepthook', 'modules', 'stdlib', 'threading', 'unraisablehook'], 'http.request.method': 'GET', 'http.request.header.host': ['localhost'], 'network.protocol.name': 'http', 'server.address': 'localhost', 'server.port': 80, 'http.query': 'toy=tennisball&color=red&auth=%5BFiltered%5D', 'url.path': '/message', 'url.full': 'http://localhost/message?toy=tennisball&color=red&auth=%5BFiltered%5D', 'http.route': '/message', 'http.response.status_code': 200, 'sentry.segment.id': 'a277ef484fa2088b', 'sentry.segment.name': '/message', 'sentry.sdk.name': 'sentry.python.django', 'sentry.sdk.version': '2.71.0', 'process.runtime.name': 'CPython', 'process.runtime.version': '3.14.7', 'sentry.environment': 'production', 'sentry.release': '7f391caa6aa1728afda27af9e7500edf26a6a44f', 'sentry.is_localhost': True} E + where 'http.query' = SPANDATA.HTTP_QUERY

Stack Trace
tests/integrations/django/test_data_scrubbing.py:232: in test_span_http_query_data_collection
    assert SPANDATA.HTTP_QUERY not in root_span["attributes"]
E   AssertionError: assert 'http.query' not in {'sentry.origin': 'auto.http.django', 'sentry.trace_lifecycle': 'stream', 'sentry.segment.name.source': 'route', 'sentry.op': 'http.server', 'thread.id': '140285609891648', 'thread.name': 'MainThread', 'sentry.platform': 'python', 'process.command_args': ['/home/runner/work/sentry-python/sentry-python/.tox/py3.14t-django-v6.1.1/lib/python3.14t/site-packages/pytest/__main__.py', '-W', 'error::pytest.PytestUnraisableExceptionWarning', 'tests/integrations/django', '-o', 'junit_suite_name=py3.14t-django-v6.1.1', '--junitxml=.junitxml-py3.14t-django-v6.1.1'], 'sentry.sdk.integrations': ['argv', 'atexit', 'dedupe', 'django', 'excepthook', 'modules', 'stdlib', 'threading', 'unraisablehook'], 'http.request.method': 'GET', 'http.request.header.host': ['localhost'], 'network.protocol.name': 'http', 'server.address': 'localhost', 'server.port': 80, 'http.query': 'toy=tennisball&color=red&auth=%5BFiltered%5D', 'url.path': '/message', 'url.full': 'http://localhost/message?toy=tennisball&color=red&auth=%5BFiltered%5D', 'http.route': '/message', 'http.response.status_code': 200, 'sentry.segment.id': 'a277ef484fa2088b', 'sentry.segment.name': '/message', 'sentry.sdk.name': 'sentry.python.django', 'sentry.sdk.version': '2.71.0', 'process.runtime.name': 'CPython', 'process.runtime.version': '3.14.7', 'sentry.environment': 'production', 'sentry.release': '7f391caa6aa1728afda27af9e7500edf26a6a44f', 'sentry.is_localhost': True}
E    +  where 'http.query' = SPANDATA.HTTP_QUERY

test_query_string_empty_legacy_emits_empty_string

File: tests.integrations.django.test_data_scrubbing
Suite: py3.14t-django-v6.1.1
Error: tests/integrations/django/test_data_scrubbing.py:248: in test_query_string_empty_legacy_emits_empty_string assert event["request"]["query_string"] == "" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ E KeyError: 'query_string'

Stack Trace
tests/integrations/django/test_data_scrubbing.py:248: in test_query_string_empty_legacy_emits_empty_string
    assert event["request"]["query_string"] == ""
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
E   KeyError: 'query_string'

test_custom_error_handler_request_context

File: tests.integrations.django.test_basic
Suite: py3.14t-django-v6.1.1
Error: AssertionError: assert {'url': 'http://localhost/404', 'method': 'POST', 'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}} == {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'query_string': '', 'url': 'http://localhost/404'}
 Common items: {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'url': 'http://localhost/404'}
 Right contains 1 more item: {'query_string': ''} Full diff: { + 'url': 'http://localhost/404',
 + 'method': 'POST', 'env': { 'SERVER_NAME': 'localhost', 'SERVER_PORT': '80', }, 'headers': { 'Host': 'localhost', }, - 'method': 'POST', - 'query_string': '', - 'url': 'http://localhost/404',
 }

Stack Trace
tests/integrations/django/test_basic.py:439: in test_custom_error_handler_request_context
    assert event["request"] == {
E   AssertionError: assert {'url': 'http://localhost/404', 'method': 'POST', 'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}} == {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'query_string': '', 'url': 'http://localhost/404'}
E     
E     Common items:
E     {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'},
E      'headers': {'Host': 'localhost'},
E      'method': 'POST',
E      'url': 'http://localhost/404'}
E     Right contains 1 more item:
E     {'query_string': ''}
E     
E     Full diff:
E       {
E     +     'url': 'http://localhost/404',
E     +     'method': 'POST',
E           'env': {
E               'SERVER_NAME': 'localhost',
E               'SERVER_PORT': '80',
E           },
E           'headers': {
E               'Host': 'localhost',
E           },
E     -     'method': 'POST',
E     -     'query_string': '',
E     -     'url': 'http://localhost/404',
E       }

test_query_string_data_collection[legacy_send_default_pii_true]

File: tests.integrations.flask.test_flask
Suite: py3.15-flask-v2.3.3
Error: AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' - toy=tennisball&color=red&auth=secret ? ^ - ^ + toy=tennisball&color=red&auth=%5BFiltered%5D ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/flask/test_flask.py:1140: in test_query_string_data_collection
    assert event["request"]["query_string"] == expected_query_string
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_query_string_data_collection[legacy_send_default_pii_false]

File: tests.integrations.flask.test_flask
Suite: py3.15-flask-v2.3.3
Error: AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' - toy=tennisball&color=red&auth=secret ? ^ - ^ + toy=tennisball&color=red&auth=%5BFiltered%5D ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/flask/test_flask.py:1140: in test_query_string_data_collection
    assert event["request"]["query_string"] == expected_query_string
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_span_http_query_data_collection[legacy_send_default_pii_true]

File: tests.integrations.flask.test_flask
Suite: py3.15-flask-v2.3.3
Error: AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' - toy=tennisball&color=red&auth=secret ? ^ - ^ + toy=tennisball&color=red&auth=%5BFiltered%5D ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/flask/test_flask.py:1205: in test_span_http_query_data_collection
    assert segment["attributes"][SPANDATA.HTTP_QUERY] == expected_query
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_span_http_query_data_collection[legacy_send_default_pii_false]

File: tests.integrations.flask.test_flask
Suite: py3.15-flask-v2.3.3
Error: AssertionError: assert 'http.query' not in {'sentry.origin': 'auto.http.flask', 'sentry.trace_lifecycle': 'stream', 'sentry.segment.name.source': 'route', 'sentry.op': 'http.server', 'thread.id': '140342744811328', 'thread.name': 'MainThread', 'sentry.platform': 'python', 'process.command_args': ['/home/runner/work/sentry-python/sentry-python/.tox/py3.15-flask-v2.3.3/lib/python3.15/site-packages/pytest/main.py', '-W', 'error::pytest.PytestUnraisableExceptionWarning', 'tests/integrations/flask', '-o', 'junit_suite_name=py3.15-flask-v2.3.3', '--junitxml=.junitxml-py3.15-flask-v2.3.3'], 'sentry.sdk.integrations': ['argv', 'atexit', 'dedupe', 'excepthook', 'flask', 'modules', 'stdlib', 'threading', 'unraisablehook'], 'http.request.method': 'GET', 'http.request.header.user-agent': ['Werkzeug/3.1.8'], 'http.request.header.host': ['localhost'], 'network.protocol.name': 'http', 'server.address': 'localhost', 'server.port': 80, 'http.query': 'toy=tennisball&color=red&auth=%5BFiltered%5D', 'url.path': '/message', 'url.full': 'http://localhost/message?toy=tennisball&color=red&auth=%5BFiltered%5D', 'http.route': '/message', 'http.response.status_code': 200, 'sentry.segment.id': '875858b3eb09baf4', 'sentry.segment.name': '/message', 'sentry.sdk.name': 'sentry.python.flask', 'sentry.sdk.version': '2.71.0', 'process.runtime.name': 'CPython', 'process.runtime.version': '3.15.0', 'sentry.environment': 'production', 'sentry.release': '7f391caa6aa1728afda27af9e7500edf26a6a44f', 'sentry.is_localhost': True, 'user_agent.original': 'Werkzeug/3.1.8'} + where 'http.query' = SPANDATA.HTTP_QUERY

Stack Trace
tests/integrations/flask/test_flask.py:1203: in test_span_http_query_data_collection
    assert SPANDATA.HTTP_QUERY not in segment["attributes"]
E   AssertionError: assert 'http.query' not in {'sentry.origin': 'auto.http.flask', 'sentry.trace_lifecycle': 'stream', 'sentry.segment.name.source': 'route', 'sentry.op': 'http.server', 'thread.id': '140342744811328', 'thread.name': 'MainThread', 'sentry.platform': 'python', 'process.command_args': ['/home/runner/work/sentry-python/sentry-python/.tox/py3.15-flask-v2.3.3/lib/python3.15/site-packages/pytest/__main__.py', '-W', 'error::pytest.PytestUnraisableExceptionWarning', 'tests/integrations/flask', '-o', 'junit_suite_name=py3.15-flask-v2.3.3', '--junitxml=.junitxml-py3.15-flask-v2.3.3'], 'sentry.sdk.integrations': ['argv', 'atexit', 'dedupe', 'excepthook', 'flask', 'modules', 'stdlib', 'threading', 'unraisablehook'], 'http.request.method': 'GET', 'http.request.header.user-agent': ['Werkzeug/3.1.8'], 'http.request.header.host': ['localhost'], 'network.protocol.name': 'http', 'server.address': 'localhost', 'server.port': 80, 'http.query': 'toy=tennisball&color=red&auth=%5BFiltered%5D', 'url.path': '/message', 'url.full': 'http://localhost/message?toy=tennisball&color=red&auth=%5BFiltered%5D', 'http.route': '/message', 'http.response.status_code': 200, 'sentry.segment.id': '875858b3eb09baf4', 'sentry.segment.name': '/message', 'sentry.sdk.name': 'sentry.python.flask', 'sentry.sdk.version': '2.71.0', 'process.runtime.name': 'CPython', 'process.runtime.version': '3.15.0', 'sentry.environment': 'production', 'sentry.release': '7f391caa6aa1728afda27af9e7500edf26a6a44f', 'sentry.is_localhost': True, 'user_agent.original': 'Werkzeug/3.1.8'}
E    +  where 'http.query' = SPANDATA.HTTP_QUERY

test_query_string_empty_legacy_emits_empty_string

File: tests.integrations.flask.test_flask
Suite: py3.15-flask-v2.3.3
Error: KeyError: 'query_string'

Stack Trace
tests/integrations/flask/test_flask.py:1219: in test_query_string_empty_legacy_emits_empty_string
    assert event["request"]["query_string"] == ""
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
E   KeyError: 'query_string'

test_query_string_data_collection[legacy_send_default_pii_true]

File: tests.integrations.flask.test_flask
Suite: py3.15-flask-v3.1.3
Error: AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' - toy=tennisball&color=red&auth=secret ? ^ - ^ + toy=tennisball&color=red&auth=%5BFiltered%5D ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/flask/test_flask.py:1140: in test_query_string_data_collection
    assert event["request"]["query_string"] == expected_query_string
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_query_string_data_collection[legacy_send_default_pii_false]

File: tests.integrations.flask.test_flask
Suite: py3.15-flask-v3.1.3
Error: AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' - toy=tennisball&color=red&auth=secret ? ^ - ^ + toy=tennisball&color=red&auth=%5BFiltered%5D ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/flask/test_flask.py:1140: in test_query_string_data_collection
    assert event["request"]["query_string"] == expected_query_string
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_span_http_query_data_collection[legacy_send_default_pii_true]

File: tests.integrations.flask.test_flask
Suite: py3.15-flask-v3.1.3
Error: AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' - toy=tennisball&color=red&auth=secret ? ^ - ^ + toy=tennisball&color=red&auth=%5BFiltered%5D ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/flask/test_flask.py:1205: in test_span_http_query_data_collection
    assert segment["attributes"][SPANDATA.HTTP_QUERY] == expected_query
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_span_http_query_data_collection[legacy_send_default_pii_false]

File: tests.integrations.flask.test_flask
Suite: py3.15-flask-v3.1.3
Error: AssertionError: assert 'http.query' not in {'sentry.origin': 'auto.http.flask', 'sentry.trace_lifecycle': 'stream', 'sentry.segment.name.source': 'route', 'sentry.op': 'http.server', 'thread.id': '140115789657920', 'thread.name': 'MainThread', 'sentry.platform': 'python', 'process.command_args': ['/home/runner/work/sentry-python/sentry-python/.tox/py3.15-flask-v3.1.3/lib/python3.15/site-packages/pytest/main.py', '-W', 'error::pytest.PytestUnraisableExceptionWarning', 'tests/integrations/flask', '-o', 'junit_suite_name=py3.15-flask-v3.1.3', '--junitxml=.junitxml-py3.15-flask-v3.1.3'], 'sentry.sdk.integrations': ['argv', 'atexit', 'dedupe', 'excepthook', 'flask', 'modules', 'stdlib', 'threading', 'unraisablehook'], 'http.request.method': 'GET', 'http.request.header.user-agent': ['Werkzeug/3.1.8'], 'http.request.header.host': ['localhost'], 'network.protocol.name': 'http', 'server.address': 'localhost', 'server.port': 80, 'http.query': 'toy=tennisball&color=red&auth=%5BFiltered%5D', 'url.path': '/message', 'url.full': 'http://localhost/message?toy=tennisball&color=red&auth=%5BFiltered%5D', 'http.route': '/message', 'http.response.status_code': 200, 'sentry.segment.id': 'bd33e2b26f211905', 'sentry.segment.name': '/message', 'sentry.sdk.name': 'sentry.python.flask', 'sentry.sdk.version': '2.71.0', 'process.runtime.name': 'CPython', 'process.runtime.version': '3.15.0', 'sentry.environment': 'production', 'sentry.release': '7f391caa6aa1728afda27af9e7500edf26a6a44f', 'sentry.is_localhost': True, 'user_agent.original': 'Werkzeug/3.1.8'} + where 'http.query' = SPANDATA.HTTP_QUERY

Stack Trace
tests/integrations/flask/test_flask.py:1203: in test_span_http_query_data_collection
    assert SPANDATA.HTTP_QUERY not in segment["attributes"]
E   AssertionError: assert 'http.query' not in {'sentry.origin': 'auto.http.flask', 'sentry.trace_lifecycle': 'stream', 'sentry.segment.name.source': 'route', 'sentry.op': 'http.server', 'thread.id': '140115789657920', 'thread.name': 'MainThread', 'sentry.platform': 'python', 'process.command_args': ['/home/runner/work/sentry-python/sentry-python/.tox/py3.15-flask-v3.1.3/lib/python3.15/site-packages/pytest/__main__.py', '-W', 'error::pytest.PytestUnraisableExceptionWarning', 'tests/integrations/flask', '-o', 'junit_suite_name=py3.15-flask-v3.1.3', '--junitxml=.junitxml-py3.15-flask-v3.1.3'], 'sentry.sdk.integrations': ['argv', 'atexit', 'dedupe', 'excepthook', 'flask', 'modules', 'stdlib', 'threading', 'unraisablehook'], 'http.request.method': 'GET', 'http.request.header.user-agent': ['Werkzeug/3.1.8'], 'http.request.header.host': ['localhost'], 'network.protocol.name': 'http', 'server.address': 'localhost', 'server.port': 80, 'http.query': 'toy=tennisball&color=red&auth=%5BFiltered%5D', 'url.path': '/message', 'url.full': 'http://localhost/message?toy=tennisball&color=red&auth=%5BFiltered%5D', 'http.route': '/message', 'http.response.status_code': 200, 'sentry.segment.id': 'bd33e2b26f211905', 'sentry.segment.name': '/message', 'sentry.sdk.name': 'sentry.python.flask', 'sentry.sdk.version': '2.71.0', 'process.runtime.name': 'CPython', 'process.runtime.version': '3.15.0', 'sentry.environment': 'production', 'sentry.release': '7f391caa6aa1728afda27af9e7500edf26a6a44f', 'sentry.is_localhost': True, 'user_agent.original': 'Werkzeug/3.1.8'}
E    +  where 'http.query' = SPANDATA.HTTP_QUERY

test_query_string_empty_legacy_emits_empty_string

File: tests.integrations.flask.test_flask
Suite: py3.15-flask-v3.1.3
Error: KeyError: 'query_string'

Stack Trace
tests/integrations/flask/test_flask.py:1219: in test_query_string_empty_legacy_emits_empty_string
    assert event["request"]["query_string"] == ""
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
E   KeyError: 'query_string'

test_query_string_data_collection[legacy_send_default_pii_true]

File: tests.integrations.flask.test_flask
Suite: py3.15t-flask-v2.3.3
Error: AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' - toy=tennisball&color=red&auth=secret ? ^ - ^ + toy=tennisball&color=red&auth=%5BFiltered%5D ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/flask/test_flask.py:1140: in test_query_string_data_collection
    assert event["request"]["query_string"] == expected_query_string
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_query_string_data_collection[legacy_send_default_pii_false]

File: tests.integrations.flask.test_flask
Suite: py3.15t-flask-v2.3.3
Error: AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' - toy=tennisball&color=red&auth=secret ? ^ - ^ + toy=tennisball&color=red&auth=%5BFiltered%5D ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/flask/test_flask.py:1140: in test_query_string_data_collection
    assert event["request"]["query_string"] == expected_query_string
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_span_http_query_data_collection[legacy_send_default_pii_true]

File: tests.integrations.flask.test_flask
Suite: py3.15t-flask-v2.3.3
Error: AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' - toy=tennisball&color=red&auth=secret ? ^ - ^ + toy=tennisball&color=red&auth=%5BFiltered%5D ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/flask/test_flask.py:1205: in test_span_http_query_data_collection
    assert segment["attributes"][SPANDATA.HTTP_QUERY] == expected_query
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_span_http_query_data_collection[legacy_send_default_pii_false]

File: tests.integrations.flask.test_flask
Suite: py3.15t-flask-v2.3.3
Error: AssertionError: assert 'http.query' not in {'sentry.origin': 'auto.http.flask', 'sentry.trace_lifecycle': 'stream', 'sentry.segment.name.source': 'route', 'sentry.op': 'http.server', 'thread.id': '140364574586688', 'thread.name': 'MainThread', 'sentry.platform': 'python', 'process.command_args': ['/home/runner/work/sentry-python/sentry-python/.tox/py3.15t-flask-v2.3.3/lib/python3.15t/site-packages/pytest/main.py', '-W', 'error::pytest.PytestUnraisableExceptionWarning', 'tests/integrations/flask', '-o', 'junit_suite_name=py3.15t-flask-v2.3.3', '--junitxml=.junitxml-py3.15t-flask-v2.3.3'], 'sentry.sdk.integrations': ['argv', 'atexit', 'dedupe', 'excepthook', 'flask', 'modules', 'stdlib', 'threading', 'unraisablehook'], 'http.request.method': 'GET', 'http.request.header.user-agent': ['Werkzeug/3.1.8'], 'http.request.header.host': ['localhost'], 'network.protocol.name': 'http', 'server.address': 'localhost', 'server.port': 80, 'http.query': 'toy=tennisball&color=red&auth=%5BFiltered%5D', 'url.path': '/message', 'url.full': 'http://localhost/message?toy=tennisball&color=red&auth=%5BFiltered%5D', 'http.route': '/message', 'http.response.status_code': 200, 'sentry.segment.id': 'b593e23e81e286a4', 'sentry.segment.name': '/message', 'sentry.sdk.name': 'sentry.python.flask', 'sentry.sdk.version': '2.71.0', 'process.runtime.name': 'CPython', 'process.runtime.version': '3.15.0', 'sentry.environment': 'production', 'sentry.release': '7f391caa6aa1728afda27af9e7500edf26a6a44f', 'sentry.is_localhost': True, 'user_agent.original': 'Werkzeug/3.1.8'} + where 'http.query' = SPANDATA.HTTP_QUERY

Stack Trace
tests/integrations/flask/test_flask.py:1203: in test_span_http_query_data_collection
    assert SPANDATA.HTTP_QUERY not in segment["attributes"]
E   AssertionError: assert 'http.query' not in {'sentry.origin': 'auto.http.flask', 'sentry.trace_lifecycle': 'stream', 'sentry.segment.name.source': 'route', 'sentry.op': 'http.server', 'thread.id': '140364574586688', 'thread.name': 'MainThread', 'sentry.platform': 'python', 'process.command_args': ['/home/runner/work/sentry-python/sentry-python/.tox/py3.15t-flask-v2.3.3/lib/python3.15t/site-packages/pytest/__main__.py', '-W', 'error::pytest.PytestUnraisableExceptionWarning', 'tests/integrations/flask', '-o', 'junit_suite_name=py3.15t-flask-v2.3.3', '--junitxml=.junitxml-py3.15t-flask-v2.3.3'], 'sentry.sdk.integrations': ['argv', 'atexit', 'dedupe', 'excepthook', 'flask', 'modules', 'stdlib', 'threading', 'unraisablehook'], 'http.request.method': 'GET', 'http.request.header.user-agent': ['Werkzeug/3.1.8'], 'http.request.header.host': ['localhost'], 'network.protocol.name': 'http', 'server.address': 'localhost', 'server.port': 80, 'http.query': 'toy=tennisball&color=red&auth=%5BFiltered%5D', 'url.path': '/message', 'url.full': 'http://localhost/message?toy=tennisball&color=red&auth=%5BFiltered%5D', 'http.route': '/message', 'http.response.status_code': 200, 'sentry.segment.id': 'b593e23e81e286a4', 'sentry.segment.name': '/message', 'sentry.sdk.name': 'sentry.python.flask', 'sentry.sdk.version': '2.71.0', 'process.runtime.name': 'CPython', 'process.runtime.version': '3.15.0', 'sentry.environment': 'production', 'sentry.release': '7f391caa6aa1728afda27af9e7500edf26a6a44f', 'sentry.is_localhost': True, 'user_agent.original': 'Werkzeug/3.1.8'}
E    +  where 'http.query' = SPANDATA.HTTP_QUERY

test_query_string_empty_legacy_emits_empty_string

File: tests.integrations.flask.test_flask
Suite: py3.15t-flask-v2.3.3
Error: KeyError: 'query_string'

Stack Trace
tests/integrations/flask/test_flask.py:1219: in test_query_string_empty_legacy_emits_empty_string
    assert event["request"]["query_string"] == ""
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
E   KeyError: 'query_string'

test_query_string_data_collection[legacy_send_default_pii_true]

File: tests.integrations.flask.test_flask
Suite: py3.15t-flask-v3.1.3
Error: AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' - toy=tennisball&color=red&auth=secret ? ^ - ^ + toy=tennisball&color=red&auth=%5BFiltered%5D ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/flask/test_flask.py:1140: in test_query_string_data_collection
    assert event["request"]["query_string"] == expected_query_string
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_query_string_data_collection[legacy_send_default_pii_false]

File: tests.integrations.flask.test_flask
Suite: py3.15t-flask-v3.1.3
Error: AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' - toy=tennisball&color=red&auth=secret ? ^ - ^ + toy=tennisball&color=red&auth=%5BFiltered%5D ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/flask/test_flask.py:1140: in test_query_string_data_collection
    assert event["request"]["query_string"] == expected_query_string
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_span_http_query_data_collection[legacy_send_default_pii_true]

File: tests.integrations.flask.test_flask
Suite: py3.15t-flask-v3.1.3
Error: AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' - toy=tennisball&color=red&auth=secret ? ^ - ^ + toy=tennisball&color=red&auth=%5BFiltered%5D ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/flask/test_flask.py:1205: in test_span_http_query_data_collection
    assert segment["attributes"][SPANDATA.HTTP_QUERY] == expected_query
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_span_http_query_data_collection[legacy_send_default_pii_false]

File: tests.integrations.flask.test_flask
Suite: py3.15t-flask-v3.1.3
Error: AssertionError: assert 'http.query' not in {'sentry.origin': 'auto.http.flask', 'sentry.trace_lifecycle': 'stream', 'sentry.segment.name.source': 'route', 'sentry.op': 'http.server', 'thread.id': '140365406381888', 'thread.name': 'MainThread', 'sentry.platform': 'python', 'process.command_args': ['/home/runner/work/sentry-python/sentry-python/.tox/py3.15t-flask-v3.1.3/lib/python3.15t/site-packages/pytest/main.py', '-W', 'error::pytest.PytestUnraisableExceptionWarning', 'tests/integrations/flask', '-o', 'junit_suite_name=py3.15t-flask-v3.1.3', '--junitxml=.junitxml-py3.15t-flask-v3.1.3'], 'sentry.sdk.integrations': ['argv', 'atexit', 'dedupe', 'excepthook', 'flask', 'modules', 'stdlib', 'threading', 'unraisablehook'], 'http.request.method': 'GET', 'http.request.header.user-agent': ['Werkzeug/3.1.8'], 'http.request.header.host': ['localhost'], 'network.protocol.name': 'http', 'server.address': 'localhost', 'server.port': 80, 'http.query': 'toy=tennisball&color=red&auth=%5BFiltered%5D', 'url.path': '/message', 'url.full': 'http://localhost/message?toy=tennisball&color=red&auth=%5BFiltered%5D', 'http.route': '/message', 'http.response.status_code': 200, 'sentry.segment.id': '8dfe1fcc7728b9e9', 'sentry.segment.name': '/message', 'sentry.sdk.name': 'sentry.python.flask', 'sentry.sdk.version': '2.71.0', 'process.runtime.name': 'CPython', 'process.runtime.version': '3.15.0', 'sentry.environment': 'production', 'sentry.release': '7f391caa6aa1728afda27af9e7500edf26a6a44f', 'sentry.is_localhost': True, 'user_agent.original': 'Werkzeug/3.1.8'} + where 'http.query' = SPANDATA.HTTP_QUERY

Stack Trace
tests/integrations/flask/test_flask.py:1203: in test_span_http_query_data_collection
    assert SPANDATA.HTTP_QUERY not in segment["attributes"]
E   AssertionError: assert 'http.query' not in {'sentry.origin': 'auto.http.flask', 'sentry.trace_lifecycle': 'stream', 'sentry.segment.name.source': 'route', 'sentry.op': 'http.server', 'thread.id': '140365406381888', 'thread.name': 'MainThread', 'sentry.platform': 'python', 'process.command_args': ['/home/runner/work/sentry-python/sentry-python/.tox/py3.15t-flask-v3.1.3/lib/python3.15t/site-packages/pytest/__main__.py', '-W', 'error::pytest.PytestUnraisableExceptionWarning', 'tests/integrations/flask', '-o', 'junit_suite_name=py3.15t-flask-v3.1.3', '--junitxml=.junitxml-py3.15t-flask-v3.1.3'], 'sentry.sdk.integrations': ['argv', 'atexit', 'dedupe', 'excepthook', 'flask', 'modules', 'stdlib', 'threading', 'unraisablehook'], 'http.request.method': 'GET', 'http.request.header.user-agent': ['Werkzeug/3.1.8'], 'http.request.header.host': ['localhost'], 'network.protocol.name': 'http', 'server.address': 'localhost', 'server.port': 80, 'http.query': 'toy=tennisball&color=red&auth=%5BFiltered%5D', 'url.path': '/message', 'url.full': 'http://localhost/message?toy=tennisball&color=red&auth=%5BFiltered%5D', 'http.route': '/message', 'http.response.status_code': 200, 'sentry.segment.id': '8dfe1fcc7728b9e9', 'sentry.segment.name': '/message', 'sentry.sdk.name': 'sentry.python.flask', 'sentry.sdk.version': '2.71.0', 'process.runtime.name': 'CPython', 'process.runtime.version': '3.15.0', 'sentry.environment': 'production', 'sentry.release': '7f391caa6aa1728afda27af9e7500edf26a6a44f', 'sentry.is_localhost': True, 'user_agent.original': 'Werkzeug/3.1.8'}
E    +  where 'http.query' = SPANDATA.HTTP_QUERY

test_query_string_empty_legacy_emits_empty_string

File: tests.integrations.flask.test_flask
Suite: py3.15t-flask-v3.1.3
Error: KeyError: 'query_string'

Stack Trace
tests/integrations/flask/test_flask.py:1219: in test_query_string_empty_legacy_emits_empty_string
    assert event["request"]["query_string"] == ""
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
E   KeyError: 'query_string'

test_query_string_data_collection[legacy_send_default_pii_true]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.7-django-v2.0.13
Error: tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection assert event["request"]["query_string"] == expected_query_string E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection
    assert event["request"]["query_string"] == expected_query_string
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_query_string_data_collection[legacy_send_default_pii_false]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.7-django-v2.0.13
Error: tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection assert event["request"]["query_string"] == expected_query_string E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection
    assert event["request"]["query_string"] == expected_query_string
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_span_http_query_data_collection[legacy_send_default_pii_true]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.7-django-v2.0.13
Error: tests/integrations/django/test_data_scrubbing.py:234: in test_span_http_query_data_collection assert root_span["attributes"][SPANDATA.HTTP_QUERY] == expected_query E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:234: in test_span_http_query_data_collection
    assert root_span["attributes"][SPANDATA.HTTP_QUERY] == expected_query
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_span_http_query_data_collection[legacy_send_default_pii_false]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.7-django-v2.0.13
Error: tests/integrations/django/test_data_scrubbing.py:232: in test_span_http_query_data_collection assert SPANDATA.HTTP_QUERY not in root_span["attributes"] E AssertionError: assert 'http.query' not in {'http.query': 'toy=tennisball&color=red&auth=%5BFiltered%5D', 'http.request.header.host': ['localhost'], 'http.request.method': 'GET', 'http.response.status_code': 200, ...} E + where 'http.query' = SPANDATA.HTTP_QUERY

Stack Trace
tests/integrations/django/test_data_scrubbing.py:232: in test_span_http_query_data_collection
    assert SPANDATA.HTTP_QUERY not in root_span["attributes"]
E   AssertionError: assert 'http.query' not in {'http.query': 'toy=tennisball&color=red&auth=%5BFiltered%5D', 'http.request.header.host': ['localhost'], 'http.request.method': 'GET', 'http.response.status_code': 200, ...}
E    +  where 'http.query' = SPANDATA.HTTP_QUERY

test_query_string_empty_legacy_emits_empty_string

File: tests.integrations.django.test_data_scrubbing
Suite: py3.7-django-v2.0.13
Error: tests/integrations/django/test_data_scrubbing.py:248: in test_query_string_empty_legacy_emits_empty_string assert event["request"]["query_string"] == "" E KeyError: 'query_string'

Stack Trace
tests/integrations/django/test_data_scrubbing.py:248: in test_query_string_empty_legacy_emits_empty_string
    assert event["request"]["query_string"] == ""
E   KeyError: 'query_string'

test_custom_error_handler_request_context

File: tests.integrations.django.test_basic
Suite: py3.7-django-v2.0.13
Error: AssertionError: assert {'url': 'http://localhost/404', 'method': 'POST', 'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}} == {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'query_string': '', 'url': 'http://localhost/404'}
 Common items: {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'url': 'http://localhost/404'}
 Right contains 1 more item: {'query_string': ''} Full diff: { 'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', - 'query_string': '', 'url': 'http://localhost/404',
 }

Stack Trace
tests/integrations/django/test_basic.py:439: in test_custom_error_handler_request_context
    assert event["request"] == {
E   AssertionError: assert {'url': 'http://localhost/404', 'method': 'POST', 'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}} == {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'query_string': '', 'url': 'http://localhost/404'}
E     Common items:
E     {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'},
E      'headers': {'Host': 'localhost'},
E      'method': 'POST',
E      'url': 'http://localhost/404'}
E     Right contains 1 more item:
E     {'query_string': ''}
E     Full diff:
E       {
E        'env': {'SERVER_NAME': 'localhost',
E                'SERVER_PORT': '80'},
E        'headers': {'Host': 'localhost'},
E        'method': 'POST',
E     -  'query_string': '',
E        'url': 'http://localhost/404',
E       }

test_query_string_data_collection[legacy_send_default_pii_true]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.7-django-v2.2.28
Error: tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection assert event["request"]["query_string"] == expected_query_string E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection
    assert event["request"]["query_string"] == expected_query_string
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_query_string_data_collection[legacy_send_default_pii_false]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.7-django-v2.2.28
Error: tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection assert event["request"]["query_string"] == expected_query_string E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection
    assert event["request"]["query_string"] == expected_query_string
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_span_http_query_data_collection[legacy_send_default_pii_true]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.7-django-v2.2.28
Error: tests/integrations/django/test_data_scrubbing.py:234: in test_span_http_query_data_collection assert root_span["attributes"][SPANDATA.HTTP_QUERY] == expected_query E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:234: in test_span_http_query_data_collection
    assert root_span["attributes"][SPANDATA.HTTP_QUERY] == expected_query
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_span_http_query_data_collection[legacy_send_default_pii_false]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.7-django-v2.2.28
Error: tests/integrations/django/test_data_scrubbing.py:232: in test_span_http_query_data_collection assert SPANDATA.HTTP_QUERY not in root_span["attributes"] E AssertionError: assert 'http.query' not in {'http.query': 'toy=tennisball&color=red&auth=%5BFiltered%5D', 'http.request.header.host': ['localhost'], 'http.request.method': 'GET', 'http.response.status_code': 200, ...} E + where 'http.query' = SPANDATA.HTTP_QUERY

Stack Trace
tests/integrations/django/test_data_scrubbing.py:232: in test_span_http_query_data_collection
    assert SPANDATA.HTTP_QUERY not in root_span["attributes"]
E   AssertionError: assert 'http.query' not in {'http.query': 'toy=tennisball&color=red&auth=%5BFiltered%5D', 'http.request.header.host': ['localhost'], 'http.request.method': 'GET', 'http.response.status_code': 200, ...}
E    +  where 'http.query' = SPANDATA.HTTP_QUERY

test_query_string_empty_legacy_emits_empty_string

File: tests.integrations.django.test_data_scrubbing
Suite: py3.7-django-v2.2.28
Error: tests/integrations/django/test_data_scrubbing.py:248: in test_query_string_empty_legacy_emits_empty_string assert event["request"]["query_string"] == "" E KeyError: 'query_string'

Stack Trace
tests/integrations/django/test_data_scrubbing.py:248: in test_query_string_empty_legacy_emits_empty_string
    assert event["request"]["query_string"] == ""
E   KeyError: 'query_string'

test_custom_error_handler_request_context

File: tests.integrations.django.test_basic
Suite: py3.7-django-v2.2.28
Error: AssertionError: assert {'url': 'http://localhost/404', 'method': 'POST', 'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}} == {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'query_string': '', 'url': 'http://localhost/404'}
 Common items: {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'url': 'http://localhost/404'}
 Right contains 1 more item: {'query_string': ''} Full diff: { 'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', - 'query_string': '', 'url': 'http://localhost/404',
 }

Stack Trace
tests/integrations/django/test_basic.py:439: in test_custom_error_handler_request_context
    assert event["request"] == {
E   AssertionError: assert {'url': 'http://localhost/404', 'method': 'POST', 'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}} == {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'query_string': '', 'url': 'http://localhost/404'}
E     Common items:
E     {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'},
E      'headers': {'Host': 'localhost'},
E      'method': 'POST',
E      'url': 'http://localhost/404'}
E     Right contains 1 more item:
E     {'query_string': ''}
E     Full diff:
E       {
E        'env': {'SERVER_NAME': 'localhost',
E                'SERVER_PORT': '80'},
E        'headers': {'Host': 'localhost'},
E        'method': 'POST',
E     -  'query_string': '',
E        'url': 'http://localhost/404',
E       }

test_query_string_data_collection[legacy_send_default_pii_true]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.7-django-v3.2.25
Error: tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection assert event["request"]["query_string"] == expected_query_string E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection
    assert event["request"]["query_string"] == expected_query_string
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_query_string_data_collection[legacy_send_default_pii_false]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.7-django-v3.2.25
Error: tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection assert event["request"]["query_string"] == expected_query_string E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection
    assert event["request"]["query_string"] == expected_query_string
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_span_http_query_data_collection[legacy_send_default_pii_true]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.7-django-v3.2.25
Error: tests/integrations/django/test_data_scrubbing.py:234: in test_span_http_query_data_collection assert root_span["attributes"][SPANDATA.HTTP_QUERY] == expected_query E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:234: in test_span_http_query_data_collection
    assert root_span["attributes"][SPANDATA.HTTP_QUERY] == expected_query
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_span_http_query_data_collection[legacy_send_default_pii_false]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.7-django-v3.2.25
Error: tests/integrations/django/test_data_scrubbing.py:232: in test_span_http_query_data_collection assert SPANDATA.HTTP_QUERY not in root_span["attributes"] E AssertionError: assert 'http.query' not in {'http.query': 'toy=tennisball&color=red&auth=%5BFiltered%5D', 'http.request.header.host': ['localhost'], 'http.request.method': 'GET', 'http.response.status_code': 200, ...} E + where 'http.query' = SPANDATA.HTTP_QUERY

Stack Trace
tests/integrations/django/test_data_scrubbing.py:232: in test_span_http_query_data_collection
    assert SPANDATA.HTTP_QUERY not in root_span["attributes"]
E   AssertionError: assert 'http.query' not in {'http.query': 'toy=tennisball&color=red&auth=%5BFiltered%5D', 'http.request.header.host': ['localhost'], 'http.request.method': 'GET', 'http.response.status_code': 200, ...}
E    +  where 'http.query' = SPANDATA.HTTP_QUERY

test_query_string_empty_legacy_emits_empty_string

File: tests.integrations.django.test_data_scrubbing
Suite: py3.7-django-v3.2.25
Error: tests/integrations/django/test_data_scrubbing.py:248: in test_query_string_empty_legacy_emits_empty_string assert event["request"]["query_string"] == "" E KeyError: 'query_string'

Stack Trace
tests/integrations/django/test_data_scrubbing.py:248: in test_query_string_empty_legacy_emits_empty_string
    assert event["request"]["query_string"] == ""
E   KeyError: 'query_string'

test_custom_error_handler_request_context

File: tests.integrations.django.test_basic
Suite: py3.7-django-v3.2.25
Error: AssertionError: assert {'url': 'http://localhost/404', 'method': 'POST', 'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}} == {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'query_string': '', 'url': 'http://localhost/404'}
 Common items: {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'url': 'http://localhost/404'}
 Right contains 1 more item: {'query_string': ''} Full diff: { 'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', - 'query_string': '', 'url': 'http://localhost/404',
 }

Stack Trace
tests/integrations/django/test_basic.py:439: in test_custom_error_handler_request_context
    assert event["request"] == {
E   AssertionError: assert {'url': 'http://localhost/404', 'method': 'POST', 'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}} == {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'query_string': '', 'url': 'http://localhost/404'}
E     Common items:
E     {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'},
E      'headers': {'Host': 'localhost'},
E      'method': 'POST',
E      'url': 'http://localhost/404'}
E     Right contains 1 more item:
E     {'query_string': ''}
E     Full diff:
E       {
E        'env': {'SERVER_NAME': 'localhost',
E                'SERVER_PORT': '80'},
E        'headers': {'Host': 'localhost'},
E        'method': 'POST',
E     -  'query_string': '',
E        'url': 'http://localhost/404',
E       }

test_query_string_data_collection[legacy_send_default_pii_true]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.8-django-v2.2.28
Error: tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection assert event["request"]["query_string"] == expected_query_string E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection
    assert event["request"]["query_string"] == expected_query_string
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_query_string_data_collection[legacy_send_default_pii_false]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.8-django-v2.2.28
Error: tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection assert event["request"]["query_string"] == expected_query_string E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection
    assert event["request"]["query_string"] == expected_query_string
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_span_http_query_data_collection[legacy_send_default_pii_true]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.8-django-v2.2.28
Error: tests/integrations/django/test_data_scrubbing.py:234: in test_span_http_query_data_collection assert root_span["attributes"][SPANDATA.HTTP_QUERY] == expected_query E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:234: in test_span_http_query_data_collection
    assert root_span["attributes"][SPANDATA.HTTP_QUERY] == expected_query
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_span_http_query_data_collection[legacy_send_default_pii_false]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.8-django-v2.2.28
Error: tests/integrations/django/test_data_scrubbing.py:232: in test_span_http_query_data_collection assert SPANDATA.HTTP_QUERY not in root_span["attributes"] E AssertionError: assert 'http.query' not in {'sentry.origin': 'auto.http.django', 'sentry.trace_lifecycle': 'stream', 'sentry.segment.name.source': 'route', 'sentry.op': 'http.server', 'thread.id': '140608904587072', 'thread.name': 'MainThread', 'sentry.platform': 'python', 'process.command_args': ['/home/runner/work/sentry-python/sentry-python/.tox/py3.8-django-v2.2.28/lib/python3.8/site-packages/pytest/main.py', '-W', 'error::pytest.PytestUnraisableExceptionWarning', 'tests/integrations/django', '-o', 'junit_suite_name=py3.8-django-v2.2.28', '--junitxml=.junitxml-py3.8-django-v2.2.28'], 'sentry.sdk.integrations': ['argv', 'atexit', 'dedupe', 'django', 'excepthook', 'modules', 'stdlib', 'threading', 'unraisablehook'], 'http.request.method': 'GET', 'http.request.header.host': ['localhost'], 'network.protocol.name': 'http', 'server.address': 'localhost', 'server.port': 80, 'http.query': 'toy=tennisball&color=red&auth=%5BFiltered%5D', 'url.path': '/message', 'url.full': 'http://localhost/message?toy=tennisball&color=red&auth=%5BFiltered%5D', 'http.route': '/message', 'http.response.status_code': 200, 'sentry.segment.id': '890c7dbc1875845f', 'sentry.segment.name': '/message', 'sentry.sdk.name': 'sentry.python.django', 'sentry.sdk.version': '2.71.0', 'process.runtime.name': 'CPython', 'process.runtime.version': '3.8.20', 'sentry.environment': 'production', 'sentry.release': '7f391caa6aa1728afda27af9e7500edf26a6a44f', 'sentry.is_localhost': True} E + where 'http.query' = SPANDATA.HTTP_QUERY

Stack Trace
tests/integrations/django/test_data_scrubbing.py:232: in test_span_http_query_data_collection
    assert SPANDATA.HTTP_QUERY not in root_span["attributes"]
E   AssertionError: assert 'http.query' not in {'sentry.origin': 'auto.http.django', 'sentry.trace_lifecycle': 'stream', 'sentry.segment.name.source': 'route', 'sentry.op': 'http.server', 'thread.id': '140608904587072', 'thread.name': 'MainThread', 'sentry.platform': 'python', 'process.command_args': ['/home/runner/work/sentry-python/sentry-python/.tox/py3.8-django-v2.2.28/lib/python3.8/site-packages/pytest/__main__.py', '-W', 'error::pytest.PytestUnraisableExceptionWarning', 'tests/integrations/django', '-o', 'junit_suite_name=py3.8-django-v2.2.28', '--junitxml=.junitxml-py3.8-django-v2.2.28'], 'sentry.sdk.integrations': ['argv', 'atexit', 'dedupe', 'django', 'excepthook', 'modules', 'stdlib', 'threading', 'unraisablehook'], 'http.request.method': 'GET', 'http.request.header.host': ['localhost'], 'network.protocol.name': 'http', 'server.address': 'localhost', 'server.port': 80, 'http.query': 'toy=tennisball&color=red&auth=%5BFiltered%5D', 'url.path': '/message', 'url.full': 'http://localhost/message?toy=tennisball&color=red&auth=%5BFiltered%5D', 'http.route': '/message', 'http.response.status_code': 200, 'sentry.segment.id': '890c7dbc1875845f', 'sentry.segment.name': '/message', 'sentry.sdk.name': 'sentry.python.django', 'sentry.sdk.version': '2.71.0', 'process.runtime.name': 'CPython', 'process.runtime.version': '3.8.20', 'sentry.environment': 'production', 'sentry.release': '7f391caa6aa1728afda27af9e7500edf26a6a44f', 'sentry.is_localhost': True}
E    +  where 'http.query' = SPANDATA.HTTP_QUERY

test_query_string_empty_legacy_emits_empty_string

File: tests.integrations.django.test_data_scrubbing
Suite: py3.8-django-v2.2.28
Error: tests/integrations/django/test_data_scrubbing.py:248: in test_query_string_empty_legacy_emits_empty_string assert event["request"]["query_string"] == "" E KeyError: 'query_string'

Stack Trace
tests/integrations/django/test_data_scrubbing.py:248: in test_query_string_empty_legacy_emits_empty_string
    assert event["request"]["query_string"] == ""
E   KeyError: 'query_string'

test_custom_error_handler_request_context

File: tests.integrations.django.test_basic
Suite: py3.8-django-v2.2.28
Error: AssertionError: assert {'url': 'http://localhost/404', 'method': 'POST', 'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}} == {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'query_string': '', 'url': 'http://localhost/404'}
 Common items: {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'url': 'http://localhost/404'}
 Right contains 1 more item: {'query_string': ''} Full diff: { 'env': { 'SERVER_NAME': 'localhost', 'SERVER_PORT': '80', }, 'headers': { 'Host': 'localhost', }, 'method': 'POST', - 'query_string': '', 'url': 'http://localhost/404',
 }

Stack Trace
tests/integrations/django/test_basic.py:439: in test_custom_error_handler_request_context
    assert event["request"] == {
E   AssertionError: assert {'url': 'http://localhost/404', 'method': 'POST', 'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}} == {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'query_string': '', 'url': 'http://localhost/404'}
E     
E     Common items:
E     {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'},
E      'headers': {'Host': 'localhost'},
E      'method': 'POST',
E      'url': 'http://localhost/404'}
E     Right contains 1 more item:
E     {'query_string': ''}
E     
E     Full diff:
E       {
E           'env': {
E               'SERVER_NAME': 'localhost',
E               'SERVER_PORT': '80',
E           },
E           'headers': {
E               'Host': 'localhost',
E           },
E           'method': 'POST',
E     -     'query_string': '',
E           'url': 'http://localhost/404',
E       }

test_query_string_data_collection[legacy_send_default_pii_true]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.8-django-v4.2.30
Error: tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection assert event["request"]["query_string"] == expected_query_string E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection
    assert event["request"]["query_string"] == expected_query_string
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_query_string_data_collection[legacy_send_default_pii_false]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.8-django-v4.2.30
Error: tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection assert event["request"]["query_string"] == expected_query_string E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection
    assert event["request"]["query_string"] == expected_query_string
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_span_http_query_data_collection[legacy_send_default_pii_true]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.8-django-v4.2.30
Error: tests/integrations/django/test_data_scrubbing.py:234: in test_span_http_query_data_collection assert root_span["attributes"][SPANDATA.HTTP_QUERY] == expected_query E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:234: in test_span_http_query_data_collection
    assert root_span["attributes"][SPANDATA.HTTP_QUERY] == expected_query
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_span_http_query_data_collection[legacy_send_default_pii_false]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.8-django-v4.2.30
Error: tests/integrations/django/test_data_scrubbing.py:232: in test_span_http_query_data_collection assert SPANDATA.HTTP_QUERY not in root_span["attributes"] E AssertionError: assert 'http.query' not in {'sentry.origin': 'auto.http.django', 'sentry.trace_lifecycle': 'stream', 'sentry.segment.name.source': 'route', 'sentry.op': 'http.server', 'thread.id': '140417162184512', 'thread.name': 'MainThread', 'sentry.platform': 'python', 'process.command_args': ['/home/runner/work/sentry-python/sentry-python/.tox/py3.8-django-v4.2.30/lib/python3.8/site-packages/pytest/main.py', '-W', 'error::pytest.PytestUnraisableExceptionWarning', 'tests/integrations/django', '-o', 'junit_suite_name=py3.8-django-v4.2.30', '--junitxml=.junitxml-py3.8-django-v4.2.30'], 'sentry.sdk.integrations': ['argv', 'atexit', 'dedupe', 'django', 'excepthook', 'modules', 'stdlib', 'threading', 'unraisablehook'], 'http.request.method': 'GET', 'http.request.header.host': ['localhost'], 'network.protocol.name': 'http', 'server.address': 'localhost', 'server.port': 80, 'http.query': 'toy=tennisball&color=red&auth=%5BFiltered%5D', 'url.path': '/message', 'url.full': 'http://localhost/message?toy=tennisball&color=red&auth=%5BFiltered%5D', 'http.route': '/message', 'http.response.status_code': 200, 'sentry.segment.id': '82fb145a537377c9', 'sentry.segment.name': '/message', 'sentry.sdk.name': 'sentry.python.django', 'sentry.sdk.version': '2.71.0', 'process.runtime.name': 'CPython', 'process.runtime.version': '3.8.20', 'sentry.environment': 'production', 'sentry.release': '7f391caa6aa1728afda27af9e7500edf26a6a44f', 'sentry.is_localhost': True} E + where 'http.query' = SPANDATA.HTTP_QUERY

Stack Trace
tests/integrations/django/test_data_scrubbing.py:232: in test_span_http_query_data_collection
    assert SPANDATA.HTTP_QUERY not in root_span["attributes"]
E   AssertionError: assert 'http.query' not in {'sentry.origin': 'auto.http.django', 'sentry.trace_lifecycle': 'stream', 'sentry.segment.name.source': 'route', 'sentry.op': 'http.server', 'thread.id': '140417162184512', 'thread.name': 'MainThread', 'sentry.platform': 'python', 'process.command_args': ['/home/runner/work/sentry-python/sentry-python/.tox/py3.8-django-v4.2.30/lib/python3.8/site-packages/pytest/__main__.py', '-W', 'error::pytest.PytestUnraisableExceptionWarning', 'tests/integrations/django', '-o', 'junit_suite_name=py3.8-django-v4.2.30', '--junitxml=.junitxml-py3.8-django-v4.2.30'], 'sentry.sdk.integrations': ['argv', 'atexit', 'dedupe', 'django', 'excepthook', 'modules', 'stdlib', 'threading', 'unraisablehook'], 'http.request.method': 'GET', 'http.request.header.host': ['localhost'], 'network.protocol.name': 'http', 'server.address': 'localhost', 'server.port': 80, 'http.query': 'toy=tennisball&color=red&auth=%5BFiltered%5D', 'url.path': '/message', 'url.full': 'http://localhost/message?toy=tennisball&color=red&auth=%5BFiltered%5D', 'http.route': '/message', 'http.response.status_code': 200, 'sentry.segment.id': '82fb145a537377c9', 'sentry.segment.name': '/message', 'sentry.sdk.name': 'sentry.python.django', 'sentry.sdk.version': '2.71.0', 'process.runtime.name': 'CPython', 'process.runtime.version': '3.8.20', 'sentry.environment': 'production', 'sentry.release': '7f391caa6aa1728afda27af9e7500edf26a6a44f', 'sentry.is_localhost': True}
E    +  where 'http.query' = SPANDATA.HTTP_QUERY

test_query_string_empty_legacy_emits_empty_string

File: tests.integrations.django.test_data_scrubbing
Suite: py3.8-django-v4.2.30
Error: tests/integrations/django/test_data_scrubbing.py:248: in test_query_string_empty_legacy_emits_empty_string assert event["request"]["query_string"] == "" E KeyError: 'query_string'

Stack Trace
tests/integrations/django/test_data_scrubbing.py:248: in test_query_string_empty_legacy_emits_empty_string
    assert event["request"]["query_string"] == ""
E   KeyError: 'query_string'

test_custom_error_handler_request_context

File: tests.integrations.django.test_basic
Suite: py3.8-django-v4.2.30
Error: AssertionError: assert {'url': 'http://localhost/404', 'method': 'POST', 'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}} == {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'query_string': '', 'url': 'http://localhost/404'}
 Common items: {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'url': 'http://localhost/404'}
 Right contains 1 more item: {'query_string': ''} Full diff: { 'env': { 'SERVER_NAME': 'localhost', 'SERVER_PORT': '80', }, 'headers': { 'Host': 'localhost', }, 'method': 'POST', - 'query_string': '', 'url': 'http://localhost/404',
 }

Stack Trace
tests/integrations/django/test_basic.py:439: in test_custom_error_handler_request_context
    assert event["request"] == {
E   AssertionError: assert {'url': 'http://localhost/404', 'method': 'POST', 'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}} == {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'query_string': '', 'url': 'http://localhost/404'}
E     
E     Common items:
E     {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'},
E      'headers': {'Host': 'localhost'},
E      'method': 'POST',
E      'url': 'http://localhost/404'}
E     Right contains 1 more item:
E     {'query_string': ''}
E     
E     Full diff:
E       {
E           'env': {
E               'SERVER_NAME': 'localhost',
E               'SERVER_PORT': '80',
E           },
E           'headers': {
E               'Host': 'localhost',
E           },
E           'method': 'POST',
E     -     'query_string': '',
E           'url': 'http://localhost/404',
E       }

test_query_string_data_collection[legacy_send_default_pii_true]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.9-django-v2.2.28
Error: tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection assert event["request"]["query_string"] == expected_query_string E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection
    assert event["request"]["query_string"] == expected_query_string
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_query_string_data_collection[legacy_send_default_pii_false]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.9-django-v2.2.28
Error: tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection assert event["request"]["query_string"] == expected_query_string E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection
    assert event["request"]["query_string"] == expected_query_string
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_span_http_query_data_collection[legacy_send_default_pii_true]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.9-django-v2.2.28
Error: tests/integrations/django/test_data_scrubbing.py:234: in test_span_http_query_data_collection assert root_span["attributes"][SPANDATA.HTTP_QUERY] == expected_query E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:234: in test_span_http_query_data_collection
    assert root_span["attributes"][SPANDATA.HTTP_QUERY] == expected_query
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_span_http_query_data_collection[legacy_send_default_pii_false]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.9-django-v2.2.28
Error: tests/integrations/django/test_data_scrubbing.py:232: in test_span_http_query_data_collection assert SPANDATA.HTTP_QUERY not in root_span["attributes"] E AssertionError: assert 'http.query' not in {'sentry.origin': 'auto.http.django', 'sentry.trace_lifecycle': 'stream', 'sentry.segment.name.source': 'route', 'sentry.op': 'http.server', 'thread.id': '139708659865408', 'thread.name': 'MainThread', 'sentry.platform': 'python', 'process.command_args': ['/home/runner/work/sentry-python/sentry-python/.tox/py3.9-django-v2.2.28/lib/python3.9/site-packages/pytest/main.py', '-W', 'error::pytest.PytestUnraisableExceptionWarning', 'tests/integrations/django', '-o', 'junit_suite_name=py3.9-django-v2.2.28', '--junitxml=.junitxml-py3.9-django-v2.2.28'], 'sentry.sdk.integrations': ['argv', 'atexit', 'dedupe', 'django', 'excepthook', 'modules', 'stdlib', 'threading', 'unraisablehook'], 'http.request.method': 'GET', 'http.request.header.host': ['localhost'], 'network.protocol.name': 'http', 'server.address': 'localhost', 'server.port': 80, 'http.query': 'toy=tennisball&color=red&auth=%5BFiltered%5D', 'url.path': '/message', 'url.full': 'http://localhost/message?toy=tennisball&color=red&auth=%5BFiltered%5D', 'http.route': '/message', 'http.response.status_code': 200, 'sentry.segment.id': 'bedb272bdba81a7e', 'sentry.segment.name': '/message', 'sentry.sdk.name': 'sentry.python.django', 'sentry.sdk.version': '2.71.0', 'process.runtime.name': 'CPython', 'process.runtime.version': '3.9.25', 'sentry.environment': 'production', 'sentry.release': '7f391caa6aa1728afda27af9e7500edf26a6a44f', 'sentry.is_localhost': True} E + where 'http.query' = SPANDATA.HTTP_QUERY

Stack Trace
tests/integrations/django/test_data_scrubbing.py:232: in test_span_http_query_data_collection
    assert SPANDATA.HTTP_QUERY not in root_span["attributes"]
E   AssertionError: assert 'http.query' not in {'sentry.origin': 'auto.http.django', 'sentry.trace_lifecycle': 'stream', 'sentry.segment.name.source': 'route', 'sentry.op': 'http.server', 'thread.id': '139708659865408', 'thread.name': 'MainThread', 'sentry.platform': 'python', 'process.command_args': ['/home/runner/work/sentry-python/sentry-python/.tox/py3.9-django-v2.2.28/lib/python3.9/site-packages/pytest/__main__.py', '-W', 'error::pytest.PytestUnraisableExceptionWarning', 'tests/integrations/django', '-o', 'junit_suite_name=py3.9-django-v2.2.28', '--junitxml=.junitxml-py3.9-django-v2.2.28'], 'sentry.sdk.integrations': ['argv', 'atexit', 'dedupe', 'django', 'excepthook', 'modules', 'stdlib', 'threading', 'unraisablehook'], 'http.request.method': 'GET', 'http.request.header.host': ['localhost'], 'network.protocol.name': 'http', 'server.address': 'localhost', 'server.port': 80, 'http.query': 'toy=tennisball&color=red&auth=%5BFiltered%5D', 'url.path': '/message', 'url.full': 'http://localhost/message?toy=tennisball&color=red&auth=%5BFiltered%5D', 'http.route': '/message', 'http.response.status_code': 200, 'sentry.segment.id': 'bedb272bdba81a7e', 'sentry.segment.name': '/message', 'sentry.sdk.name': 'sentry.python.django', 'sentry.sdk.version': '2.71.0', 'process.runtime.name': 'CPython', 'process.runtime.version': '3.9.25', 'sentry.environment': 'production', 'sentry.release': '7f391caa6aa1728afda27af9e7500edf26a6a44f', 'sentry.is_localhost': True}
E    +  where 'http.query' = SPANDATA.HTTP_QUERY

test_query_string_empty_legacy_emits_empty_string

File: tests.integrations.django.test_data_scrubbing
Suite: py3.9-django-v2.2.28
Error: tests/integrations/django/test_data_scrubbing.py:248: in test_query_string_empty_legacy_emits_empty_string assert event["request"]["query_string"] == "" E KeyError: 'query_string'

Stack Trace
tests/integrations/django/test_data_scrubbing.py:248: in test_query_string_empty_legacy_emits_empty_string
    assert event["request"]["query_string"] == ""
E   KeyError: 'query_string'

test_custom_error_handler_request_context

File: tests.integrations.django.test_basic
Suite: py3.9-django-v2.2.28
Error: AssertionError: assert {'url': 'http://localhost/404', 'method': 'POST', 'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}} == {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'query_string': '', 'url': 'http://localhost/404'}
 Common items: {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'url': 'http://localhost/404'}
 Right contains 1 more item: {'query_string': ''} Full diff: { 'env': { 'SERVER_NAME': 'localhost', 'SERVER_PORT': '80', }, 'headers': { 'Host': 'localhost', }, 'method': 'POST', - 'query_string': '', 'url': 'http://localhost/404',
 }

Stack Trace
tests/integrations/django/test_basic.py:439: in test_custom_error_handler_request_context
    assert event["request"] == {
E   AssertionError: assert {'url': 'http://localhost/404', 'method': 'POST', 'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}} == {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'query_string': '', 'url': 'http://localhost/404'}
E     
E     Common items:
E     {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'},
E      'headers': {'Host': 'localhost'},
E      'method': 'POST',
E      'url': 'http://localhost/404'}
E     Right contains 1 more item:
E     {'query_string': ''}
E     
E     Full diff:
E       {
E           'env': {
E               'SERVER_NAME': 'localhost',
E               'SERVER_PORT': '80',
E           },
E           'headers': {
E               'Host': 'localhost',
E           },
E           'method': 'POST',
E     -     'query_string': '',
E           'url': 'http://localhost/404',
E       }

test_query_string_data_collection[legacy_send_default_pii_true]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.9-django-v3.2.25
Error: tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection assert event["request"]["query_string"] == expected_query_string E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection
    assert event["request"]["query_string"] == expected_query_string
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_query_string_data_collection[legacy_send_default_pii_false]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.9-django-v3.2.25
Error: tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection assert event["request"]["query_string"] == expected_query_string E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:170: in test_query_string_data_collection
    assert event["request"]["query_string"] == expected_query_string
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_span_http_query_data_collection[legacy_send_default_pii_true]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.9-django-v3.2.25
Error: tests/integrations/django/test_data_scrubbing.py:234: in test_span_http_query_data_collection assert root_span["attributes"][SPANDATA.HTTP_QUERY] == expected_query E AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret' E E - toy=tennisball&color=red&auth=secret E ? ^ - ^ E + toy=tennisball&color=red&auth=%5BFiltered%5D E ? ^^^^^^^ ^^^^

Stack Trace
tests/integrations/django/test_data_scrubbing.py:234: in test_span_http_query_data_collection
    assert root_span["attributes"][SPANDATA.HTTP_QUERY] == expected_query
E   AssertionError: assert 'toy=tennisball&color=red&auth=%5BFiltered%5D' == 'toy=tennisball&color=red&auth=secret'
E     
E     - toy=tennisball&color=red&auth=secret
E     ?                               ^ -  ^
E     + toy=tennisball&color=red&auth=%5BFiltered%5D
E     ?                               ^^^^^^^   ^^^^

test_span_http_query_data_collection[legacy_send_default_pii_false]

File: tests.integrations.django.test_data_scrubbing
Suite: py3.9-django-v3.2.25
Error: tests/integrations/django/test_data_scrubbing.py:232: in test_span_http_query_data_collection assert SPANDATA.HTTP_QUERY not in root_span["attributes"] E AssertionError: assert 'http.query' not in {'sentry.origin': 'auto.http.django', 'sentry.trace_lifecycle': 'stream', 'sentry.segment.name.source': 'route', 'sentry.op': 'http.server', 'thread.id': '140104979855168', 'thread.name': 'MainThread', 'sentry.platform': 'python', 'process.command_args': ['/home/runner/work/sentry-python/sentry-python/.tox/py3.9-django-v3.2.25/lib/python3.9/site-packages/pytest/main.py', '-W', 'error::pytest.PytestUnraisableExceptionWarning', 'tests/integrations/django', '-o', 'junit_suite_name=py3.9-django-v3.2.25', '--junitxml=.junitxml-py3.9-django-v3.2.25'], 'sentry.sdk.integrations': ['argv', 'atexit', 'dedupe', 'django', 'excepthook', 'modules', 'stdlib', 'threading', 'unraisablehook'], 'http.request.method': 'GET', 'http.request.header.host': ['localhost'], 'network.protocol.name': 'http', 'server.address': 'localhost', 'server.port': 80, 'http.query': 'toy=tennisball&color=red&auth=%5BFiltered%5D', 'url.path': '/message', 'url.full': 'http://localhost/message?toy=tennisball&color=red&auth=%5BFiltered%5D', 'http.route': '/message', 'http.response.status_code': 200, 'sentry.segment.id': '8f9bb91595a1ca93', 'sentry.segment.name': '/message', 'sentry.sdk.name': 'sentry.python.django', 'sentry.sdk.version': '2.71.0', 'process.runtime.name': 'CPython', 'process.runtime.version': '3.9.25', 'sentry.environment': 'production', 'sentry.release': '7f391caa6aa1728afda27af9e7500edf26a6a44f', 'sentry.is_localhost': True} E + where 'http.query' = SPANDATA.HTTP_QUERY

Stack Trace
tests/integrations/django/test_data_scrubbing.py:232: in test_span_http_query_data_collection
    assert SPANDATA.HTTP_QUERY not in root_span["attributes"]
E   AssertionError: assert 'http.query' not in {'sentry.origin': 'auto.http.django', 'sentry.trace_lifecycle': 'stream', 'sentry.segment.name.source': 'route', 'sentry.op': 'http.server', 'thread.id': '140104979855168', 'thread.name': 'MainThread', 'sentry.platform': 'python', 'process.command_args': ['/home/runner/work/sentry-python/sentry-python/.tox/py3.9-django-v3.2.25/lib/python3.9/site-packages/pytest/__main__.py', '-W', 'error::pytest.PytestUnraisableExceptionWarning', 'tests/integrations/django', '-o', 'junit_suite_name=py3.9-django-v3.2.25', '--junitxml=.junitxml-py3.9-django-v3.2.25'], 'sentry.sdk.integrations': ['argv', 'atexit', 'dedupe', 'django', 'excepthook', 'modules', 'stdlib', 'threading', 'unraisablehook'], 'http.request.method': 'GET', 'http.request.header.host': ['localhost'], 'network.protocol.name': 'http', 'server.address': 'localhost', 'server.port': 80, 'http.query': 'toy=tennisball&color=red&auth=%5BFiltered%5D', 'url.path': '/message', 'url.full': 'http://localhost/message?toy=tennisball&color=red&auth=%5BFiltered%5D', 'http.route': '/message', 'http.response.status_code': 200, 'sentry.segment.id': '8f9bb91595a1ca93', 'sentry.segment.name': '/message', 'sentry.sdk.name': 'sentry.python.django', 'sentry.sdk.version': '2.71.0', 'process.runtime.name': 'CPython', 'process.runtime.version': '3.9.25', 'sentry.environment': 'production', 'sentry.release': '7f391caa6aa1728afda27af9e7500edf26a6a44f', 'sentry.is_localhost': True}
E    +  where 'http.query' = SPANDATA.HTTP_QUERY

test_query_string_empty_legacy_emits_empty_string

File: tests.integrations.django.test_data_scrubbing
Suite: py3.9-django-v3.2.25
Error: tests/integrations/django/test_data_scrubbing.py:248: in test_query_string_empty_legacy_emits_empty_string assert event["request"]["query_string"] == "" E KeyError: 'query_string'

Stack Trace
tests/integrations/django/test_data_scrubbing.py:248: in test_query_string_empty_legacy_emits_empty_string
    assert event["request"]["query_string"] == ""
E   KeyError: 'query_string'

test_custom_error_handler_request_context

File: tests.integrations.django.test_basic
Suite: py3.9-django-v3.2.25
Error: AssertionError: assert {'url': 'http://localhost/404', 'method': 'POST', 'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}} == {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'query_string': '', 'url': 'http://localhost/404'}
 Common items: {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'url': 'http://localhost/404'}
 Right contains 1 more item: {'query_string': ''} Full diff: { 'env': { 'SERVER_NAME': 'localhost', 'SERVER_PORT': '80', }, 'headers': { 'Host': 'localhost', }, 'method': 'POST', - 'query_string': '', 'url': 'http://localhost/404',
 }

Stack Trace
tests/integrations/django/test_basic.py:439: in test_custom_error_handler_request_context
    assert event["request"] == {
E   AssertionError: assert {'url': 'http://localhost/404', 'method': 'POST', 'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}} == {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'}, 'headers': {'Host': 'localhost'}, 'method': 'POST', 'query_string': '', 'url': 'http://localhost/404'}
E     
E     Common items:
E     {'env': {'SERVER_NAME': 'localhost', 'SERVER_PORT': '80'},
E      'headers': {'Host': 'localhost'},
E      'method': 'POST',
E      'url': 'http://localhost/404'}
E     Right contains 1 more item:
E     {'query_string': ''}
E     
E     Full diff:
E       {
E           'env': {
E               'SERVER_NAME': 'localhost',
E               'SERVER_PORT': '80',
E           },
E           'headers': {
E               'Host': 'localhost',
E           },
E           'method': 'POST',
E     -     'query_string': '',
E           'url': 'http://localhost/404',
E       }

✅ Patch coverage is 100.00%. Project has 2206 uncovered lines.
❌ Project coverage is 89.41%. Comparing base (ffb9c2b) to head (fe22556).

Files with missing lines (1)
File Patch % Lines
sentry_sdk/integrations/wsgi.py 100.00% ⚠️ 1 partials
Coverage diff
@@            Coverage Diff             @@
##        master       #PR       +/-##
==========================================
- Coverage    90.35%    89.41%    -0.94%
==========================================
  Files          202       185       -17
  Lines        26551     20830     -5721
  Branches      9856      7214     -2642
==========================================
+ Hits         23988     18624     -5364
- Misses        2563      2206      -357
- Partials      1487      1215      -272

Generated by Codecov Action

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant