Index: build/android/device_stats_monitor.py |
diff --git a/build/android/device_stats_monitor.py b/build/android/device_stats_monitor.py |
new file mode 100755 |
index 0000000000000000000000000000000000000000..1d4fba2bd23689f37ebe587ba31bd10ab39a937d |
--- /dev/null |
+++ b/build/android/device_stats_monitor.py |
@@ -0,0 +1,41 @@ |
+#!/usr/bin/env python |
+# |
+# Copyright (c) 2012 The Chromium Authors. All rights reserved. |
+# Use of this source code is governed by a BSD-style license that can be |
+# found in the LICENSE file. |
+ |
+"""Provides iotop/top style profiling for android. |
+ |
+Usage: |
+ ./device_stats_monitor.py --hz=20 --duration=5 --outfile=/tmp/foo |
+""" |
+ |
+import optparse |
+import os |
+import sys |
+import time |
+ |
+from pylib import android_commands |
+from pylib import device_stats_monitor |
+ |
+ |
+def main(argv): |
+ option_parser = optparse.OptionParser() |
+ option_parser.add_option('--hz', type='int', default=20, |
+ help='Number of samples/sec.') |
+ option_parser.add_option('--duration', type='int', default=5, |
+ help='Seconds to monitor.') |
+ option_parser.add_option('--outfile', default='/tmp/devicestatsmonitor', |
+ help='Location to start output file.') |
+ options, args = option_parser.parse_args(argv) |
+ |
+ monitor = device_stats_monitor.DeviceStatsMonitor( |
+ android_commands.AndroidCommands(), options.hz) |
+ monitor.Start() |
+ print 'Waiting for %d seconds while profiling.' % options.duration |
+ time.sleep(options.duration) |
+ url = monitor.StopAndCollect(options.outfile) |
+ print 'View results in browser at %s' % url |
+ |
+if __name__ == '__main__': |
+ sys.exit(main(sys.argv)) |