traceAnalytics.tsx 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. import type {Organization} from 'sentry/types/organization';
  2. import {trackAnalytics} from 'sentry/utils/analytics';
  3. import type {TraceType} from 'sentry/views/performance/traceDetails/newTraceDetailsContent';
  4. const trackLayoutChange = (layout: string, organization: Organization) =>
  5. trackAnalytics('trace.trace_layout.change', {
  6. layout,
  7. organization,
  8. });
  9. const trackDrawerMinimize = (organization: Organization) =>
  10. trackAnalytics('trace.trace_layout.drawer_minimize', {
  11. organization,
  12. });
  13. const trackShowInView = (organization: Organization) =>
  14. trackAnalytics('trace.trace_layout.show_in_view', {
  15. organization,
  16. });
  17. const trackViewEventDetails = (organization: Organization) =>
  18. trackAnalytics('trace.trace_layout.view_event_details', {
  19. organization,
  20. });
  21. const trackViewEventJSON = (organization: Organization) =>
  22. trackAnalytics('trace.trace_layout.view_event_json', {
  23. organization,
  24. });
  25. const trackTabPin = (organization: Organization) =>
  26. trackAnalytics('trace.trace_layout.tab_pin', {
  27. organization,
  28. });
  29. const trackTabView = (tab: string, organization: Organization) =>
  30. trackAnalytics('trace.trace_layout.tab_view', {
  31. organization,
  32. tab,
  33. });
  34. const trackSearchFocus = (organization: Organization) =>
  35. trackAnalytics('trace.trace_layout.search_focus', {
  36. organization,
  37. });
  38. const trackResetZoom = (organization: Organization) =>
  39. trackAnalytics('trace.trace_layout.reset_zoom', {
  40. organization,
  41. });
  42. const trackViewShortcuts = (organization: Organization) =>
  43. trackAnalytics('trace.trace_layout.view_shortcuts', {
  44. organization,
  45. });
  46. const trackTraceWarningType = (type: TraceType, organization: Organization) =>
  47. trackAnalytics('trace.trace_warning_type', {
  48. organization,
  49. type,
  50. });
  51. const traceAnalytics = {
  52. // Drawer actions
  53. trackShowInView,
  54. trackViewEventDetails,
  55. trackViewEventJSON,
  56. // Layout actions
  57. trackLayoutChange,
  58. trackDrawerMinimize,
  59. trackSearchFocus,
  60. trackTabPin,
  61. trackTabView,
  62. // Toolbar actions
  63. trackResetZoom,
  64. trackViewShortcuts,
  65. trackTraceWarningType,
  66. };
  67. export {traceAnalytics};