Skip to content

Commit

Permalink
Add missing pixels for VPN SLIs (#4550)
Browse files Browse the repository at this point in the history
Task/Issue URL:
https://app.asana.com/0/488551667048375/1207254853869855/f

### Description
See attached task description

### Steps to test this PR
https://app.asana.com/0/488551667048375/1207254853869855/f
  • Loading branch information
karlenDimla authored May 16, 2024
1 parent bf73d84 commit 6e17548
Show file tree
Hide file tree
Showing 4 changed files with 13 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -127,6 +127,7 @@ enum class DeviceShieldPixelNames(override val pixelName: String, val enqueue: B
ATP_DID_REPORT_ISSUES_FROM_TRACKER_ACTIVITY_DAILY("m_atp_imp_tracker_activity_report_issues_d"),

ATP_APP_BREAKAGE_REPORT("m_atp_breakage_report"),
ATP_APP_BREAKAGE_REPORT_DAILY("m_atp_breakage_report_d"),
ATP_APP_BREAKAGE_REPORT_UNIQUE("m_atp_breakage_report_u"),
ATP_APP_CPU_MONITOR_REPORT("m_atp_ev_cpu_usage_above_%d"),

Expand Down Expand Up @@ -222,5 +223,7 @@ enum class DeviceShieldPixelNames(override val pixelName: String, val enqueue: B
VPN_SNOOZE_ENDED_DAILY("m_vpn_ev_snooze_ended_d", enqueue = true),

VPN_MOTO_G_FIX_DAILY("m_vpn_ev_moto_g_fix_d", enqueue = true),
VPN_START_ATTEMPT("m_vpn_ev_start_attempt_c", enqueue = true),
VPN_START_ATTEMPT_FAILURE("m_vpn_ev_start_attempt_failure_c", enqueue = true),
;
}
Original file line number Diff line number Diff line change
Expand Up @@ -359,6 +359,8 @@ interface DeviceShieldPixels {
fun reportVpnSnoozedEnded()

fun reportMotoGFix()

fun reportVpnStartAttempt()
}

@ContributesBinding(AppScope::class)
Expand Down Expand Up @@ -514,6 +516,7 @@ class RealDeviceShieldPixels @Inject constructor(
override fun startError() {
tryToFireDailyPixel(DeviceShieldPixelNames.ATP_START_ERROR_DAILY)
firePixel(DeviceShieldPixelNames.ATP_START_ERROR)
firePixel(DeviceShieldPixelNames.VPN_START_ATTEMPT_FAILURE)
}

override fun automaticRestart() {
Expand Down Expand Up @@ -604,6 +607,7 @@ class RealDeviceShieldPixels @Inject constructor(

override fun sendAppBreakageReport(metadata: Map<String, String>) {
firePixel(DeviceShieldPixelNames.ATP_APP_BREAKAGE_REPORT, metadata)
tryToFireDailyPixel(DeviceShieldPixelNames.ATP_APP_BREAKAGE_REPORT_DAILY, metadata)
tryToFireUniquePixel(DeviceShieldPixelNames.ATP_APP_BREAKAGE_REPORT_UNIQUE, payload = metadata)
}

Expand Down Expand Up @@ -766,6 +770,10 @@ class RealDeviceShieldPixels @Inject constructor(
tryToFireDailyPixel(DeviceShieldPixelNames.VPN_MOTO_G_FIX_DAILY)
}

override fun reportVpnStartAttempt() {
firePixel(DeviceShieldPixelNames.VPN_START_ATTEMPT)
}

private fun suddenKill() {
firePixel(DeviceShieldPixelNames.ATP_KILLED)
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -295,6 +295,7 @@ class TrackerBlockingVpnService : VpnService(), CoroutineScope by MainScope(), V
vpnNetworkStack.onCreateVpnWithErrorReporting()
logcat { "VPN log: NEW network ${vpnNetworkStack.name}" }
}
deviceShieldPixels.reportVpnStartAttempt()
dnsChangeCallback.unregister()

vpnServiceStateStatsDao.insert(createVpnState(state = ENABLING))
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -252,6 +252,7 @@ class RealDeviceShieldPixelsTest {

verify(pixel).fire(DeviceShieldPixelNames.ATP_START_ERROR_DAILY.pixelName)
verify(pixel, times(2)).fire(DeviceShieldPixelNames.ATP_START_ERROR.pixelName)
verify(pixel, times(2)).enqueueFire(DeviceShieldPixelNames.VPN_START_ATTEMPT_FAILURE.pixelName)
verifyNoMoreInteractions(pixel)
}

Expand Down

0 comments on commit 6e17548

Please sign in to comment.