samplingAnalyticsEvents.tsx 5.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150
  1. import {SamplingInnerName} from 'sentry/types/sampling';
  2. type Rule = {
  3. conditions: SamplingInnerName[] | string[];
  4. conditions_stringified: string;
  5. project_id: string;
  6. sampling_rate: number | null;
  7. };
  8. export type SamplingEventParameters = {
  9. 'sampling.sdk.client.rate.change.alert': {
  10. project_id: string;
  11. };
  12. 'sampling.sdk.incompatible.alert': {
  13. project_id: string;
  14. };
  15. 'sampling.sdk.updgrades.alert': {
  16. project_id: string;
  17. };
  18. 'sampling.settings.modal.recommended.next.steps_back': {
  19. project_id: string;
  20. };
  21. 'sampling.settings.modal.recommended.next.steps_cancel': {
  22. project_id: string;
  23. };
  24. 'sampling.settings.modal.recommended.next.steps_done': {
  25. project_id: string;
  26. };
  27. 'sampling.settings.modal.recommended.next.steps_read_docs': {
  28. project_id: string;
  29. };
  30. 'sampling.settings.modal.specific.rule.condition_add': {
  31. conditions: SamplingInnerName[] | string[];
  32. project_id: string;
  33. };
  34. 'sampling.settings.modal.specify.client.open': {
  35. project_id: string;
  36. };
  37. 'sampling.settings.modal.specify.client.rate_cancel': {
  38. project_id: string;
  39. };
  40. 'sampling.settings.modal.specify.client.rate_next': {
  41. project_id: string;
  42. };
  43. 'sampling.settings.modal.specify.client.rate_read_docs': {
  44. project_id: string;
  45. };
  46. 'sampling.settings.modal.uniform.rate_cancel': {
  47. project_id: string;
  48. };
  49. 'sampling.settings.modal.uniform.rate_done': {
  50. project_id: string;
  51. };
  52. 'sampling.settings.modal.uniform.rate_next': {
  53. project_id: string;
  54. };
  55. 'sampling.settings.modal.uniform.rate_read_docs': {
  56. project_id: string;
  57. };
  58. 'sampling.settings.modal.uniform.rate_switch_current': {
  59. project_id: string;
  60. };
  61. 'sampling.settings.modal.uniform.rate_switch_recommended': {
  62. project_id: string;
  63. };
  64. 'sampling.settings.rule.specific_activate': Rule;
  65. 'sampling.settings.rule.specific_create': Rule;
  66. 'sampling.settings.rule.specific_deactivate': Rule;
  67. 'sampling.settings.rule.specific_delete': Rule;
  68. 'sampling.settings.rule.specific_save': Rule;
  69. 'sampling.settings.rule.specific_update': Rule & {
  70. old_conditions: Rule['conditions'];
  71. old_conditions_stringified: string;
  72. old_sampling_rate: Rule['sampling_rate'];
  73. };
  74. 'sampling.settings.rule.uniform_activate': {
  75. project_id: string;
  76. sampling_rate: Rule['sampling_rate'];
  77. };
  78. 'sampling.settings.rule.uniform_create': {
  79. old_sampling_rate: Rule['sampling_rate'];
  80. project_id: string;
  81. sampling_rate: Rule['sampling_rate'];
  82. };
  83. 'sampling.settings.rule.uniform_deactivate': {
  84. project_id: string;
  85. sampling_rate: Rule['sampling_rate'];
  86. };
  87. 'sampling.settings.rule.uniform_save': {
  88. old_sampling_rate: Rule['sampling_rate'];
  89. project_id: string;
  90. sampling_rate: Rule['sampling_rate'];
  91. };
  92. 'sampling.settings.rule.uniform_update': {
  93. old_sampling_rate: Rule['sampling_rate'];
  94. project_id: string;
  95. sampling_rate: Rule['sampling_rate'];
  96. };
  97. 'sampling.settings.view': {project_id: string};
  98. 'sampling.settings.view_get_started': {
  99. project_id: string;
  100. };
  101. 'sampling.settings.view_read_docs': {
  102. project_id: string;
  103. };
  104. };
  105. type SamplingAnalyticsKey = keyof SamplingEventParameters;
  106. export const samplingEventMap: Record<SamplingAnalyticsKey, string> = {
  107. 'sampling.sdk.client.rate.change.alert': 'Recommended sdk client rate change alert',
  108. 'sampling.sdk.updgrades.alert': 'Recommended sdk upgrades alert',
  109. 'sampling.sdk.incompatible.alert': 'Incompatible sdk upgrades alert',
  110. 'sampling.settings.modal.recommended.next.steps_back': 'Go back to uniform rate step',
  111. 'sampling.settings.modal.recommended.next.steps_cancel':
  112. 'Cancel at recommended next steps step ',
  113. 'sampling.settings.modal.recommended.next.steps_done':
  114. 'Create uniform rule at recommended next steps step',
  115. 'sampling.settings.modal.recommended.next.steps_read_docs':
  116. 'Read docs at recommended next steps step',
  117. 'sampling.settings.rule.specific_activate': 'Activate specific rule',
  118. 'sampling.settings.modal.uniform.rate_cancel': 'Cancel at uniform rate step',
  119. 'sampling.settings.rule.specific_deactivate': 'Deactivate specific rule',
  120. 'sampling.settings.modal.uniform.rate_done': 'Create uniform rule at uniform rate step',
  121. 'sampling.settings.modal.uniform.rate_next': 'Go to recommended next steps step',
  122. 'sampling.settings.modal.uniform.rate_read_docs': 'Read docs at uniform rate step',
  123. 'sampling.settings.modal.uniform.rate_switch_current':
  124. 'Switch to current uniform rate step',
  125. 'sampling.settings.modal.uniform.rate_switch_recommended':
  126. 'Switch to recommended next steps step',
  127. 'sampling.settings.modal.specific.rule.condition_add': 'Add sampling condition',
  128. 'sampling.settings.modal.specify.client.rate_read_docs':
  129. 'Read docs at specify client rate step',
  130. 'sampling.settings.modal.specify.client.rate_cancel':
  131. 'Cancel at specify client rate step',
  132. 'sampling.settings.modal.specify.client.rate_next': 'Go to uniform rate step',
  133. 'sampling.settings.modal.specify.client.open': 'Open specify client step',
  134. 'sampling.settings.rule.specific_create': 'Create specific sampling rule',
  135. 'sampling.settings.rule.specific_delete': 'Delete specific sampling rule',
  136. 'sampling.settings.rule.specific_save': 'Save specific sampling rule', // fired for both create and update
  137. 'sampling.settings.rule.specific_update': 'Update specific sampling rule',
  138. 'sampling.settings.rule.uniform_activate': 'Activate uniform sampling rule',
  139. 'sampling.settings.rule.uniform_create': 'Create uniform sampling rule',
  140. 'sampling.settings.rule.uniform_deactivate': 'Deactivate uniform sampling rule',
  141. 'sampling.settings.rule.uniform_save': 'Save uniform sampling rule', // fired for both create and update
  142. 'sampling.settings.rule.uniform_update': 'Update uniform sampling rule',
  143. 'sampling.settings.view': 'View sampling settings',
  144. 'sampling.settings.view_get_started': 'Get started with sampling',
  145. 'sampling.settings.view_read_docs': 'Read sampling docs', // fired for all read docs buttons
  146. };