Skip to content

Commit 4a7414e

Browse files
use old attributes for legacy path
1 parent 193f790 commit 4a7414e

1 file changed

Lines changed: 35 additions & 16 deletions

File tree

sentry_sdk/integrations/sqlalchemy.py

Lines changed: 35 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -148,27 +148,46 @@ def _get_db_system(name: str) -> "Optional[str]":
148148

149149
def _set_db_data(span: "Union[Span, StreamedSpan]", conn: "Any") -> None:
150150
if isinstance(span, StreamedSpan):
151-
set_on_span = span.set_attribute
151+
db_system = _get_db_system(conn.engine.name)
152+
if db_system is not None:
153+
span.set_attribute(SPANDATA.DB_SYSTEM_NAME, db_system)
154+
155+
try:
156+
driver = conn.dialect.driver
157+
if driver:
158+
span.set_attribute(SPANDATA.DB_DRIVER_NAME, driver)
159+
except Exception:
160+
pass
161+
162+
if conn.engine.url is None:
163+
return
164+
165+
db_name = conn.engine.url.database
166+
if db_name is not None:
167+
span.set_attribute(SPANDATA.DB_NAMESPACE, db_name)
152168
else:
153-
set_on_span = span.set_data
169+
db_system = _get_db_system(conn.engine.name)
170+
if db_system is not None:
171+
span.set_data(SPANDATA.DB_SYSTEM, db_system)
154172

155-
db_system = _get_db_system(conn.engine.name)
156-
if db_system is not None:
157-
set_on_span(SPANDATA.DB_SYSTEM_NAME, db_system)
173+
try:
174+
driver = conn.dialect.driver
175+
if driver:
176+
span.set_data(SPANDATA.DB_DRIVER_NAME, driver)
177+
except Exception:
178+
pass
158179

159-
try:
160-
driver = conn.dialect.driver
161-
if driver:
162-
set_on_span(SPANDATA.DB_DRIVER_NAME, driver)
163-
except Exception:
164-
pass
180+
if conn.engine.url is None:
181+
return
165182

166-
if conn.engine.url is None:
167-
return
183+
db_name = conn.engine.url.database
184+
if db_name is not None:
185+
span.set_data(SPANDATA.DB_NAME, db_name)
168186

169-
db_name = conn.engine.url.database
170-
if db_name is not None:
171-
set_on_span(SPANDATA.DB_NAMESPACE, db_name)
187+
if isinstance(span, StreamedSpan):
188+
set_on_span = span.set_attribute
189+
else:
190+
set_on_span = span.set_data
172191

173192
server_address = conn.engine.url.host
174193
if server_address is not None:

0 commit comments

Comments
 (0)