diff --git a/src/pages/AdHocView/ui/tabs/AdHocSingle.tsx b/src/pages/AdHocView/ui/tabs/AdHocSingle.tsx index 90260520..17d26502 100644 --- a/src/pages/AdHocView/ui/tabs/AdHocSingle.tsx +++ b/src/pages/AdHocView/ui/tabs/AdHocSingle.tsx @@ -1,3 +1,5 @@ +import { SelectableValue } from '@grafana/data'; +import { reportInteraction } from '@shared/domain/reportInteraction'; import React, { memo } from 'react'; import { useUploadFile } from '../../domain/useUploadFile'; @@ -9,10 +11,25 @@ import { AdHocSpinner } from '../AdHocSpinner'; function AdHocSingleComponent() { const { processFile, profileTypes, selectProfileType, profile, removeFile, isLoading } = useUploadFile(); + const onChangeProfileType = (options: SelectableValue) => { + reportInteraction('g_pyroscope_app_ad_hoc_profile_metric_selected'); + selectProfileType(options); + }; + + const onFileDropped = (file: File) => { + reportInteraction('g_pyroscope_app_ad_hoc_file_dropped', { fileType: file.type }); + processFile(file); + }; + + const onFileRemoved = () => { + reportInteraction('g_pyroscope_app_ad_hoc_file_removed'); + removeFile(); + }; + return (
- - + + {isLoading && !profile ? : null} {profile && }
diff --git a/src/shared/domain/reportInteraction.ts b/src/shared/domain/reportInteraction.ts index 2f1d1359..954cec58 100644 --- a/src/shared/domain/reportInteraction.ts +++ b/src/shared/domain/reportInteraction.ts @@ -9,6 +9,12 @@ import { GIT_COMMIT } from '../../version'; // hey future dev: don't forget to add any new value to our features tracking dashboard! export type Interactions = { + g_pyroscope_app_ad_hoc_file_dropped: { + fileType: string; + }; + g_pyroscope_app_ad_hoc_file_removed: {}; + g_pyroscope_app_ad_hoc_profile_metric_selected: {}; + g_pyroscope_app_ad_hoc_profile: {}; g_pyroscope_app_compare_link_clicked: {}; g_pyroscope_app_diff_auto_select_clicked: {}; g_pyroscope_app_diff_choose_preset_clicked: {};