Thu, 15 Jan 2015 21:03:48 +0100
Integrate friendly tips from Tor colleagues to make (or not) 4.5 alpha 3;
This includes removal of overloaded (but unused) methods, and addition of
a overlooked call to DataStruct::SetData(nsISupports, uint32_t, bool.)
1 #!/usr/bin/env python
2 #
3 # Copyright (c) 2012 The Chromium Authors. All rights reserved.
4 # Use of this source code is governed by a BSD-style license that can be
5 # found in the LICENSE file.
7 """Provides iotop/top style profiling for android.
9 Usage:
10 ./device_stats_monitor.py --hz=20 --duration=5 --outfile=/tmp/foo
11 """
13 import optparse
14 import os
15 import sys
16 import time
18 from pylib import android_commands
19 from pylib import device_stats_monitor
20 from pylib import test_options_parser
23 def main(argv):
24 option_parser = optparse.OptionParser()
25 option_parser.add_option('--hz', type='int', default=20,
26 help='Number of samples/sec.')
27 option_parser.add_option('--duration', type='int', default=5,
28 help='Seconds to monitor.')
29 option_parser.add_option('--outfile', default='/tmp/devicestatsmonitor',
30 help='Location to start output file.')
31 test_options_parser.AddBuildTypeOption(option_parser)
32 options, args = option_parser.parse_args(argv)
34 monitor = device_stats_monitor.DeviceStatsMonitor(
35 android_commands.AndroidCommands(), options.hz, options.build_type)
36 monitor.Start()
37 print 'Waiting for %d seconds while profiling.' % options.duration
38 time.sleep(options.duration)
39 url = monitor.StopAndCollect(options.outfile)
40 print 'View results in browser at %s' % url
42 if __name__ == '__main__':
43 sys.exit(main(sys.argv))