Skip to content

Commit e0fe946

Browse files
committed
ref(analytics): Transform analytics events for TET-827
- Transform event classes to use @analytics.eventclass decorator - Transform analytics.record calls to use event class instances - Update imports as needed Closes TET-827
1 parent 986ceec commit e0fe946

25 files changed

+328
-351
lines changed
Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,11 @@
11
from sentry import analytics
22

33

4+
@analytics.eventclass("advanced_search.feature_gated")
45
class AdvancedSearchFeatureGateEvent(analytics.Event):
5-
type = "advanced_search.feature_gated"
6-
7-
attributes = (
8-
analytics.Attribute("user_id", required=False),
9-
analytics.Attribute("default_user_id"),
10-
analytics.Attribute("organization_id"),
11-
)
6+
user_id: str | None = None
7+
default_user_id: str
8+
organization_id: str
129

1310

1411
analytics.register(AdvancedSearchFeatureGateEvent)
Lines changed: 7 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,14 @@
11
from sentry import analytics
22

33

4+
@analytics.eventclass("alert.edited")
45
class AlertEditedEvent(analytics.Event):
5-
type = "alert.edited"
6-
7-
attributes = (
8-
analytics.Attribute("user_id", required=False),
9-
analytics.Attribute("default_user_id"),
10-
analytics.Attribute("organization_id"),
11-
analytics.Attribute("rule_id"),
12-
analytics.Attribute("rule_type"),
13-
analytics.Attribute("is_api_token"),
14-
)
6+
user_id: str | None = None
7+
default_user_id: str
8+
organization_id: str
9+
rule_id: str
10+
rule_type: str
11+
is_api_token: str
1512

1613

1714
analytics.register(AlertEditedEvent)
Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,12 @@
11
from sentry import analytics
22

33

4+
@analytics.eventclass("first_new_feedback.sent")
45
class FirstNewFeedbackSentEvent(analytics.Event):
5-
type = "first_new_feedback.sent"
6-
7-
attributes = (
8-
analytics.Attribute("organization_id"),
9-
analytics.Attribute("project_id"),
10-
analytics.Attribute("platform", required=False),
11-
analytics.Attribute("user_id", required=False),
12-
)
6+
organization_id: str
7+
project_id: str
8+
platform: str | None = None
9+
user_id: str | None = None
1310

1411

1512
analytics.register(FirstNewFeedbackSentEvent)

src/sentry/analytics/events/first_sourcemaps_sent.py

Lines changed: 7 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,14 @@
11
from sentry import analytics
22

33

4+
@analytics.eventclass("first_sourcemaps.sent")
45
class FirstSourcemapsSentEvent(analytics.Event):
5-
type = "first_sourcemaps.sent"
6-
7-
attributes = (
8-
analytics.Attribute("user_id"),
9-
analytics.Attribute("organization_id"),
10-
analytics.Attribute("project_id"),
11-
analytics.Attribute("platform", required=False),
12-
analytics.Attribute("url", required=False),
13-
analytics.Attribute("project_platform", required=False),
14-
)
6+
user_id: str
7+
organization_id: str
8+
project_id: str
9+
platform: str | None = None
10+
url: str | None = None
11+
project_platform: str | None = None
1512

1613

1714
class FirstSourcemapsSentEventForProject(FirstSourcemapsSentEvent):
Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,12 @@
11
from sentry import analytics
22

33

4+
@analytics.eventclass("issue.assigned")
45
class IssueAssignedEvent(analytics.Event):
5-
type = "issue.assigned"
6-
7-
attributes = (
8-
analytics.Attribute("user_id", required=False),
9-
analytics.Attribute("default_user_id"),
10-
analytics.Attribute("organization_id"),
11-
analytics.Attribute("group_id"),
12-
)
6+
user_id: str | None = None
7+
default_user_id: str
8+
organization_id: str
9+
group_id: str
1310

1411

1512
analytics.register(IssueAssignedEvent)
Lines changed: 7 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,14 @@
11
from sentry import analytics
22

