Refactor IP connectivity event logging am: be0c7651f6
am: ca1f22591f
Change-Id: If8775031f2a293e94e564dde502d0775d5808fe6
This commit is contained in:
@@ -76,6 +76,7 @@ import android.net.RouteInfo;
|
|||||||
import android.net.UidRange;
|
import android.net.UidRange;
|
||||||
import android.net.Uri;
|
import android.net.Uri;
|
||||||
import android.net.metrics.DefaultNetworkEvent;
|
import android.net.metrics.DefaultNetworkEvent;
|
||||||
|
import android.net.metrics.IpConnectivityLog;
|
||||||
import android.net.metrics.NetworkEvent;
|
import android.net.metrics.NetworkEvent;
|
||||||
import android.os.Binder;
|
import android.os.Binder;
|
||||||
import android.os.Build;
|
import android.os.Build;
|
||||||
@@ -454,6 +455,8 @@ public class ConnectivityService extends IConnectivityManager.Stub
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private final IpConnectivityLog mMetricsLog = new IpConnectivityLog();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Implements support for the legacy "one network per network type" model.
|
* Implements support for the legacy "one network per network type" model.
|
||||||
*
|
*
|
||||||
@@ -2208,7 +2211,7 @@ public class ConnectivityService extends IConnectivityManager.Stub
|
|||||||
|
|
||||||
private void linger(NetworkAgentInfo nai) {
|
private void linger(NetworkAgentInfo nai) {
|
||||||
nai.lingering = true;
|
nai.lingering = true;
|
||||||
NetworkEvent.logEvent(nai.network.netId, NetworkEvent.NETWORK_LINGER);
|
logNetworkEvent(nai, NetworkEvent.NETWORK_LINGER);
|
||||||
nai.networkMonitor.sendMessage(NetworkMonitor.CMD_NETWORK_LINGER);
|
nai.networkMonitor.sendMessage(NetworkMonitor.CMD_NETWORK_LINGER);
|
||||||
notifyNetworkCallbacks(nai, ConnectivityManager.CALLBACK_LOSING);
|
notifyNetworkCallbacks(nai, ConnectivityManager.CALLBACK_LOSING);
|
||||||
}
|
}
|
||||||
@@ -2222,7 +2225,7 @@ public class ConnectivityService extends IConnectivityManager.Stub
|
|||||||
nai.networkLingered.clear();
|
nai.networkLingered.clear();
|
||||||
if (!nai.lingering) return;
|
if (!nai.lingering) return;
|
||||||
nai.lingering = false;
|
nai.lingering = false;
|
||||||
NetworkEvent.logEvent(nai.network.netId, NetworkEvent.NETWORK_UNLINGER);
|
logNetworkEvent(nai, NetworkEvent.NETWORK_UNLINGER);
|
||||||
if (VDBG) log("Canceling linger of " + nai.name());
|
if (VDBG) log("Canceling linger of " + nai.name());
|
||||||
nai.networkMonitor.sendMessage(NetworkMonitor.CMD_NETWORK_CONNECTED);
|
nai.networkMonitor.sendMessage(NetworkMonitor.CMD_NETWORK_CONNECTED);
|
||||||
}
|
}
|
||||||
@@ -5245,7 +5248,7 @@ public class ConnectivityService extends IConnectivityManager.Stub
|
|||||||
return new NetworkMonitor(context, handler, nai, defaultRequest);
|
return new NetworkMonitor(context, handler, nai, defaultRequest);
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void logDefaultNetworkEvent(NetworkAgentInfo newNai, NetworkAgentInfo prevNai) {
|
private void logDefaultNetworkEvent(NetworkAgentInfo newNai, NetworkAgentInfo prevNai) {
|
||||||
int newNetid = NETID_UNSET;
|
int newNetid = NETID_UNSET;
|
||||||
int prevNetid = NETID_UNSET;
|
int prevNetid = NETID_UNSET;
|
||||||
int[] transports = new int[0];
|
int[] transports = new int[0];
|
||||||
@@ -5263,6 +5266,10 @@ public class ConnectivityService extends IConnectivityManager.Stub
|
|||||||
hadIPv6 = lp.hasGlobalIPv6Address() && lp.hasIPv6DefaultRoute();
|
hadIPv6 = lp.hasGlobalIPv6Address() && lp.hasIPv6DefaultRoute();
|
||||||
}
|
}
|
||||||
|
|
||||||
DefaultNetworkEvent.logEvent(newNetid, transports, prevNetid, hadIPv4, hadIPv6);
|
mMetricsLog.log(new DefaultNetworkEvent(newNetid, transports, prevNetid, hadIPv4, hadIPv6));
|
||||||
|
}
|
||||||
|
|
||||||
|
private void logNetworkEvent(NetworkAgentInfo nai, int evtype) {
|
||||||
|
mMetricsLog.log(new NetworkEvent(nai.network.netId, evtype));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user