diff --git a/WooCommerce/src/main/kotlin/com/woocommerce/android/analytics/AnalyticsTracker.kt b/WooCommerce/src/main/kotlin/com/woocommerce/android/analytics/AnalyticsTracker.kt index c910bc6359f..e4e7d439d0a 100644 --- a/WooCommerce/src/main/kotlin/com/woocommerce/android/analytics/AnalyticsTracker.kt +++ b/WooCommerce/src/main/kotlin/com/woocommerce/android/analytics/AnalyticsTracker.kt @@ -168,7 +168,7 @@ class AnalyticsTracker private constructor( private const val TRACKS_ANON_ID = "nosara_tracks_anon_id" private const val EVENTS_PREFIX = "woocommerceandroid_" private const val POS_EVENTS_PREFIX = "woocommerceandroid_pos_" - private const val KEY_SITE_URL = "site_url" + const val KEY_SITE_URL = "site_url" const val IS_DEBUG = "is_debug" const val KEY_ALREADY_READ = "already_read" diff --git a/WooCommerce/src/main/kotlin/com/woocommerce/android/applicationpasswords/ApplicationPasswordsNotifier.kt b/WooCommerce/src/main/kotlin/com/woocommerce/android/applicationpasswords/ApplicationPasswordsNotifier.kt index fd66b2c0945..bc77132d0cf 100644 --- a/WooCommerce/src/main/kotlin/com/woocommerce/android/applicationpasswords/ApplicationPasswordsNotifier.kt +++ b/WooCommerce/src/main/kotlin/com/woocommerce/android/applicationpasswords/ApplicationPasswordsNotifier.kt @@ -33,7 +33,10 @@ class ApplicationPasswordsNotifier @Inject constructor( override fun onFeatureUnavailable(siteModel: SiteModel, networkError: WPAPINetworkError) { trackGenerationFailure( cause = GenerationFailureCause.FEATURE_DISABLED, - networkError = networkError + networkError = networkError, + additionalProperties = mapOf( + AnalyticsTracker.KEY_SITE_URL to siteModel.url + ) ) _featureUnavailableEvents.tryEmit(networkError) } @@ -65,7 +68,8 @@ class ApplicationPasswordsNotifier @Inject constructor( private fun trackGenerationFailure( cause: GenerationFailureCause, - networkError: WPAPINetworkError + networkError: WPAPINetworkError, + additionalProperties: Map = emptyMap() ) { val scenario = if (selectedSite.exists()) { GenerationFailureScenario.REGENERATION @@ -78,7 +82,7 @@ class ApplicationPasswordsNotifier @Inject constructor( properties = mapOf( AnalyticsTracker.KEY_SCENARIO to scenario.name.lowercase(), AnalyticsTracker.KEY_CAUSE to cause.name.lowercase() - ), + ) + additionalProperties, errorContext = networkError.javaClass.simpleName, errorType = networkError.type.name, errorDescription = networkError.message diff --git a/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/login/sitecredentials/LoginSiteCredentialsViewModel.kt b/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/login/sitecredentials/LoginSiteCredentialsViewModel.kt index 93304f90a70..26fc03f3356 100644 --- a/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/login/sitecredentials/LoginSiteCredentialsViewModel.kt +++ b/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/login/sitecredentials/LoginSiteCredentialsViewModel.kt @@ -245,7 +245,12 @@ class LoginSiteCredentialsViewModel @Inject constructor( ) ) } else { - analyticsTracker.track(AnalyticsEvent.APPLICATION_PASSWORDS_AUTHORIZATION_URL_NOT_AVAILABLE) + analyticsTracker.track( + AnalyticsEvent.APPLICATION_PASSWORDS_AUTHORIZATION_URL_NOT_AVAILABLE, + properties = mapOf( + AnalyticsTracker.KEY_SITE_URL to siteAddress + ) + ) triggerEvent(ShowApplicationPasswordsUnavailableScreen(siteAddress, site.isJetpackConnected)) } } else {