Update the transport types of metrics
In the current design, the transport types of metrics won't be updated when the underlying network of VPN is changed. Update the transport types of metrics when getMetricsForNetwork() is called. And since the underlying network is changed, enforce to collect the pending metrics before updating the transport types. dns/connect events: // The original underlying network is wifi, but now it's replaced by mobile data. ConnectStats(netId=105, transports={0, 4}, 0 events, 0 success, 0 blocking, 0 IPv6 dst) DnsEvent(netId=105, transports={0, 4}, 4 events, 4 success) network statistics: // Wifi is the underlying network of VPN {netId=105, transports={1, 4}, dns avg=488ms max=633ms err=0.0% tot=2, connect avg=0ms max=0ms err=0.0% tot=0, tcp avg_loss=0.0% total_sent=0 total_lost=0, tcp rtt=0ms, tcp sent-ack_diff=0ms} // Mobile data is the underlying network of VPN {netId=105, transports={0, 4}, dns avg=633ms max=633ms err=0.0% tot=1, connect avg=0ms max=0ms err=0.0% tot=0, tcp avg_loss=0.0% total_sent=0 total_lost=0, tcp rtt=0ms, tcp sent-ack_diff=0ms} Bug: 189166339 Test: Manual test. Change-Id: I9b1d0c635f30d0c88d85777d820b15e546bda60b
Loading
Please register or sign in to comment