Merge "Add the wall clock time to dumpsys cpuinfo so it\'s easier to correlate with the logs." into nyc-dev am: 6bf86d5
am: 9b7903e
* commit '9b7903e25ca86bf8e05e55b79de3f8f340ce720a':
Add the wall clock time to dumpsys cpuinfo so it's easier to correlate with the logs.
Change-Id: I3e78c4a1a429e7f5c2a37fd5e26eaef0c44a1826
This commit is contained in:
@@ -34,9 +34,11 @@ import java.io.File;
|
|||||||
import java.io.FileInputStream;
|
import java.io.FileInputStream;
|
||||||
import java.io.PrintWriter;
|
import java.io.PrintWriter;
|
||||||
import java.io.StringWriter;
|
import java.io.StringWriter;
|
||||||
|
import java.text.SimpleDateFormat;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
import java.util.Comparator;
|
import java.util.Comparator;
|
||||||
|
import java.util.Date;
|
||||||
import java.util.StringTokenizer;
|
import java.util.StringTokenizer;
|
||||||
|
|
||||||
public class ProcessCpuTracker {
|
public class ProcessCpuTracker {
|
||||||
@@ -147,6 +149,9 @@ public class ProcessCpuTracker {
|
|||||||
private long mCurrentSampleRealTime;
|
private long mCurrentSampleRealTime;
|
||||||
private long mLastSampleRealTime;
|
private long mLastSampleRealTime;
|
||||||
|
|
||||||
|
private long mCurrentSampleWallTime;
|
||||||
|
private long mLastSampleWallTime;
|
||||||
|
|
||||||
private long mBaseUserTime;
|
private long mBaseUserTime;
|
||||||
private long mBaseSystemTime;
|
private long mBaseSystemTime;
|
||||||
private long mBaseIoWaitTime;
|
private long mBaseIoWaitTime;
|
||||||
@@ -305,6 +310,7 @@ public class ProcessCpuTracker {
|
|||||||
|
|
||||||
final long nowUptime = SystemClock.uptimeMillis();
|
final long nowUptime = SystemClock.uptimeMillis();
|
||||||
final long nowRealtime = SystemClock.elapsedRealtime();
|
final long nowRealtime = SystemClock.elapsedRealtime();
|
||||||
|
final long nowWallTime = System.currentTimeMillis();
|
||||||
|
|
||||||
final long[] sysCpu = mSystemCpuData;
|
final long[] sysCpu = mSystemCpuData;
|
||||||
if (Process.readProcFile("/proc/stat", SYSTEM_CPU_FORMAT,
|
if (Process.readProcFile("/proc/stat", SYSTEM_CPU_FORMAT,
|
||||||
@@ -367,6 +373,8 @@ public class ProcessCpuTracker {
|
|||||||
mCurrentSampleTime = nowUptime;
|
mCurrentSampleTime = nowUptime;
|
||||||
mLastSampleRealTime = mCurrentSampleRealTime;
|
mLastSampleRealTime = mCurrentSampleRealTime;
|
||||||
mCurrentSampleRealTime = nowRealtime;
|
mCurrentSampleRealTime = nowRealtime;
|
||||||
|
mLastSampleWallTime = mCurrentSampleWallTime;
|
||||||
|
mCurrentSampleWallTime = nowWallTime;
|
||||||
|
|
||||||
final StrictMode.ThreadPolicy savedPolicy = StrictMode.allowThreadDiskReads();
|
final StrictMode.ThreadPolicy savedPolicy = StrictMode.allowThreadDiskReads();
|
||||||
try {
|
try {
|
||||||
@@ -710,6 +718,8 @@ public class ProcessCpuTracker {
|
|||||||
}
|
}
|
||||||
|
|
||||||
final public String printCurrentState(long now) {
|
final public String printCurrentState(long now) {
|
||||||
|
final SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");
|
||||||
|
|
||||||
buildWorkingProcs();
|
buildWorkingProcs();
|
||||||
|
|
||||||
StringWriter sw = new StringWriter();
|
StringWriter sw = new StringWriter();
|
||||||
@@ -727,6 +737,11 @@ public class ProcessCpuTracker {
|
|||||||
pw.print(mCurrentSampleTime-now);
|
pw.print(mCurrentSampleTime-now);
|
||||||
pw.print("ms later");
|
pw.print("ms later");
|
||||||
}
|
}
|
||||||
|
pw.print(" (");
|
||||||
|
pw.print(sdf.format(new Date(mLastSampleWallTime)));
|
||||||
|
pw.print(" to ");
|
||||||
|
pw.print(sdf.format(new Date(mCurrentSampleWallTime)));
|
||||||
|
pw.print(")");
|
||||||
|
|
||||||
long sampleTime = mCurrentSampleTime - mLastSampleTime;
|
long sampleTime = mCurrentSampleTime - mLastSampleTime;
|
||||||
long sampleRealTime = mCurrentSampleRealTime - mLastSampleRealTime;
|
long sampleRealTime = mCurrentSampleRealTime - mLastSampleRealTime;
|
||||||
|
|||||||
Reference in New Issue
Block a user