summaryrefslogtreecommitdiffstats
path: root/services/usage
diff options
context:
space:
mode:
authorAdam Lesinski <adamlesinski@google.com>2015-07-22 17:23:40 -0700
committerAdam Lesinski <adamlesinski@google.com>2015-07-22 17:35:46 -0700
commit2dfb91412c27581d27b7eba172912d2893d69abe (patch)
treeea3a6c8dd3bb6694587f2c9972da1b2571a11915 /services/usage
parenta0a71d8a221d4f3896c7b0d3b2b87eba4e7a77f7 (diff)
downloadframeworks_base-2dfb91412c27581d27b7eba172912d2893d69abe.zip
frameworks_base-2dfb91412c27581d27b7eba172912d2893d69abe.tar.gz
frameworks_base-2dfb91412c27581d27b7eba172912d2893d69abe.tar.bz2
UsageStats: Reduce log spam during time change
With lots of usage stats files, the log gets spammy when the time changes and we are moving files around. Bug:22549399 Change-Id: I9da39399b090066d52568dea6fc5b59aba063c5a
Diffstat (limited to 'services/usage')
-rw-r--r--services/usage/java/com/android/server/usage/UsageStatsDatabase.java19
1 files changed, 15 insertions, 4 deletions
diff --git a/services/usage/java/com/android/server/usage/UsageStatsDatabase.java b/services/usage/java/com/android/server/usage/UsageStatsDatabase.java
index 0a7091e..f8ae03f 100644
--- a/services/usage/java/com/android/server/usage/UsageStatsDatabase.java
+++ b/services/usage/java/com/android/server/usage/UsageStatsDatabase.java
@@ -21,6 +21,7 @@ import android.app.usage.UsageStatsManager;
import android.os.Build;
import android.util.AtomicFile;
import android.util.Slog;
+import android.util.TimeUtils;
import java.io.BufferedReader;
import java.io.BufferedWriter;
@@ -277,14 +278,21 @@ class UsageStatsDatabase {
public void onTimeChanged(long timeDiffMillis) {
synchronized (mLock) {
+ StringBuilder logBuilder = new StringBuilder();
+ logBuilder.append("Time changed by ");
+ TimeUtils.formatDuration(timeDiffMillis, logBuilder);
+ logBuilder.append(".");
+
+ int filesDeleted = 0;
+ int filesMoved = 0;
+
for (TimeSparseArray<AtomicFile> files : mSortedStatFiles) {
final int fileCount = files.size();
for (int i = 0; i < fileCount; i++) {
final AtomicFile file = files.valueAt(i);
final long newTime = files.keyAt(i) + timeDiffMillis;
if (newTime < 0) {
- Slog.i(TAG, "Deleting file " + file.getBaseFile().getAbsolutePath()
- + " for it is in the future now.");
+ filesDeleted++;
file.delete();
} else {
try {
@@ -299,14 +307,17 @@ class UsageStatsDatabase {
}
final File newFile = new File(file.getBaseFile().getParentFile(), newName);
- Slog.i(TAG, "Moving file " + file.getBaseFile().getAbsolutePath() + " to "
- + newFile.getAbsolutePath());
+ filesMoved++;
file.getBaseFile().renameTo(newFile);
}
}
files.clear();
}
+ logBuilder.append(" files deleted: ").append(filesDeleted);
+ logBuilder.append(" files moved: ").append(filesMoved);
+ Slog.i(TAG, logBuilder.toString());
+
// Now re-index the new files.
indexFilesLocked();
}