33

4+
@analytics.eventclass("issue.deleted")
45
class IssueDeletedEvent(analytics.Event):
5-
type = "issue.deleted"
6-
7-
attributes = (
8-
analytics.Attribute("group_id"),
9-
analytics.Attribute("delete_type"),
10-
analytics.Attribute("organization_id"),
11-
analytics.Attribute("project_id"),
12-
analytics.Attribute("user_id", required=False),
13-
analytics.Attribute("default_user_id"),
14-
)
6+
group_id: str
7+
delete_type: str
8+
organization_id: str
9+
project_id: str
10+
user_id: str | None = None
11+
default_user_id: str
1512

1613

1714
analytics.register(IssueDeletedEvent)
Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,13 @@
11
from sentry import analytics
22

33

4+
@analytics.eventclass("issue.escalating")
45
class IssueEscalatingEvent(analytics.Event):
5-
type = "issue.escalating"
6-
7-
attributes = (
8-
analytics.Attribute("organization_id", type=int),
9-
analytics.Attribute("project_id", type=int),
10-
analytics.Attribute("group_id"),
11-
analytics.Attribute("event_id", required=False),
12-
analytics.Attribute("was_until_escalating"),
13-
)
6+
organization_id: int
7+
project_id: int
8+
group_id: str
9+
event_id: str | None = None
10+
was_until_escalating: str
1411

1512

1613
analytics.register(IssueEscalatingEvent)
Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,12 @@
11
from sentry import analytics
22

33

4+
@analytics.eventclass("issue.mark_reviewed")
45
class IssueMarkReviewedEvent(analytics.Event):
5-
type = "issue.mark_reviewed"
6-
7-
attributes = (
8-
analytics.Attribute("user_id", required=False),
9-
analytics.Attribute("default_user_id"),
10-
analytics.Attribute("organization_id"),
11-
analytics.Attribute("group_id"),
12-
)
6+
user_id: str | None = None
7+
default_user_id: str
8+
organization_id: str
9+
group_id: str
1310

1411

1512
analytics.register(IssueMarkReviewedEvent)
Lines changed: 10 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,17 @@
11
from sentry import analytics
22

33

4+
@analytics.eventclass("issue.resolved")
45
class IssueResolvedEvent(analytics.Event):
5-
type = "issue.resolved"
6-
7-
attributes = (
8-
analytics.Attribute("user_id", required=False),
9-
analytics.Attribute("project_id", required=False),
10-
analytics.Attribute("default_user_id"),
11-
analytics.Attribute("organization_id"),
12-
analytics.Attribute("group_id"),
13-
analytics.Attribute("resolution_type"),
14-
# TODO: make required once we validate that all events have this
15-
analytics.Attribute("issue_category", required=False),
16-
analytics.Attribute("issue_type", required=False),
17-
)
6+
user_id: str | None = None
7+
project_id: str | None = None
8+
default_user_id: str
9+
organization_id: str
10+
group_id: str
11+
resolution_type: str
12+
# TODO: make required once we validate that all events have this
13+
issue_category: str | None = None
14+
issue_type: str | None = None
1815

1916

2017
analytics.register(IssueResolvedEvent)
Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,13 @@
11
from sentry import analytics
22

33

4+
@analytics.eventclass("issue.unignored")
45
class IssueUnignoredEvent(analytics.Event):
5-
type = "issue.unignored"
6-
7-
attributes = (
8-
analytics.Attribute("user_id", type=int, required=False),
9-
analytics.Attribute("default_user_id", type=int),
10-
analytics.Attribute("organization_id", type=int),
11-
analytics.Attribute("group_id"),
12-
analytics.Attribute("transition_type"),
13-
)
6+
user_id: int | None = None
7+
default_user_id: int
8+
organization_id: int
9+
group_id: str
10+
transition_type: str
1411

1512

1613
analytics.register(IssueUnignoredEvent)

0 commit comments

Comments
 (0)