Skip to content

Commit de8dcd5

Browse files
committed
Added provider property taken from state to all frontend telemetry events
1 parent 995fa28 commit de8dcd5

File tree

1 file changed

+9
-3
lines changed

1 file changed

+9
-3
lines changed

redisinsight/ui/src/telemetry/telemetryUtils.ts

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,14 @@
33
* This module abstracts the exact service/framework used for tracking usage.
44
*/
55
import isGlob from 'is-glob'
6-
import { cloneDeep } from 'lodash'
6+
import { cloneDeep, get } from 'lodash'
77
import jsonpath from 'jsonpath'
88
import { isRedisearchAvailable } from 'uiSrc/utils'
99
import { ApiEndpoints, KeyTypes } from 'uiSrc/constants'
1010
import { KeyViewType } from 'uiSrc/slices/interfaces/keys'
1111
import { IModuleSummary, ITelemetrySendEvent, ITelemetrySendPageView, RedisModulesKeyType } from 'uiSrc/telemetry/interfaces'
1212
import { apiService } from 'uiSrc/services'
13+
import { store } from 'uiSrc/slices/store'
1314
import { AdditionalRedisModule } from 'apiSrc/modules/database/models/additional.redis.module'
1415
import {
1516
IRedisModulesSummary,
@@ -19,6 +20,8 @@ import {
1920
import { TelemetryEvent } from './events'
2021
import { checkIsAnalyticsGranted } from './checkAnalytics'
2122

23+
export const getProvider = (): string => get(store.getState(), 'connections.instances.connectedInstance.provider', '')
24+
2225
const TELEMETRY_EMPTY_VALUE = 'none'
2326

2427
const sendEventTelemetry = async ({ event, eventData = {}, traits = {} }: ITelemetrySendEvent) => {
@@ -27,7 +30,9 @@ const sendEventTelemetry = async ({ event, eventData = {}, traits = {} }: ITelem
2730
if (!isAnalyticsGranted) {
2831
return
2932
}
30-
await apiService.post(`${ApiEndpoints.ANALYTICS_SEND_EVENT}`, { event, eventData, traits })
33+
const provider = getProvider()
34+
await apiService.post(`${ApiEndpoints.ANALYTICS_SEND_EVENT}`,
35+
{ event, eventData: { ...eventData, provider }, traits })
3136
} catch (e) {
3237
// continue regardless of error
3338
}
@@ -39,7 +44,8 @@ const sendPageViewTelemetry = async ({ name, eventData }: ITelemetrySendPageView
3944
if (!isAnalyticsGranted) {
4045
return
4146
}
42-
await apiService.post(`${ApiEndpoints.ANALYTICS_SEND_PAGE}`, { event: name, eventData, })
47+
const provider = getProvider()
48+
await apiService.post(`${ApiEndpoints.ANALYTICS_SEND_PAGE}`, { event: name, eventData: { ...eventData, provider } })
4349
} catch (e) {
4450
// continue regardless of error
4551
}

0 commit comments

Comments
 (0)