about summary refs log tree commit diff
path: root/src/logger/bitdrift/setup/index.ts
blob: dd2560acc6e43ba7d93346a1d3e7ef1f21899f6b (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
import {init, SessionStrategy} from '@bitdrift/react-native'
import {Statsig} from 'statsig-react-native-expo'

import {initPromise} from '#/lib/statsig/statsig'
import {BITDRIFT_API_KEY} from '#/env'

initPromise.then(() => {
  let isEnabled = false
  let isNetworkEnabled = false
  try {
    if (Statsig.checkGate('enable_bitdrift_v2')) {
      isEnabled = true
    }
    if (Statsig.checkGate('enable_bitdrift_v2_networking')) {
      isNetworkEnabled = true
    }
  } catch (e) {
    // Statsig may complain about it being called too early.
  }
  if (isEnabled && BITDRIFT_API_KEY) {
    init(BITDRIFT_API_KEY, SessionStrategy.Activity, {
      url: 'https://api-bsky.bitdrift.io',
      // Only effects iOS, Android instrumentation is set via Gradle Plugin
      enableNetworkInstrumentation: isNetworkEnabled,
    })
  }
})