Merge "Connectivity Metrics service: dump throttling states to dumpsys" into nyc-dev

am: aabed1c5f8

* commit 'aabed1c5f8d2bdbcf4c854fadf9c50a8fd1bc0a6':
  Connectivity Metrics service: dump throttling states to dumpsys

Change-Id: I88679a6e2c75bbdd37ab43145314b8f7381a76a3
This commit is contained in:
Pavel Zhamaitsiak
2016-05-02 17:08:20 +00:00
committed by android-build-merger

View File

@@ -144,8 +144,13 @@ public class MetricsLoggerService extends SystemService {
boolean dumpSerializedSize = false;
boolean dumpEvents = false;
boolean dumpDebugInfo = false;
for (String arg : args) {
switch (arg) {
case "--debug":
dumpDebugInfo = true;
break;
case "--events":
dumpEvents = true;
break;
@@ -155,6 +160,7 @@ public class MetricsLoggerService extends SystemService {
break;
case "--all":
dumpDebugInfo = true;
dumpEvents = true;
dumpSerializedSize = true;
break;
@@ -163,6 +169,7 @@ public class MetricsLoggerService extends SystemService {
synchronized (mEvents) {
pw.println("Number of events: " + mEvents.size());
pw.println("Counter: " + mEventCounter);
if (mEvents.size() > 0) {
pw.println("Time span: " +
DateUtils.formatElapsedTime(
@@ -171,16 +178,12 @@ public class MetricsLoggerService extends SystemService {
}
if (dumpSerializedSize) {
long dataSize = 0;
Parcel p = Parcel.obtain();
for (ConnectivityMetricsEvent e : mEvents) {
dataSize += 16; // timestamp and 2 stamps
p.writeParcelable(e.data, 0);
p.writeParcelable(e, 0);
}
dataSize += p.dataSize();
pw.println("Serialized data size: " + p.dataSize());
p.recycle();
pw.println("Serialized data size: " + dataSize);
}
if (dumpEvents) {
@@ -192,6 +195,21 @@ public class MetricsLoggerService extends SystemService {
}
}
if (dumpDebugInfo) {
synchronized (mThrottlingCounters) {
pw.println();
for (int i = 0; i < ConnectivityMetricsLogger.NUMBER_OF_COMPONENTS; i++) {
if (mThrottlingCounters[i] > 0) {
pw.println("Throttling Counter #" + i + ": " + mThrottlingCounters[i]);
}
}
pw.println("Throttling Time Remaining: " +
DateUtils.formatElapsedTime(
(mThrottlingIntervalBoundaryMillis - System.currentTimeMillis())
/ 1000));
}
}
synchronized (mPendingIntents) {
if (!mPendingIntents.isEmpty()) {
pw.println();