Skip to content

Commit 79c1415

Browse files
authored
Merge pull request #920 from jd/fix-django-query-string-url
django: remove query string from http.url tag
2 parents ab81158 + 408bcd7 commit 79c1415

File tree

2 files changed

+13
-3
lines changed

2 files changed

+13
-3
lines changed

ddtrace/contrib/django/middleware.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,7 @@ def process_request(self, request):
130130
)
131131

132132
span.set_tag(http.METHOD, request.method)
133-
span.set_tag(http.URL, request.build_absolute_uri())
133+
span.set_tag(http.URL, request.build_absolute_uri(request.path))
134134
_set_req_span(request, span)
135135
except Exception:
136136
log.debug('error tracing request', exc_info=True)

tests/contrib/django/test_middleware.py

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,14 @@ class DjangoMiddlewareTest(DjangoTraceTestCase):
1717
"""
1818
Ensures that the middleware traces all Django internals
1919
"""
20-
def test_middleware_trace_request(self):
20+
def test_middleware_trace_request(self, query_string=''):
2121
# ensures that the internals are properly traced
2222
url = reverse('users-list')
23-
response = self.client.get(url)
23+
if query_string:
24+
fqs = '?' + query_string
25+
else:
26+
fqs = ''
27+
response = self.client.get(url + fqs)
2428
assert response.status_code == 200
2529

2630
# check for spans
@@ -38,6 +42,12 @@ def test_middleware_trace_request(self):
3842
assert sp_request.span_type == 'http'
3943
assert sp_request.resource == 'tests.contrib.django.app.views.UserList'
4044

45+
def test_middleware_trace_request_qs(self):
46+
return self.test_middleware_trace_request('foo=bar')
47+
48+
def test_middleware_trace_request_multi_qs(self):
49+
return self.test_middleware_trace_request('foo=bar&foo=baz&x=y')
50+
4151
def test_analytics_global_on_integration_default(self):
4252
"""
4353
When making a request

0 commit comments

Comments
 (0)