diff options
author | 2017-07-05 15:11:24 +0000 | |
---|---|---|
committer | 2017-07-05 15:11:24 +0000 | |
commit | 6f76e7f96d34215dcff29982e65d2f642e6578aa (patch) | |
tree | c909f04de38fedab5605ce4b3a988a3fbe6f381f | |
parent | 4969de56ab0ce02f06e457e089032bf8e3ad51b5 (diff) | |
parent | 70bdcffbd9b4e633ed5cf26e163a6109623754c9 (diff) |
Better logging infrastructure in OffloadHardwareInterface am: 248e736f11
am: 70bdcffbd9
Change-Id: I3b178f4bb798d9ac59b366723d19e3189d39942e
-rw-r--r-- | services/core/java/com/android/server/connectivity/tethering/OffloadHardwareInterface.java | 45 |
1 files changed, 37 insertions, 8 deletions
diff --git a/services/core/java/com/android/server/connectivity/tethering/OffloadHardwareInterface.java b/services/core/java/com/android/server/connectivity/tethering/OffloadHardwareInterface.java index 1fc16841e355..09fd96b4966e 100644 --- a/services/core/java/com/android/server/connectivity/tethering/OffloadHardwareInterface.java +++ b/services/core/java/com/android/server/connectivity/tethering/OffloadHardwareInterface.java @@ -76,6 +76,10 @@ public class OffloadHardwareInterface { } } + final String logmsg = String.format("initOffloadControl(%s)", + (controlCb == null) ? "null" + : "0x" + Integer.toHexString(System.identityHashCode(controlCb))); + mTetheringOffloadCallback = new TetheringOffloadCallback(mHandler, mControlCallback); final CbResults results = new CbResults(); try { @@ -86,11 +90,11 @@ public class OffloadHardwareInterface { results.errMsg = errMsg; }); } catch (RemoteException e) { - mLog.e("failed to initOffload: " + e); + record(logmsg, e); return false; } - if (!results.success) mLog.e("initOffload failed: " + results.errMsg); + record(logmsg, results); return results.success; } @@ -108,14 +112,18 @@ public class OffloadHardwareInterface { mOffloadControl = null; mTetheringOffloadCallback = null; mControlCallback = null; + mLog.log("stopOffloadControl()"); } public boolean setUpstreamParameters( String iface, String v4addr, String v4gateway, ArrayList<String> v6gws) { - iface = iface != null ? iface : NO_INTERFACE_NAME; - v4addr = v4addr != null ? v4addr : NO_IPV4_ADDRESS; - v4gateway = v4gateway != null ? v4gateway : NO_IPV4_GATEWAY; - v6gws = v6gws != null ? v6gws : new ArrayList<>(); + iface = (iface != null) ? iface : NO_INTERFACE_NAME; + v4addr = (v4addr != null) ? v4addr : NO_IPV4_ADDRESS; + v4gateway = (v4gateway != null) ? v4gateway : NO_IPV4_GATEWAY; + v6gws = (v6gws != null) ? v6gws : new ArrayList<>(); + + final String logmsg = String.format("setUpstreamParameters(%s, %s, %s, [%s])", + iface, v4addr, v4gateway, String.join(",", v6gws)); final CbResults results = new CbResults(); try { @@ -126,14 +134,27 @@ public class OffloadHardwareInterface { results.errMsg = errMsg; }); } catch (RemoteException e) { - mLog.e("failed to setUpstreamParameters: " + e); + record(logmsg, e); return false; } - if (!results.success) mLog.e("setUpstreamParameters failed: " + results.errMsg); + record(logmsg, results); return results.success; } + private void record(String msg, Throwable t) { + mLog.e(msg + " -> exception: " + t); + } + + private void record(String msg, CbResults results) { + final String logmsg = msg + " -> " + results; + if (!results.success) { + mLog.e(logmsg); + } else { + mLog.log(logmsg); + } + } + private static class TetheringOffloadCallback extends ITetheringOffloadCallback.Stub { public final Handler handler; public final ControlCallback controlCb; @@ -162,5 +183,13 @@ public class OffloadHardwareInterface { private static class CbResults { boolean success; String errMsg; + + public String toString() { + if (success) { + return "ok"; + } else { + return "fail: " + errMsg; + } + } } } |