Skip to content

ref(analytics): Transform analytics events for TET-827 #95207

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 9 commits into
base: master
Choose a base branch
from
11 changes: 4 additions & 7 deletions src/sentry/analytics/events/advanced_search_feature_gated.py
Original file line number Diff line number Diff line change
@@ -1,14 +1,11 @@
from sentry import analytics


@analytics.eventclass("advanced_search.feature_gated")
class AdvancedSearchFeatureGateEvent(analytics.Event):
type = "advanced_search.feature_gated"

attributes = (
analytics.Attribute("user_id", required=False),
analytics.Attribute("default_user_id"),
analytics.Attribute("organization_id"),
)
user_id: str | None = None
default_user_id: str
organization_id: str


analytics.register(AdvancedSearchFeatureGateEvent)
17 changes: 7 additions & 10 deletions src/sentry/analytics/events/alert_edited.py
Original file line number Diff line number Diff line change
@@ -1,17 +1,14 @@
from sentry import analytics


@analytics.eventclass("alert.edited")
class AlertEditedEvent(analytics.Event):
type = "alert.edited"

attributes = (
analytics.Attribute("user_id", required=False),
analytics.Attribute("default_user_id"),
analytics.Attribute("organization_id"),
analytics.Attribute("rule_id"),
analytics.Attribute("rule_type"),
analytics.Attribute("is_api_token"),
)
user_id: str | None = None
default_user_id: str
organization_id: str
rule_id: str
rule_type: str
is_api_token: str


analytics.register(AlertEditedEvent)
13 changes: 5 additions & 8 deletions src/sentry/analytics/events/first_new_feedback_sent.py
Original file line number Diff line number Diff line change
@@ -1,15 +1,12 @@
from sentry import analytics


@analytics.eventclass("first_new_feedback.sent")
class FirstNewFeedbackSentEvent(analytics.Event):
type = "first_new_feedback.sent"

attributes = (
analytics.Attribute("organization_id"),
analytics.Attribute("project_id"),
analytics.Attribute("platform", required=False),
analytics.Attribute("user_id", required=False),
)
organization_id: str
project_id: str
platform: str | None = None
user_id: int | None = None


analytics.register(FirstNewFeedbackSentEvent)
17 changes: 7 additions & 10 deletions src/sentry/analytics/events/first_sourcemaps_sent.py
Original file line number Diff line number Diff line change
@@ -1,17 +1,14 @@
from sentry import analytics


@analytics.eventclass("first_sourcemaps.sent")
class FirstSourcemapsSentEvent(analytics.Event):
type = "first_sourcemaps.sent"

attributes = (
analytics.Attribute("user_id"),
analytics.Attribute("organization_id"),
analytics.Attribute("project_id"),
analytics.Attribute("platform", required=False),
analytics.Attribute("url", required=False),
analytics.Attribute("project_platform", required=False),
)
user_id: int
organization_id: str
project_id: str
platform: str | None = None
url: str | None = None
project_platform: str | None = None


class FirstSourcemapsSentEventForProject(FirstSourcemapsSentEvent):
Expand Down
13 changes: 5 additions & 8 deletions src/sentry/analytics/events/issue_assigned.py
Original file line number Diff line number Diff line change
@@ -1,15 +1,12 @@
from sentry import analytics


@analytics.eventclass("issue.assigned")
class IssueAssignedEvent(analytics.Event):
type = "issue.assigned"

attributes = (
analytics.Attribute("user_id", required=False),
analytics.Attribute("default_user_id"),
analytics.Attribute("organization_id"),
analytics.Attribute("group_id"),
)
user_id: str | None = None
default_user_id: str
organization_id: str
group_id: str


analytics.register(IssueAssignedEvent)
17 changes: 7 additions & 10 deletions src/sentry/analytics/events/issue_deleted.py
Original file line number Diff line number Diff line change
@@ -1,17 +1,14 @@
from sentry import analytics


@analytics.eventclass("issue.deleted")
class IssueDeletedEvent(analytics.Event):
type = "issue.deleted"

attributes = (
analytics.Attribute("group_id"),
analytics.Attribute("delete_type"),
analytics.Attribute("organization_id"),
analytics.Attribute("project_id"),
analytics.Attribute("user_id", required=False),
analytics.Attribute("default_user_id"),
)
group_id: str
delete_type: str
organization_id: str
project_id: str
user_id: str | None = None
default_user_id: str


analytics.register(IssueDeletedEvent)
15 changes: 6 additions & 9 deletions src/sentry/analytics/events/issue_escalating.py
Original file line number Diff line number Diff line change
@@ -1,16 +1,13 @@
from sentry import analytics


@analytics.eventclass("issue.escalating")
class IssueEscalatingEvent(analytics.Event):
type = "issue.escalating"

