Create addUserData method in the analytics providers
This allows us to globally add arbitrary data to the events and transactions
This commit is contained in:
parent
d1fd3020a0
commit
5ca108c526
3 changed files with 15 additions and 0 deletions
|
|
@ -149,6 +149,12 @@ class DefaultAnalyticsService(
|
|||
}
|
||||
}
|
||||
|
||||
override fun addUserData(key: String, value: String) {
|
||||
if (userConsent.get()) {
|
||||
analyticsProviders.onEach { it.addUserData(key, value) }
|
||||
}
|
||||
}
|
||||
|
||||
override fun startTransaction(name: String, operation: String?): AnalyticsTransaction {
|
||||
return if (userConsent.get()) {
|
||||
analyticsProviders.firstNotNullOfOrNull { it.startTransaction(name, operation) }
|
||||
|
|
|
|||
|
|
@ -35,6 +35,11 @@ interface AnalyticsTracker {
|
|||
* Super properties are added to any tracked event automatically.
|
||||
*/
|
||||
fun updateSuperProperties(updatedProperties: SuperProperties)
|
||||
|
||||
/**
|
||||
* Adds user data that will be sent with every event.
|
||||
*/
|
||||
fun addUserData(key: String, value: String) {}
|
||||
}
|
||||
|
||||
fun AnalyticsTracker.captureInteraction(name: Interaction.Name, type: Interaction.InteractionType? = null) {
|
||||
|
|
|
|||
|
|
@ -86,6 +86,10 @@ class SentryAnalyticsProvider(
|
|||
override fun updateSuperProperties(updatedProperties: SuperProperties) {
|
||||
}
|
||||
|
||||
override fun addUserData(key: String, value: String) {
|
||||
Sentry.setExtra(key, value)
|
||||
}
|
||||
|
||||
override fun trackError(throwable: Throwable) {
|
||||
Sentry.captureException(throwable)
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue