1#!/usr/bin/env python 2# Copyright 2013 The Chromium Authors. All rights reserved. 3# Use of this source code is governed by a BSD-style license that can be 4# found in the LICENSE file. 5 6import os 7import sys 8import tempfile 9 10sys.path.append(os.path.join(os.path.dirname(__file__), os.pardir, 'telemetry')) 11 12from telemetry.core import browser_finder 13from telemetry.core import browser_options 14 15 16def _RunPrebuilt(options): 17 browser_to_create = browser_finder.FindBrowser(options) 18 with browser_to_create.Create() as browser: 19 browser.Start() 20 output_file = os.path.join(tempfile.mkdtemp(), options.profiler) 21 raw_input('Press enter to start profiling...') 22 print '>> Starting profiler', options.profiler 23 browser.StartProfiling(options.profiler, output_file) 24 print 'Press enter or CTRL+C to stop' 25 try: 26 raw_input() 27 except KeyboardInterrupt: 28 pass 29 finally: 30 browser.StopProfiling() 31 print '<< Stopped profiler ', options.profiler 32 33 34if __name__ == '__main__': 35 browser_finder_options = browser_options.BrowserFinderOptions() 36 parser = browser_finder_options.CreateParser('') 37 profiler_options, _ = parser.parse_args() 38 sys.exit(_RunPrebuilt(profiler_options)) 39