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

Unified Diff: tools/android/loading/trace_recorder.py

Issue 1619713002: Upgrade analyze.py and related scripts to new world order. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: comments Created 4 years, 11 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
« no previous file with comments | « tools/android/loading/request_track.py ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: tools/android/loading/trace_recorder.py
diff --git a/tools/android/loading/trace_recorder.py b/tools/android/loading/trace_recorder.py
index fdf6cc6c93ac39bcb3dbfc9e651da7c5d97c1835..61015d234bb5db1381b079ce20f3843b4377c086 100755
--- a/tools/android/loading/trace_recorder.py
+++ b/tools/android/loading/trace_recorder.py
@@ -30,20 +30,34 @@ import request_track
import tracing
+def MonitorUrl(connection, url, clear_cache=False):
+ """Monitor a URL via a trace recorder.
+
+ Args:
+ connection: A device_monitor.DevToolsConnection instance.
+ url: url to navigate to as string.
+ clear_cache: boolean indicating if cache should be cleared before loading.
+
+ Returns:
+ loading_trace.LoadingTrace.
+ """
+ logging.warning('Logging %scached %s' % ('un' if clear_cache else '', url))
+ page = page_track.PageTrack(connection)
+ request = request_track.RequestTrack(connection)
+ trace = tracing.TracingTrack(connection)
+ connection.SetUpMonitoring()
+ if clear_cache:
+ connection.ClearCache()
+ connection.SendAndIgnoreResponse('Page.navigate', {'url': url})
+ connection.StartMonitoring()
+ metadata = {'date': datetime.datetime.utcnow().isoformat(),
+ 'seconds_since_epoch': time.time()}
+ return loading_trace.LoadingTrace(url, metadata, page, request, trace)
+
def RecordAndDumpTrace(device, url, output_filename):
with file(output_filename, 'w') as output,\
device_setup.DeviceConnection(device) as connection:
- page = page_track.PageTrack(connection)
- request = request_track.RequestTrack(connection)
- tracing_track = tracing.TracingTrack(connection)
- connection.SetUpMonitoring()
- connection.SendAndIgnoreResponse('Network.clearBrowserCache', {})
- connection.SendAndIgnoreResponse('Page.navigate', {'url': url})
- connection.StartMonitoring()
- metadata = {'date': datetime.datetime.utcnow().isoformat(),
- 'seconds_since_epoch': time.time()}
- trace = loading_trace.LoadingTrace(url, metadata, page, request,
- tracing_track)
+ trace = MonitorUrl(connection, url)
json.dump(trace.ToJsonDict(), output)
« no previous file with comments | « tools/android/loading/request_track.py ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698