attributes = (
analytics.Attribute("organization_id", type=int),
analytics.Attribute("project_id", type=int),
analytics.Attribute("group_id"),
analytics.Attribute("event_id", required=False),
analytics.Attribute("was_until_escalating"),
)
organization_id: int
project_id: int
group_id: str
event_id: str | None = None
was_until_escalating: str


analytics.register(IssueEscalatingEvent)
13 changes: 5 additions & 8 deletions src/sentry/analytics/events/issue_mark_reviewed.py
Original file line number Diff line number Diff line change
@@ -1,15 +1,12 @@
from sentry import analytics


@analytics.eventclass("issue.mark_reviewed")
class IssueMarkReviewedEvent(analytics.Event):
type = "issue.mark_reviewed"

attributes = (
analytics.Attribute("user_id", required=False),
analytics.Attribute("default_user_id"),
analytics.Attribute("organization_id"),
analytics.Attribute("group_id"),
)
user_id: str | None = None
default_user_id: str
organization_id: str
group_id: str


analytics.register(IssueMarkReviewedEvent)
23 changes: 10 additions & 13 deletions src/sentry/analytics/events/issue_resolved.py
Original file line number Diff line number Diff line change
@@ -1,20 +1,17 @@
from sentry import analytics


@analytics.eventclass("issue.resolved")
class IssueResolvedEvent(analytics.Event):
type = "issue.resolved"

attributes = (
analytics.Attribute("user_id", required=False),
analytics.Attribute("project_id", required=False),
analytics.Attribute("default_user_id"),
analytics.Attribute("organization_id"),
analytics.Attribute("group_id"),
analytics.Attribute("resolution_type"),
# TODO: make required once we validate that all events have this
analytics.Attribute("issue_category", required=False),
analytics.Attribute("issue_type", required=False),
)
user_id: int | None = None
project_id: int | None = None
default_user_id: str
organization_id: int
group_id: int
resolution_type: str
# TODO: make required once we validate that all events have this
issue_category: str | None = None
issue_type: str | None = None


analytics.register(IssueResolvedEvent)
15 changes: 6 additions & 9 deletions src/sentry/analytics/events/issue_unignored.py
Original file line number Diff line number Diff line change
@@ -1,16 +1,13 @@
from sentry import analytics


@analytics.eventclass("issue.unignored")
class IssueUnignoredEvent(analytics.Event):
type = "issue.unignored"

attributes = (
analytics.Attribute("user_id", type=int, required=False),
analytics.Attribute("default_user_id", type=int),
analytics.Attribute("organization_id", type=int),
analytics.Attribute("group_id"),
analytics.Attribute("transition_type"),
)
user_id: int | None = None
default_user_id: int
organization_id: int
group_id: str
transition_type: str


analytics.register(IssueUnignoredEvent)
11 changes: 4 additions & 7 deletions src/sentry/analytics/events/onboarding_complete.py
Original file line number Diff line number Diff line change
@@ -1,14 +1,11 @@
from sentry import analytics


@analytics.eventclass("onboarding.complete")
class OnboardingCompleteEvent(analytics.Event):
type = "onboarding.complete"

attributes = (
analytics.Attribute("user_id"),
analytics.Attribute("organization_id"),
analytics.Attribute("referrer"),
)
user_id: int
organization_id: int
referrer: str


analytics.register(OnboardingCompleteEvent)
13 changes: 5 additions & 8 deletions src/sentry/analytics/events/plugin_enabled.py
Original file line number Diff line number Diff line change
@@ -1,15 +1,12 @@
from sentry import analytics


@analytics.eventclass("plugin.enabled")
class PluginEnabledEvent(analytics.Event):
type = "plugin.enabled"

attributes = (
analytics.Attribute("user_id"),
analytics.Attribute("organization_id"),
analytics.Attribute("project_id"),
analytics.Attribute("plugin"),
)
user_id: int | None
organization_id: str
project_id: str
plugin: str


analytics.register(PluginEnabledEvent)
15 changes: 6 additions & 9 deletions src/sentry/analytics/events/repo_linked.py
Original file line number Diff line number Diff line change
@@ -1,16 +1,13 @@
from sentry import analytics


@analytics.eventclass("repo.linked")
class RepoLinkedEvent(analytics.Event):
type = "repo.linked"

attributes = (
analytics.Attribute("user_id", required=False),
analytics.Attribute("default_user_id"),
analytics.Attribute("organization_id"),
analytics.Attribute("repository_id"),
analytics.Attribute("provider"),
)
user_id: str | None = None
default_user_id: str
organization_id: str
repository_id: str
provider: str


analytics.register(RepoLinkedEvent)
Loading
Loading