Index: chrome/android/java/src/org/chromium/chrome/browser/offlinepages/OfflinePageUtils.java |
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/offlinepages/OfflinePageUtils.java b/chrome/android/java/src/org/chromium/chrome/browser/offlinepages/OfflinePageUtils.java |
index 7340571e8945f8095081e50918edbf214da67fb6..34aba7a8fb834121a67ab1593fe3113f09724706 100644 |
--- a/chrome/android/java/src/org/chromium/chrome/browser/offlinepages/OfflinePageUtils.java |
+++ b/chrome/android/java/src/org/chromium/chrome/browser/offlinepages/OfflinePageUtils.java |
@@ -9,6 +9,7 @@ import android.content.Intent; |
import android.content.IntentFilter; |
import android.os.BatteryManager; |
import android.os.Environment; |
+import android.os.SystemClock; |
import org.chromium.base.Log; |
import org.chromium.base.metrics.RecordHistogram; |
@@ -27,6 +28,8 @@ import org.chromium.net.ConnectionType; |
import org.chromium.net.NetworkChangeNotifier; |
import org.chromium.ui.base.PageTransition; |
+import java.util.concurrent.TimeUnit; |
+ |
/** |
* A class holding static util functions for offline pages. |
*/ |
@@ -203,7 +206,7 @@ public class OfflinePageUtils { |
* Records UMA data when the Offline Pages Background Load service awakens. |
* @param context android context |
*/ |
- public static void recordWakeupUMA(Context context) { |
+ public static void recordWakeupUMA(Context context, long millisSinceBootTask) { |
dougarnett
2016/06/02 22:32:53
wonder if ms since boot is right approach after al
|
IntentFilter filter = new IntentFilter(Intent.ACTION_BATTERY_CHANGED); |
// Note this is a sticky intent, so we aren't really registering a receiver, just getting |
// the sticky intent. That means that we don't need to unregister the filter later. |
@@ -223,6 +226,17 @@ public class OfflinePageUtils { |
Log.d(TAG, "Found single network of type " + connectionType); |
RecordHistogram.recordEnumeratedHistogram("OfflinePages.Wakeup.NetworkAvailable", |
connectionType, ConnectionType.CONNECTION_LAST + 1); |
+ |
+ // Collect UMA on the time since the request started. |
+ long milliSinceBootNow = SystemClock.elapsedRealtime(); |
+ long delayInMilliseconds = milliSinceBootNow - millisSinceBootTask; |
+ if (delayInMilliseconds <= 0) { |
+ return; |
+ } |
+ RecordHistogram.recordLongTimesHistogram( |
+ "OfflinePages.Wakeup.DelayTime", |
+ delayInMilliseconds, |
+ TimeUnit.MILLISECONDS); |
} |
private static boolean isPowerConnected(Intent batteryStatus) { |