Browse Source

feat(issue-details): Add analytics for has_exception_group (#50182)

Malachi Willey 1 year ago
parent
commit
579ae91309

+ 1 - 0
static/app/utils/analytics/workflowAnalyticsEvents.tsx

@@ -20,6 +20,7 @@ interface IssueDetailsWithAlert extends CommonGroupAnalyticsData {
 export type BaseEventAnalyticsParams = {
   event_id: string;
   has_commit: boolean;
+  has_exception_group: boolean;
   has_release: boolean;
   has_source_maps: boolean;
   has_trace: boolean;

+ 8 - 0
static/app/utils/events.tsx

@@ -315,6 +315,13 @@ function getNumberOfThreadsWithNames(event: Event) {
   return Math.max(...threadLengths);
 }
 
+export function eventHasExceptionGroup(event: Event) {
+  const exceptionEntries = getExceptionEntries(event);
+  return exceptionEntries.some(entry =>
+    entry.data.values?.some(({mechanism}) => mechanism?.is_exception_group)
+  );
+}
+
 /**
  * Return the integration type for the first assignment via integration
  */
@@ -343,6 +350,7 @@ export function getAnalyticsDataForEvent(event?: Event | null): BaseEventAnalyti
     event_platform: event?.platform,
     event_type: event?.type,
     has_release: !!event?.release,
+    has_exception_group: event ? eventHasExceptionGroup(event) : false,
     has_source_maps: event ? eventHasSourceMaps(event) : false,
     has_trace: event ? hasTrace(event) : false,
     has_commit: !!event?.release?.lastCommit,