Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(950)

Unified Diff: systrace/bin/adb_profile_chrome_startup

Issue 2297403003: Use Systrace tracing controller in profile_chrome (Closed) Base URL: https://chromium.googlesource.com/external/github.com/catapult-project/catapult.git@master
Patch Set: Added property method for tracing controller's child agents Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: systrace/bin/adb_profile_chrome_startup
diff --git a/systrace/bin/adb_profile_chrome_startup b/systrace/bin/adb_profile_chrome_startup
index 80a266bfd2272c735466acbaed728a8b6284e2c1..fed3416992c5a860f128e6c0230f4414df61788a 100755
--- a/systrace/bin/adb_profile_chrome_startup
+++ b/systrace/bin/adb_profile_chrome_startup
@@ -26,6 +26,11 @@ sys.path.append(os.path.join(_CATAPULT_DIR, 'devil'))
from devil.android import device_utils
+_CHROME_STARTUP_MODULES = [atrace_tracing_agent,
+ chrome_startup_tracing_agent]
+_DEFAULT_CHROME_CATEGORIES = '_DEFAULT_CHROME_CATEGORIES'
+
+
def _CreateOptionParser():
parser = optparse.OptionParser(description='Record about://tracing profiles '
'from Android browsers startup, combined with '
@@ -45,7 +50,7 @@ def _CreateOptionParser():
'with gzip. ', action='store_true')
parser.add_option('-t', '--time', help='Stops tracing after N seconds, 0 to '
'manually stop (startup trace ends after at most 5s).',
- default=5, metavar='N', type='int')
+ default=5, metavar='N', type='int', dest='trace_time')
parser.add_option_group(chrome_startup_tracing_agent.add_options(parser))
parser.add_option_group(atrace_tracing_agent.add_options(parser))
@@ -68,29 +73,26 @@ def main():
device = devices[0]
package_info = profiler.GetSupportedBrowsers()[options.browser]
+ options.device = device
+ options.package_info = package_info
+
+ # TODO(washingtonp): Once Systrace uses all of the profile_chrome agents,
+ # manually setting these options will no longer be necessary and should be
+ # removed.
+ options.ring_buffer = False
+ options.trace_memory = False
+ options.chrome_categories = _DEFAULT_CHROME_CATEGORIES
+
if options.atrace_categories in ['list', 'help']:
ui.PrintMessage('\n'.join(
atrace_tracing_agent.AtraceAgent.GetCategories(device)))
return 0
- atrace_categories = (options.atrace_categories.split(',')
- if options.atrace_categories else [])
- enabled_agents = []
- # Enable the atrace and chrome agents. The atrace agent should go
- # first because otherwise the resulting traces miss early atrace data.
- if atrace_categories:
- enabled_agents.append(atrace_tracing_agent.AtraceAgent(
- device, atrace_categories, False))
- enabled_agents.append(
- chrome_startup_tracing_agent.ChromeStartupTracingAgent(
- device, package_info, options.cold, options.url))
- if options.output:
- options.output = os.path.expanduser(options.output)
result = profiler.CaptureProfile(options,
- enabled_agents,
- options.time,
- output=options.output,
+ options.trace_time,
+ _CHROME_STARTUP_MODULES,
+ output=options.output_file,
compress=options.compress,
- write_json=options.json)
+ write_json=options.write_json)
if options.view:
if sys.platform == 'darwin':
os.system('/usr/bin/open %s' % os.path.abspath(result))
« no previous file with comments | « no previous file | systrace/profile_chrome/atrace_tracing_agent.py » ('j') | systrace/systrace/tracing_controller.py » ('J')

Powered by Google App Engine
This is Rietveld 408576698