Skip to content

Commit b035129

Browse files
authored
Merge pull request #50 from DataDog/matt/info
sqlalchemy: set service info
2 parents 915b7b4 + 26c1572 commit b035129

File tree

3 files changed

+18
-0
lines changed

3 files changed

+18
-0
lines changed

ddtrace/contrib/sqlalchemy/engine.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,12 @@ def __init__(self, tracer, service, engine):
4343
self.service = service or self.vendor
4444
self.name = "%s.query" % self.vendor
4545

46+
# set the service info.
47+
self.tracer.set_service_info(
48+
service=self.service,
49+
app=self.vendor,
50+
app_type=sqlx.APP_TYPE)
51+
4652
self._span_buffer = ThreadLocalSpanBuffer()
4753

4854
listen(engine, 'before_cursor_execute', self._before_cur_exec)

ddtrace/ext/sql.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,10 @@
11

2+
from ddtrace.ext import AppTypes
3+
4+
25
# the type of the spans
36
TYPE = "sql"
7+
APP_TYPE = AppTypes.db
48

59
# tags
610
QUERY = "sql.query" # the query text

tests/contrib/sqlalchemy/test.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -160,3 +160,11 @@ def _connect():
160160

161161
for i in expected:
162162
assert i in by_rsc, "%s not in %s" % (i, by_rsc.keys())
163+
164+
# ensure we have the service types
165+
services = tracer.writer.pop_services()
166+
expected = {
167+
service : {"app":vendor, "app_type":"db"}
168+
}
169+
eq_(services, expected)
170+

0 commit comments

Comments
 (0)