Skip to content

Commit a20bdb7

Browse files
authored
ref(o11y): Add set_attribute calls in data export tasks (#117505)
Supplement existing set_tag/set_context/set_extra calls with set_attribute so that data gets added to attributes-based telemetry as well. This will make the migration to span streaming easier. Related to getsentry/sentry-python#6537
1 parent bd2a848 commit a20bdb7

1 file changed

Lines changed: 16 additions & 7 deletions

File tree

src/sentry/data_export/tasks.py

Lines changed: 16 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -475,7 +475,13 @@ def export_data_to_stored_blobs_sync(
475475
"requested_rows": export_limit,
476476
}
477477
sentry_sdk.set_tag("download_type", "sync")
478+
sentry_sdk.set_attribute("download_type", "sync")
478479
sentry_sdk.set_context("data_export", extra)
480+
sentry_sdk.set_attribute("data_export.data_export_id", data_export.id)
481+
sentry_sdk.set_attribute("data_export.query", str(data_export.payload))
482+
sentry_sdk.set_attribute("data_export.organization_id", data_export.organization_id)
483+
sentry_sdk.set_attribute("data_export.download_type", "sync")
484+
sentry_sdk.set_attribute("data_export.requested_rows", export_limit)
479485
_set_data_on_scope(data_export)
480486
with sentry_sdk.start_span(op="assemble", name="Sync Export Data"):
481487
logger.info("dataexport.start", extra=extra)
@@ -853,14 +859,17 @@ def merge_export_blobs(
853859

854860

855861
def _set_data_on_scope(data_export: ExportedData) -> None:
856-
scope = sentry_sdk.get_isolation_scope()
857862
if data_export.user_id:
858863
user = dict(id=data_export.user_id)
859-
scope.set_user(user)
860-
scope.set_tag("organization.slug", data_export.organization.slug)
861-
scope.set_tag("export.type", ExportQueryType.as_str(data_export.query_type))
862-
scope.set_tag("export.format", data_export.export_format)
864+
sentry_sdk.set_user(user)
865+
sentry_sdk.set_tag("organization.slug", data_export.organization.slug)
866+
sentry_sdk.set_attribute("organization.slug", data_export.organization.slug)
867+
sentry_sdk.set_tag("export.type", ExportQueryType.as_str(data_export.query_type))
868+
sentry_sdk.set_attribute("export.type", ExportQueryType.as_str(data_export.query_type))
869+
sentry_sdk.set_tag("export.format", data_export.export_format)
870+
sentry_sdk.set_attribute("export.format", data_export.export_format)
863871
qi = data_export.query_info
864872
if qi.get("dataset") is not None:
865-
scope.set_tag("export.dataset", str(qi.get("dataset")))
866-
scope.set_extra("export.query", data_export.query_info)
873+
sentry_sdk.set_tag("export.dataset", str(qi.get("dataset")))
874+
sentry_sdk.set_attribute("export.dataset", str(qi.get("dataset")))
875+
sentry_sdk.set_extra("export.query", data_export.query_info)

0 commit comments

Comments
 (0)