summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--services/usage/java/com/android/server/usage/UserUsageStatsService.java35
1 files changed, 35 insertions, 0 deletions
diff --git a/services/usage/java/com/android/server/usage/UserUsageStatsService.java b/services/usage/java/com/android/server/usage/UserUsageStatsService.java
index 4efe0b543b18..7d38e8251b53 100644
--- a/services/usage/java/com/android/server/usage/UserUsageStatsService.java
+++ b/services/usage/java/com/android/server/usage/UserUsageStatsService.java
@@ -64,6 +64,9 @@ class UserUsageStatsService {
private String mLastBackgroundedPackage;
private final int mUserId;
+ // STOPSHIP: Temporary member variable for debugging b/110930764.
+ private UsageEvents.Event mLastEvent;
+
private static final long[] INTERVAL_LENGTH = new long[] {
UnixCalendar.DAY_IN_MILLIS, UnixCalendar.WEEK_IN_MILLIS,
UnixCalendar.MONTH_IN_MILLIS, UnixCalendar.YEAR_IN_MILLIS
@@ -156,6 +159,8 @@ class UserUsageStatsService {
+ eventToString(event.mEventType));
}
+ mLastEvent = new UsageEvents.Event(event);
+
if (event.mTimeStamp >= mDailyExpiryDate.getTimeInMillis()) {
// Need to rollover
rolloverStats(event.mTimeStamp);
@@ -306,6 +311,36 @@ class UserUsageStatsService {
Slog.d(TAG, mLogPrefix + "Requesting stats after " + beginTime + " but latest is "
+ currentStats.endTime);
}
+
+ // STOPSHIP: Temporary logging for b/110930764.
+ if (intervalType == UsageStatsManager.INTERVAL_DAILY
+ && mLastEvent.mTimeStamp >= beginTime) {
+ final IntervalStats diskStats = mDatabase.getLatestUsageStats(
+ UsageStatsManager.INTERVAL_DAILY);
+ StringBuilder sb = new StringBuilder(256);
+ sb.append("Last 24 hours of UsageStats missing! timeRange : ");
+ sb.append(beginTime);
+ sb.append(", ");
+ sb.append(endTime);
+ sb.append("\nLast reported Usage Event time : ");
+ sb.append(mLastEvent.mTimeStamp);
+ if (currentStats == null) {
+ sb.append("\nNo in memory event stats available.");
+ } else {
+ sb.append("\nLast in memory event time : ");
+ sb.append(currentStats.endTime);
+ sb.append("\nLast save time: ");
+ sb.append(currentStats.lastTimeSaved);
+ }
+ if (diskStats == null) {
+ sb.append("\nNo on disk event stats available.");
+ } else {
+ sb.append("\nLast on disk event time : ");
+ sb.append(diskStats.endTime);
+ }
+ Slog.wtf(TAG, sb.toString());
+ }
+
// Nothing newer available.
return null;
}