12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394 |
- import * as Sentry from '@sentry/react';
- import type {Organization} from 'sentry/types/organization';
- import {trackAnalytics} from 'sentry/utils/analytics';
- import type {TraceType} from './traceType';
- const trackTraceShape = (shape: TraceType, organization: Organization) => {
- Sentry.metrics.increment(`trace.trace_shape.${shape}`);
- trackAnalytics('trace.shape', {
- shape,
- organization,
- });
- };
- const trackFailedToFetchTraceState = () =>
- Sentry.metrics.increment('trace.failed_to_fetch_trace');
- const trackEmptyTraceState = () => Sentry.metrics.increment('trace.empty_trace');
- const trackLayoutChange = (layout: string, organization: Organization) =>
- trackAnalytics('trace.trace_layout.change', {
- layout,
- organization,
- });
- const trackDrawerMinimize = (organization: Organization) =>
- trackAnalytics('trace.trace_layout.drawer_minimize', {
- organization,
- });
- const trackShowInView = (organization: Organization) =>
- trackAnalytics('trace.trace_layout.show_in_view', {
- organization,
- });
- const trackViewEventJSON = (organization: Organization) =>
- trackAnalytics('trace.trace_layout.view_event_json', {
- organization,
- });
- const trackTabPin = (organization: Organization) =>
- trackAnalytics('trace.trace_layout.tab_pin', {
- organization,
- });
- const trackTabView = (tab: string, organization: Organization) =>
- trackAnalytics('trace.trace_layout.tab_view', {
- organization,
- tab,
- });
- const trackSearchFocus = (organization: Organization) =>
- trackAnalytics('trace.trace_layout.search_focus', {
- organization,
- });
- const trackResetZoom = (organization: Organization) =>
- trackAnalytics('trace.trace_layout.reset_zoom', {
- organization,
- });
- const trackViewShortcuts = (organization: Organization) =>
- trackAnalytics('trace.trace_layout.view_shortcuts', {
- organization,
- });
- const trackTraceWarningType = (type: TraceType, organization: Organization) =>
- trackAnalytics('trace.trace_warning_type', {
- organization,
- type,
- });
- const traceAnalytics = {
- // Trace shape
- trackTraceShape,
- trackEmptyTraceState,
- trackFailedToFetchTraceState,
- // Drawer actions
- trackShowInView,
- trackViewEventJSON,
- // Layout actions
- trackLayoutChange,
- trackDrawerMinimize,
- trackSearchFocus,
- trackTabPin,
- trackTabView,
- // Toolbar actions
- trackResetZoom,
- trackViewShortcuts,
- trackTraceWarningType,
- };
- export {traceAnalytics};
|